ggplot黑色和白色

时间:2013-06-19 09:25:38

标签: r graphics ggplot2

我有一个用ggplot2

获得的情节
ggplot()+geom_line(data=results,aes(x=SNR,y=MeanLambdaMin,group=rep),col="blue")+
  geom_line(data=results,aes(x=SNR,y=MeanA,group=rep),col="green")+
geom_line(data=results,aes(x=SNR,y=VarA,group=rep),col="red")+
  geom_line(data=results,aes(x=SNR,y=VarB,group=rep),col="black")+
facet_wrap(~ rep, as.table=T)+xlab("SNR")+ylab("")

结果很好 enter image description here

不太可能我必须用黑白打印。 什么是最好的事情?是否有任何选项可以优化黑白版本的颜色?

这里有一个可重现的例子

results=data.frame("SNR"=1:30)
results$MeanA=results$SNR^2
results$VarA=results$SNR*2
results$VarB=results$SNR^(1/2)
results$MeanLambdaMin=1:30
results$rep=sample(x=1:3,size=30,replace=T)

ggplot()+geom_line(data=results,aes(x=SNR,y=MeanLambdaMin,group=rep),col="blue")+
  geom_line(data=results,aes(x=SNR,y=MeanA,group=rep),col="green")+
geom_line(data=results,aes(x=SNR,y=VarA,group=rep),col="red")+
  geom_line(data=results,aes(x=SNR,y=VarB,group=rep),col="black")+
facet_wrap(~ rep, as.table=T)+xlab("SNR")+ylab("")

2 个答案:

答案 0 :(得分:6)

您的y值应该在一个变量中,该变量对应于此示例中的变量Species。例如:

更改线型:

ggplot(iris)  + 
  geom_line(aes(Sepal.Length,Petal.Length,linetype=Species)) +
  theme_classic()

enter image description here

更改线的类型和形状:

ggplot(iris)  + 
  geom_line(aes(Sepal.Length,Petal.Length,linetype=Species)) + 
  geom_point(aes(Sepal.Length,Petal.Length,shape=Species)) +
  theme_classic()

enter image description here

答案 1 :(得分:0)

ggplot() +
  geom_line(data=results,aes(x=SNR,y=MeanLambdaMin,group=rep),col="grey0") +
  geom_line(data=results,aes(x=SNR,y=MeanA,group=rep),col="grey20") +
  geom_line(data=results,aes(x=SNR,y=VarA,group=rep),col="grey40") +
  geom_line(data=results,aes(x=SNR,y=VarB,group=rep),col="grey80") + 
  facet_wrap(~ rep, as.table=T) +
  xlab("SNR") +
  ylab("")

现在你在黑白缩放方面存在差异:)使用颜色来寻找最佳组合。您可以通过输入'colors()'

来查看所有颜色

您也可以在地图代码的末尾添加+ theme_grey()