r图形与可视化

R 报错:stat_count() can only have an x or y aesthetic(柱状图映射错误)

geom_bar() 默认走 stat_count() 统计频数,只接受 x 或 y 一个维度;你同时给了 x 和 y。

报错原文

Error: stat_count() can only have an x or y aesthetic.

为什么会报这个错

geom_bar() 默认走 stat_count() 统计频数,只接受 x 或 y 一个维度;你同时给了 x 和 y。

怎么解决

想要频数柱状图就只给 x;想要高度等于某个数值,改用 geom_col() 或 stat = "identity"。

代码示例

# 频数
ggplot(df, aes(x = group)) + geom_bar()

# 数值高度
ggplot(df, aes(x = group, y = value)) + geom_col()

同工具的其他报错

报错解决了,但方法还没搞懂?

报错只是表象。因果推断、面板数据、稳健性检验这些方法背后的逻辑,知识库里按「原理 × 直觉 × 代码」讲清楚了。

进入知识库 →