【发布时间】:2019-02-26 16:17:10
【问题描述】:
我正在使用 ggplot2 n R 3.2.3 进行绘图,并使用我已经成功使用了很长时间的模板。我现在遇到与here 和here (replacement has %d rows, data has %d) 相同的错误。
与我使用它的其他时间的唯一区别是我使用 Jupyter Notebook 的 R 内核制作情节。
一次注释每一行,我将导致错误的原因减少到这些:
P1 <- ggplot(data=x, aes(x=Lf_per_tree, y=Section, fill=Section, col=Section)) +
geom_jitter() +
scale_fill_manual("", values=Colors) +
scale_color_manual("", values=Colors)
如果我删除 scale_color 函数,情节就可以正常工作,所以一定是那些。由于我在我的模板中多次使用它们,我怀疑在data= 中声明的x 和在scale_fill/color 中声明的Colors 之间存在某些问题。
这就是head(x) 的样子:
Lf_per_tree Section
1 7 A
2 5 B
.....
Colors 是这样的:
$A
[1] "black"
$B
[1] "#C4B3A2"
.....
图中的scale_color_manual 和scale_fill_manual 函数基本上采用ggplot()(“Section”列)中aes() 中声明的内容,并使用列表Colors 将其转换为颜色。
直到现在这一直有效,我不知道为什么。仅凭感觉,this issue 似乎与我的非常接近,但我无法像他们那样解决它。
有人知道吗?
【问题讨论】:
标签: r list ggplot2 aes scale-color-manual