r - ggplot 组合来自不同 data.frames 的两个图

标签 r ggplot2

我想将来自两个不同 data.frames 的两个 ggplots 合并到一个图中。您将在下面找到代码。我想合并图 1 和图 2 或图 3 和图 4。

df1 <- data.frame(p=c(10,8,7,3,2,6,7,8),
             v=c(100,300,150,400,450,250,150,400))
df2 <- data.frame(p=c(10,8,6,4), v=c(150,250,350,400))

plot1 <- qplot(df1$v, df1$p)
plot2 <- qplot(df2$v, df2$p, geom="step")

plot3 <- ggplot(df1, aes(v, p)) + geom_point()
plot4 <- ggplot(df2, aes(v, p)) + geom_step()

这一定很容易做到,但不知何故我无法让它工作。感谢您抽出时间。

最佳答案

正如 Baptiste 所说,您需要在几何级别指定数据参数。要么

#df1 is the default dataset for all geoms
(plot1 <- ggplot(df1, aes(v, p)) + 
    geom_point() +
    geom_step(data = df2)
)

#No default; data explicitly specified for each geom
(plot2 <- ggplot(NULL, aes(v, p)) + 
      geom_point(data = df1) +
      geom_step(data = df2)
)

关于r - ggplot 组合来自不同 data.frames 的两个图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9109156/

相关文章:

r - 去掉 facet_grid 第一行的空面板

r - ggplot2:如何在同一因子的不同图中使用相同的颜色

r - mtcars ggplot 不知道如何处理数字类

r - 测试 tidyverse 中的列数

r - 在 data.frame 上使用 invoke_map() 或 exec()

r - 写入多行数据帧非常慢

删除 facet_wrap 图中的 "floating"轴标签?

r - 在 R 中,如何将数据分配到不同的组中

r - 如何在 ggplot2 中仅绘制图例?

r - 是否可以使用 ggplot2 修复轴边距?