有两个数据框 - df1
& df2
我需要使用ggplot2创建线图并在同一图表上显示。
df1
x y
2 30
4 25
6 20
8 15
df2
x y
2 12
4 16
6 20
8 24
用于绘制第一个df,
p1 <- ggplot( df1, aes(x = df1[,1] , y = log(df1[,2]) ) )
p1 <- p1 + geom_line(aes(y = log(df1[,2])))
p1
我们如何在数据框df2
答案 0 :(得分:9)
您只需重新定义您从中获取的data
即可。 ggplot
将始终关注美学的初始化调用并尝试从那里继承。此外,无需使用df[,2]
语法,ggplot
在设置df1
时就已在data = df1
内查看。
df1 <- data.frame(x = seq(2, 8, by = 2),
y = seq(30, 15, by = -5))
df2 <- data.frame(x = seq(2, 8, by = 2),
y = seq(12, 24, by = 4))
ggplot(df1, aes(x, log(y))) +
geom_line() +
geom_line(data = df2, color = "red") # re-define and overwrite top layer inheritance