我有一个用 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("")

结果很好

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

这里有一个可重现的例子
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("")

最佳答案

您的 y 值应位于与此示例中的变量 Species 相对应的一个变量中。例如:

更改线型:

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

或者

更改点的线型和形状:
ggplot(iris)  +
  geom_line(aes(Sepal.Length,Petal.Length,linetype=Species)) +
  geom_point(aes(Sepal.Length,Petal.Length,shape=Species)) +
  theme_classic()

关于r - ggplot 黑白,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17187614/

10-12 18:00