ggplot中的条形图

3

我在使用 ggplot 制作条形图时遇到了问题。

我尝试了不同的 qplotgplot 的组合,但是要么得到直方图,要么交换我的条形,或者决定使用对数比例尺。

如果使用普通的绘图函数,我会这样操作:

d <- 1/(10:1)
names(d) <- paste("id", 1:10)
barplot(d)
1个回答

16
要在ggplot2中绘制条形图,您必须使用geom="bar"geom_bar。您尝试过ggplot2网站上的geom_bar示例吗?
为使您的示例正常工作,请尝试以下操作:
  • ggplot需要一个data.frame作为输入。因此,请将您的输入数据转换为data.frame。
  • 使用`aes(x=x, y=y)`将数据映射到图表上的美学元素。这告诉ggplot应将数据中的哪些列映射到图表的哪些元素上。
  • 使用geom_plot创建条形图。在这种情况下,您可能希望告诉ggplot数据已经被汇总,使用stat="identity",因为默认情况下会创建直方图。
(请注意,您在示例中使用的barplot函数是base R图形的一部分,而不是ggplot。)
代码:
d <- data.frame(x=1:10, y=1/(10:1))
ggplot(d, aes(x, y)) + geom_bar(stat="identity")

enter image description here


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