如何在ggplot2 R中创建反应规范(通过直线连接方式)?
我有以下数据,我想在两个时间点(t1,t2)上绘制物种1和2的“值”。我想创建一个绘图,其中每个物种的原始值都可以使用几何点(不同的颜色)看到。另外,我想用相同颜色的较大尺寸显示平均值。 对于给定的物种,我想连接t1和t2的平均值(也称为反应标准)。所以在这个例子中,物种1的线应该向上倾斜,而物种2的线应该保持不变 我尝试了基本的ggplot2,但我不知道如何添加线条并以更大的尺寸显示平均值。此外,由于某些原因,“填充”不会产生不同的颜色如何在ggplot2 R中创建反应规范(通过直线连接方式)?,r,ggplot2,line,R,Ggplot2,Line,我有以下数据,我想在两个时间点(t1,t2)上绘制物种1和2的“值”。我想创建一个绘图,其中每个物种的原始值都可以使用几何点(不同的颜色)看到。另外,我想用相同颜色的较大尺寸显示平均值。 对于给定的物种,我想连接t1和t2的平均值(也称为反应标准)。所以在这个例子中,物种1的线应该向上倾斜,而物种2的线应该保持不变 我尝试了基本的ggplot2,但我不知道如何添加线条并以更大的尺寸显示平均值。此外,由于某些原因,“填充”不会产生不同的颜色 time <- c("t1","t1","t1",
time <- c("t1","t1","t1","t1","t1","t1","t2","t2","t2","t2","t2","t2")
species <- c(1,1,1,2,2,2,1,1,1,2,2,2)
value <- c(1,2,3,11,12,13,4,5,6,11,12,13)
df <- data.frame(time, species,value)
df$time <- as.factor(df$time)
df$species <- as.factor(df$species)
ggplot(df,aes(x=time, y=value, fill = species)) +
theme_bw() +
geom_point() +
stat_summary(fun.y=mean, position = "dodge") +
stat_summary(geom="errorbar", fun.data= mean_cl_boot, width = 0.1, size = 0.2, col = "grey57") +
ylab("Fitness")
时间类似
ggplot(df,aes(x=time, y=value, color = species)) + # Change fill to color
theme_bw() +
geom_point() +
stat_summary(fun.y=mean, position = "dodge") +
stat_summary(
geom="errorbar",
fun.data= mean_cl_boot,
width = 0.1, size = 0.2, col = "grey57") +
# Lines by species using grouping
stat_summary(aes(group = species), geom = "line", fun.y = mean) +
ylab("Fitness")
如果您想要两个错误条,您可以将行摘要的组添加到ggplot美学中。如果我正在跟踪您试图获取的内容,这应该可以根据您的需要进行一些调整。基本技巧是在每个层中设置aes
。我在每一层中分别设置了color
/group
,因为否则我很难在时间之间而不是时间内显示路径
因此,第一个总结是组之间的路径。第二个是错误条;如上所述,这是一种颜色,而不是填充。您以前在aes
之外设置了颜色,使错误条全部为灰色,而不管您是否将颜色映射到变量。平均点的大小(4)大于常规点(2)
库(ggplot2)
ggplot(df,aes(x=时间,y=值))+
统计汇总(aes(组=物种),fun.y=平均值,geom=“路径”)+
统计汇总(aes(颜色=物种),fun.data=平均值,geom=“errorbar”,宽度=0.1)+
统计汇总(aes(颜色=物种),fun.y=平均值,geom=“点”,大小=4)+
几何点(aes(颜色=物种),尺寸=2)
由(v0.2.1)于2019-02-21创建谢谢!我仍然不知道如何为每个点添加不同的摘要栏。我尝试了ggplot(df,aes(x=time,y=value,color=species,group=species)
但它不起作用。这很奇怪,你能分享完整的代码吗(可能只是针对给定数据帧的errorbar图).当我把物种放入ggplot美学中时,我总共得到4个错误条。我刚刚意识到我的错误。在代码中,我添加了一个额外的括号。还有一个问题..如果我想增加点的“平均值”的大小,我是否只需将“大小”添加到统计摘要代码中?你目前没有平均值。你可以更改“错误条”
到“pointrange”,fatten=10
以获得具有大中心点的错误条。对于线条,是的,它只是一个尺寸错误条有颜色,而不是填充,这就是为什么你看不到颜色变化。你能不能画出或张贴一个你想要得到的示例?我很难描绘它