ggplot之多变量绘图
1. 普通plot
准备数据。
x<-seq(0,2*pi,0.05) y<-sin(x) z<-cos(x) data<-data.frame(x,y,z)
plot:
plot(x,y) lines(x,z)
可用其他参数设置线型,坐标轴标签等,但是图例绘制不方便。
2. 手动
DataSet1 <- data.frame(x, value=y, lab=rep("y", length(x))) DataSet2 <- data.frame(x, value=z, lab=rep("z", length(x))) DataSet <- rbind(DataSet1, DataSet2) p <- ggplot(data=DataSet, aes(x, value, color=lab)) p + geom_line()
3. 改变aes中的y
ggplot(data, aes(x)) + geom_line(aes(y = y, colour = "below")) + geom_line(aes(y = z, colour = "above"))
4. melt函数
library(reshape2) data_c <- melt(data, id = "x") p <- ggplot(data=data_c, aes(x, value, color=variable)) p + geom_line()