我正在尝试绘制多条线并使用ggplot自动为绘制的线条指定颜色。我有以下示例代码:
library(ggplot2)
A <- data.frame(x=0:10,y=0:10)
B <- data.frame(x=(seq(from=0, to=10, by=1)), y=(seq(from=0, to=5, by=0.5)))
C <- data.frame(x=(seq(from=0, to=5, by=0.5)), y=(seq(from=0, to=10, by=1)))
ggplot()+
geom_line(data=A, aes(x=x, y=y))+
geom_line(data=B, aes(x=x, y=y))+
geom_line(data=C, aes(x=x, y=y))+
coord_equal()
我知道我可以手动设置:
geom_line(data=A, aes(x=x, y=y, col="red"))+
等但是我有办法自动分配颜色吗?
答案 0 :(得分:2)
您应该将所有数据框放在一个中,然后添加一些具有每行标识符的列。
new.df<-rbind(A,B,C)
new.df$ID<-rep(c("A","B","C"),c(nrow(A),nrow(B),nrow(C)))
然后使用此新列设置颜色。
ggplot(new.df,aes(x,y,color=ID))+geom_line()