2

我想我把它弄得比现在复杂得多,但我一直没能弄明白。

我基本上已经从一些计数数据(向量计数)按天(向量日)创建了一个条形图。在情节中,我通过处理(矢量处理)来考虑颜色。我想做的是覆盖某种曲线而不是条形。我最感兴趣的是显示每个款待的向量“计数”中的峰值在哪里。

这是我的数据框中的向量,我将其命名为“数据”

treat<-c(1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,4,4,4,4)
counts<-c(9,12,11,5,3,2,0,2,0,0,1,1,0,10,4,7,6,1,4,1,1,0,0,0,0,0,12,5,15,3,4,2,0,0,1,0,0,0,0,4,6,11,7,7,4,1,1,0,0,0,0,0)
day<-c(1,2,3,4,5,6,7,8,9,10,11,12,13,1,2,3,4,5,6,7,8,9,10,11,12,13,1,2,3,4,5,6,7,8,9,10,11,12,13,1,2,3,4,5,6,7,8,9,10,11,12,13)

q=ggplot(data, aes(x=factor(day), y=counts, fill=factor(treat), color=factor(treat)))
q+geom_bar(stat= "identity", position=position_dodge(), width=.75)

感谢您的关注!

4

2 回答 2

2

这是你要找的吗?

data = data.frame(treat, counts, day)

ggplot(data, aes(x=factor(day), y=counts, group=factor(treat), color=factor(treat))) +
  geom_line(lwd=1) +
  geom_point()

这些数据的结果有点难以阅读,但使用真实数据可能看起来会更好。或者您可以使用分面,如@Jaap 所示。

在此处输入图像描述

此外,您可以按如下方式简化数据创建:

treat = rep(1:4, each=13)
day = rep(1:13, 4)
于 2015-10-04T19:48:12.847 回答
2

如果您想显示count每个中的峰值treat,那么您可以考虑使用带有facet_wrap或的构面facet_grid。一个例子facet_wrap

ggplot(data, aes(x=factor(day), y=counts, color=factor(treat), group=factor(treat))) +
  geom_line() +
  facet_wrap(~treat)

这为您提供了以下情节:

在此处输入图像描述

于 2015-10-04T19:49:56.797 回答