我正在尝试做一个类似下面例子的瀑布情节:
base2 <- data.frame(rot=c("PRini","shk1","PRfim"), value=c(10,5,15),order=c(1,2,3), fim=c(10,15,0),
inicio=c(0,10,15), imp=c("net","pos","net"))
ggplot(base2, aes(fill = imp)) +
geom_rect(aes(x = rot,
xmin=order - 0.3,
xmax=order + 0.3,
ymin=fim,
ymax=inicio),
position="dodge")
当我执行该代码时,我收到以下消息:
Warning: Ignoring unknown aesthetics: x
如果我删除x
参数,则会显示以下消息:
Error: position_dodge requires the following missing aesthetics: x
当我删除position
参数时,图表会显示,但没有x
标签。我想要一些建议,删除保留warning
标签的第一个x
。
提前致谢。
答案 0 :(得分:1)
将所有美学都放在你的ggplot(aes())中,然后你就不会得到警告。 geom_rect()将从ggplot()获得aes。
ggplot(base2, aes(fill = imp, x = rot, xmin=order - 0.3,
+ xmax=order + 0.3,
+ ymin=fim,ymax=inicio)) +
+ geom_rect( position="dodge")
另一种解决方案是脏的解决方法:
看来你的情节很好,但它只是给你警告。您还可以使用suppressWarnings()
忽略警告。