【问题标题】:Issues using ggplot2 aes_string with box plots使用带有箱形图的 ggplot2 aes_string 的问题
【发布时间】:2013-01-10 21:27:07
【问题描述】:

我似乎在使用 ggplot2 时遇到问题。

尝试使用 aes_string 绘制箱线图时出现以下错误:

错误:stat_boxplot 需要以下缺失的美学:x, y

这是一个例子:

x='group'
y='value'
df=data.frame(group=c('A','A','B','B','C','C'),value=c(1,2,3,4,5,6))
ggplot(data=df,aes_string(x,y)) + geom_boxplot() #returns the error
ggplot(data=df,aes(x,y)) + geom_boxplot() #plots nonsense (naturally)
ggplot(data=df,aes(group,value)) + geom_boxplot() #works, but not strings

关于如何使用字符串进行这项工作的任何建议?

【问题讨论】:

标签: r ggplot2


【解决方案1】:

aes 允许前两个参数不命名并假定为 x 和 y(分别); aes_string 没有此快捷方式,因此必须命名所有参数。 试试:

ggplot(data=df,aes_string(x='group',y='value')) + geom_boxplot()

【讨论】:

  • 唯一的问题是——为什么?
  • ggplot(data=df, aes_string(x=x,y=y)) + geom_boxplot() 也可以。
  • aes 允许前两个参数不命名并假定为 x 和 y(分别); aes_string 没有这个快捷方式,所以所有参数都必须命名。
猜你喜欢
  • 1970-01-01
  • 2017-10-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-12-31
  • 2021-01-17
  • 1970-01-01
  • 2017-06-29
相关资源
最近更新 更多