Error in `ggplot_add()`: ! Can't add `position_dodge(0.9)` to a <ggplot> object.
时间: 2024-01-25 20:04:56 浏览: 166
33.ggplot2+ggparttern 条形图纹理图案填充加显著性标注教程.pdf
5星 · 资源好评率100%
这个错误是因为 `position_dodge(0.9)` 是一个位置调整函数,不能直接添加到 ggplot 对象中。它应该作为 `geom_bar()` 函数的参数来使用。
你的代码中有一个地方出现了这个错误,就是在 `bplot` 对象的第三行,即:
```
bplot <- ggplot(data=data, aes(x=牧食处理, y=RII, fill=品种)) +
geom_bar(stat="identity", position="dodge") +
position_dodge(0.9) +
scale_fill_brewer(palette="Set1") +
geom_text(aes(y=RII), position=position_dodge(0.9), size=3) +
ylab("RII")
```
应该将 `position_dodge(0.9)` 移到 `geom_bar()` 函数的参数中:
```
bplot <- ggplot(data=data, aes(x=牧食处理, y=RII, fill=品种)) +
geom_bar(stat="identity", position=position_dodge(0.9)) +
scale_fill_brewer(palette="Set1") +
geom_text(aes(y=RII), position=position_dodge(0.9), size=3) +
ylab("RII")
```
这样就可以正确生成一个堆叠柱状图,并且添加标签了。
阅读全文