【问题标题】:How to use ggplot in R to create a single graphic comprised of a bar plot and a line plot?如何在 R 中使用 ggplot 创建由条形图和线图组成的单个图形?
【发布时间】:2013-12-19 15:34:44
【问题描述】:

我是使用 qplot 和 ggplot 的新手,基本上想制作一个图,它只是条形图和线图的组合。我可以做一个或另一个,但不知道如何同时做!

这是我的数据:

bulk = data.frame(x_pos=c(1,2,3,4,5,6,7,8), 
    y_line=c(3,7,6,8,14,16,18,12),
    y_bar=c(0,0,10,0,0,0,10,0))

对于折线图,我只做qplot(x_pos, y_line, data=bulk, geom="line") 对于条形图,我只是做qplot(x_pos, y_bar, data=bulk)

但是!我怎样才能一次将这些组合成一个数字?我的真正意图是使用几种(可能是 6-10 种)不同的图形技术来生成复杂的图形,但这一切都始于知道如何同时做两个。感谢您的帮助!

【问题讨论】:

    标签: r ggplot2


    【解决方案1】:

    不要为此使用qplot

    library(ggplot2)
    ggplot(bulk, aes(x=x_pos)) + 
      geom_bar(aes(y=y_bar), stat="identity") +
      geom_line(aes(y=y_line), color="red", size=2)
    

    【讨论】:

    • 非常感谢您的回答,但请您解释一下aesstat="identity" 的作用?
    • aes 定义美学映射,stat="identity" 覆盖 geom_bar 中的默认 stat="bin",因为您的数据已经分箱。所有这些都在文档中进行了解释。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-09
    • 1970-01-01
    • 2022-01-14
    • 1970-01-01
    相关资源
    最近更新 更多