如何使用ggplot制作虚线和图例

时间:2018-06-15 18:48:15

标签: r ggplot2 legend

我想知道如何将图例添加到我的图表中,以及是否可以将半个实线的线条变为半虚线。 我需要红线在28处变为虚线,而在20处我是绿色的,我被告知要使用geo_segment,但我找不到查看输入所需命令的方法。

如果有人可以提供帮助并建议我应该使用哪些代码,那就太棒了。

man<-dataset
ggplot(man,aes(Plot))+
geom_line(aes(y=N),color="forestgreen",lwd=0.5)+
geom_ribbon(aes(ymin=NLB,ymax=NUB),alpha=0.2,fill="green")+
geom_line(aes(y=M),color="navy",lwd=0.5)+
geom_ribbon(aes(ymin=MLB,ymax=MUB),alpha=0.2,fill="blue")+
geom_line(aes(y=S),color="brown1",lwd=0.5)+
geom_ribbon(aes(ymin=SLB,ymax=SUB),alpha=0.2,fill="red")+
xlab("Number of Samples")+
ylab("Number of Diametric-Species")

enter image description here

1 个答案:

答案 0 :(得分:0)

library(dplyr)
#> 
#> Attaching package: 'dplyr'
#> The following objects are masked from 'package:stats':
#> 
#>     filter, lag
#> The following objects are masked from 'package:base':
#> 
#>     intersect, setdiff, setequal, union
library(ggplot2)
df <- data.frame(
  x = seq(1:200),
  y = log(seq(1:200))
)

df <- df %>% mutate(should_dash = x >= 50)

ggplot(df, aes(x,y)) + geom_line(aes(linetype = should_dash)) 

reprex package(v0.2.0)创建于2018-06-15。