我有一个与此类似的数据框:
myTable <- "ID Data Group
1 -50 5.0
2 -44 5.0
3 -48 5.0
4 -50 4.9
5 -44 4.9
6 -48 4.9
7 -48 4.9
8 -44 4.8
9 -49 4.8
10 -48 4.8
11 -60 4.8
10 -50 4.8
11 -80 4.7"
Data <- read.table(text=myTable, header = TRUE)
数据按ID和组排序。这些组不是都具有相同的大小,但至少有一个成员。数据总是负数。 我打算做的是用&#34; Group&#34;制作折线图。作为x轴和&#34;数据&#34;作为y轴,它还应显示每组的标准偏差。
我是R初学者。所以我的知识非常有限,我只对ggplot2库有一点经验。我试图使用函数geom_errorbar但没有成功。 我试过的看起来像这样:
require("ggplot2")
pplot <- ggplot(data=data, aes(x=group, y=data))
pplot + geom_errorbar(aes(ymax = <Max of each group>, ymin= <Min of each group> ), width= 0.1)
pplot + geom_line();
答案 0 :(得分:2)
df <- data.frame(
ID=1:7,
Data=c(-50,-44,-48,-50,-44,-48,-48),
Group=c(5,5,5,4.9,4.9,4.9,4.9)
)
library("ggplot2")
( pplot <- ggplot(data=df, aes(x=df$Group, y=df$Data)) +
stat_summary(fun.data = mean_sdl, fun.args = list(mult = 1), geom = "errorbar") +
stat_summary(fun.y = mean, geom = "line") +
geom_point() )
输出以下图表:
我添加了geom_point()
来显示单个观察结果。您可以使用参数aes(width=0.4)
修改错误栏宽度。