如何使用ggplot2制作条形图来显示频率?

4

我有一个包含“value”列的融合数据集,该列代表数据集每行的绝对数字。我想按国家在柱状图中显示这个数字。

p <- ggplot(melted,aes(factor(country),y=as.numeric(value))) + geom_bar() +opts(axis.text.x = theme_text(angle = 90,hjust = 1)) 

我得到的全部内容是:

pmin(y, 0) 中的错误:未找到 'y' 对象。

当然,我已经三次检查了是否有一个“value”变量,但我无法找到问题所在。如果我不加 y=...,则会得到每个国家的观测值,在我的情况下每个国家的观测值都是相同的。


请您能否提供一个小的可重现的示例?我们甚至不知道您的数据长什么样子。 - Aniko
1个回答

5

在使用geom_bar()时,您可能需要定义身份统计量。

 ggplot(melted,aes(factor(country),y=as.numeric(value))) + 
        geom_bar(stat = "identity", position = "stack")

非常感谢。我必须承认,虽然我读了几次关于stat = ...的概念的文章,但我从未完全理解它。我想我需要更仔细地研究一下(并且可能要使用更少的qplot)。感谢您的帮助。 - Matt Bannert

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接