【发布时间】:2017-07-11 20:06:59
【问题描述】:
我对几种不同的植物物种进行了 2x2 因子实验。我有一段时间正确地策划这一切。
虚拟数据:
Data <- data.frame(
species = rep(letters[1:4], each = 4),
F1 = rep(letters[25:26], times = 8),
F2 = rep(letters[11:12], each = 2, times = 4),
mean = runif(16, min=0, max=1),
se = (runif(16, min=0, max=1))/10)
我想要 X 轴上的物种名称,以及 4 个单独的点(+ SE 条),每个因素 2 个。一个因素将被填充或为空,另一个将是我到目前为止所得到的:
pd <- position_dodge(0.5)
ggplot(Data, aes(species, mean, fill = factor(F1), shape = factor(F2))) +
geom_point(size = 3, position = pd) +
geom_errorbar(aes(ymin=mean-se, ymax=mean+se), position = pd)
但是,这实际上并没有使因子 1 成为填充或未填充的形状。我已经跟随 mtcars 中的几个例子,我已经很好地工作了。这里出了什么问题?
对于它的价值,颜色工作正常,但我需要填充或空,所以看起来我可能使用错误填充?
【问题讨论】:
-
只需将
fill更改为colour即可。这也会给误差线着色。如果你真的想要填充绘图符号,你可以使用+ scale_shape_manual(values=c(21, 24))。 -
这是 ggplot2 和基本 R 图形中符号形状和线型的好资源:cookbook-r.com/Graphs/Shapes_and_line_types