我正试图从一个有几列的数据框中用R绘制一个图,我想让ggplot将其中一列作为点,另外几列作为不同颜色的行。
我可以找到关于如何分别制作这些图的示例,但我似乎无法找到合并图的命令......
感谢您提供的任何帮助。
答案 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))