R 每个变量具有多个观测值的几何点:如何避开位置和改变颜色(ggplot2)
我正在尝试使用ggplot2在R中创建一个系数图。因为我已经计算了数据,所以我使用geom_point和geom_errorbarh。因为我希望每个变量包含两个模型/组,所以我尝试将系数和间隔放在彼此下方,并更改它们的颜色。不幸的是,我没有发现这两种方法是如何工作的 我知道我应该用颜色=。。。或者scale_color_manual(值=…),但随后我收到错误消息“error:美学必须为长度1或与数据相同” 对于闪避,我已经尝试过geom_point(position=dodge),但是R似乎不再知道这个命令R 每个变量具有多个观测值的几何点:如何避开位置和改变颜色(ggplot2),r,ggplot2,R,Ggplot2,我正在尝试使用ggplot2在R中创建一个系数图。因为我已经计算了数据,所以我使用geom_point和geom_errorbarh。因为我希望每个变量包含两个模型/组,所以我尝试将系数和间隔放在彼此下方,并更改它们的颜色。不幸的是,我没有发现这两种方法是如何工作的 我知道我应该用颜色=。。。或者scale_color_manual(值=…),但随后我收到错误消息“error:美学必须为长度1或与数据相同” 对于闪避,我已经尝试过geom_point(position=dodge),但是R似乎不
example<-data.frame(group=c("group1", "group2", "group1", "group2"),
variable=c("variable1", "variable1", "variable2", "variable2"),
value=c(0.4, 0.2, 0.3, 0.2),
min=c(0.3, 0.1, 0.2, 0.1),
max=c(0.5, 0.3, 0.4, 0.3))
groupcolor<-c("group1"="red", "group2"="purple")
ggplot(example, aes(x=value, y=variable))+
theme_bw()+
scale_x_continuous(breaks=seq(0.0,0.6,0.2), limits=c(0.0, 0.6))+
geom_point(size=2)+
scale_colour_manual(values=groupcolor)+
geom_errorbarh(mapping=aes(xmin=min, xmax=max), height=0.1)
example这就是我想要接近理想输出的方法
dodge <- .5 # for consistancy between layers
ggplot(example, aes(x = variable, y = value, color = group)) +
geom_point(size=2,
position = position_dodge(width = dodge)) +
geom_errorbar(aes(ymin = min, ymax = max), width = 0.1,
position = position_dodge(width = dodge)) +
scale_colour_manual(values=groupcolor) +
scale_y_continuous(breaks=seq(0.0,0.6,0.2), limits=c(0.0, 0.6)) +
coord_flip() +
theme_bw()
道奇非常感谢!这很好用。我不知道在“高度”上闪避是不可能的。而且颜色现在也可以用了!颜色正在工作,因为现在您告诉ggplot您希望它从数据映射到aes(…,color=group)
一旦它知道了这一点,它就会注意您指定的比例。