如何在ggplot中为geom_line绘图添加点数

时间:2015-03-30 01:24:23

标签: r ggplot2

我有一个如下的df,我想用geom_line生成时间序列图。以下是我的数据摘要:

summary(data.t.m)
              sample    side        time    day         variable       value       
 HA2015_E10AF.bam:  1   E:69   1      :12   F:72   nc.counts:138   Min.   : 4.346  
 HA2015_E10BF.bam:  1   W:69   2      :12   S:66                   1st Qu.: 6.949  
 HA2015_E10CF.bam:  1          3      :12                          Median : 8.529  
 HA2015_E11AF.bam:  1          4      :12                          Mean   : 9.085  
 HA2015_E11AS.bam:  1          5      :12                          3rd Qu.:10.501  
 HA2015_E11BF.bam:  1          6      :12                          Max.   :23.047  
 (Other)         :132          (Other):66                                          

以下是生成折线图的代码:

plt <- ggplot(data.t.m, aes(time, value, group = side, colour = side))
plt <- plt + stat_summary(fun.y = "mean", geom="line", size = 2, position=position_dodge(0.95))  
plt <- plt + stat_summary(fun.data="calc.sem", geom="errorbar")

生成的图如下......

time_series_plot

现在我的问题是如何在ggplot上添加与每个时间点对应的点数?

1 个答案:

答案 0 :(得分:5)

可能是你的点隐藏在你的线下面,尺寸= 2。将geom_point中的磅值设置为更大的大小可以解决您的问题。请参阅下面的示例,我为时间序列的第一部分模拟了数据,并轻松省略了错误条。

数据示例

df<-data.frame(time=as.factor(c(1,1,2,2,3,3,4,4,5,5)), value=as.numeric(c(7, 8, 9, 10, 10, 11, 10.5, 11.4, 10.9, 11.6)), side=as.factor(c("E","F","E","F","E","F","E","F","E","F")))

<强> Ggplot

library(ggplot2)
p<-ggplot(df, aes(time,value, group=side, colour=side)) + geom_line(size=1)
p<-p+geom_point(size=4)
p

enter image description here