在 R 中绘制具有标准差的折线图
Plot a line graph with standard deviation in R
我有一个与此类似的数据框:
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和Group排序。这些组的大小不尽相同,但至少有一名成员。数据总是负面的。
我打算做的是制作一个以 "Group" 为 x 轴和 "Data" 为 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();
所以结果应该是这样的图形形式:
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)
修改错误栏宽度。
我有一个与此类似的数据框:
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和Group排序。这些组的大小不尽相同,但至少有一名成员。数据总是负面的。 我打算做的是制作一个以 "Group" 为 x 轴和 "Data" 为 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();
所以结果应该是这样的图形形式:
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)
修改错误栏宽度。