ggplot2中的直线加条形图

时间:2014-01-22 09:46:13

标签: r

我正在尝试使用ggplot绘制线条加条形图,但我收到错误“错误:ggplot2不知道如何处理类uneval的数据”

require(ggplot2)    
df.1 <- data.frame(x = c(1:5), y = rnorm(5))
df.2 <- data.frame(x = c(1:10), y = runif(10))

p <- ggplot(df.1, aes(x=x, y=y)) + 
    geom_bar(stat = "identity") +
    geom_line(df.2, aes(x=x, y=y))

两个数据帧的x轴刻度始终相同,但需要将其中一个绘制为折线图,而另一个需要绘制为条形图。在我看来,ggplot2不支持两个数据帧。有没有解决这个问题的工作?

我尝试通过rCharts使用nvd3但是现在似乎不支持linePlusBarChart。

提前致谢!!!

1 个答案:

答案 0 :(得分:7)

明确覆盖data=参数:

ggplot(df.1, aes(x=x, y=y)) + 
  geom_bar(stat = "identity") +
  geom_line(data=df.2, aes(x=x, y=y))

请注意,这实际上是因为默认情况下数据是绘图图层的第二个属性(与基本ggplot调用不同),因此geom_line(aes(x=x, y=y),df.2)也可以使用

enter image description here