ggplot如何将一个列和另一个图的散点图分散开来

时间:2013-05-29 21:54:50

标签: r ggplot2

我正试图从一个有几列的数据框中用R绘制一个图,我想让ggplot将其中一列作为点,另外几列作为不同颜色的行。

我可以找到关于如何分别制作这些图的示例,但我似乎无法找到合并图的命令......

感谢您提供的任何帮助。

2 个答案:

答案 0 :(得分:3)

为了将多个不同的列绘制为不同颜色的线条,请使用melt包中的reshape2函数。

例如:

df <- data.frame(A=1:10, B=rnorm(10), C=rnorm(10), D=rnorm(10))
melted <- melt(df, id="A")

ggplot(melted[melted$variable!="B",], aes(A, value, color=variable)) + geom_line() + 
    geom_point(data=melted[melted$variable=="B",])

答案 1 :(得分:2)

像这样:

dat <- data.frame(points.x = c(1:10), points.y = c(1:10),
 lines.x = c(10:1), lines.y = c(1:10))

ggplot(dat, aes(points.x, points.y)) + geom_point() +
    geom_line(aes(lines.x,lines.y))