R语言stat_summary做分组条形图报错:无法将double向量转为函数
问题解决:stat_summary报错"Can't convert
fun, a double vector, to a function" 错误原因
你的R环境里大概率存在一个名为mean的数值变量,覆盖了R原生的mean()函数,导致stat_summary()把它当成数值而非函数调用,触发报错。
解决方案
方案1:明确调用原生mean函数
将代码中的fun = mean改为fun = base::mean,直接指定使用R基础包的mean函数,避免变量冲突:
ggplot(aes(x=ses, y=weigh, group=gender), data = datagraph) + stat_summary(fun = base::mean, geom = 'bar', position = position_dodge())
方案2:清理自定义的mean变量
在控制台执行以下命令删除覆盖原生函数的数值变量,之后再运行原代码即可:
rm(mean)
优化建议
如果想让性别分组的条形图更直观,建议把gender映射到fill美学,自动区分分组颜色:
ggplot(aes(x=ses, y=weigh, fill=gender), data = datagraph) + stat_summary(fun = base::mean, geom = 'bar', position = position_dodge())
内容的提问来源于stack exchange,提问作者manateemanatee77
相关产品推荐
相关产品推荐

