繁体   English   中英

使用部分透明度 (alpha) 时,如何防止 R 在图例中显示虚线?

[英]How do I keep R from showing a dotted line in the legend when using partial transparency (alpha)?

我正在绘制一个图,其中一些数据是近似的,所以我想用虚线显示它。 我还想让一些线条部分透明。 问题是,我似乎无法让图例不显示常规线顶部的虚线。 我只是想让它显示常规行。 这是一个示例:

data <- data.frame(types = rep(c("Hi", "Lo", "Left", "Right"), each = 20), year = rep(2000:2019, 4), 
                   values = c(0:19 * 1, 0:19 * 1.33, 0:19 * 1.5, 0:19 * 2))

data$v2[data$year <= 2010 & data$types == "Lo"] <- data$values[data$year <= 2010 & data$types == "Lo"]
data$values[data$year < 2010 & data$types == "Lo"] <- NA



ggplot(data = data) +
  theme(legend.position = "top") +
  geom_line(aes(x = year, y = values, color = types, alpha = types), size = 2) +
  geom_line(aes(x = year, y = v2, color = types, alpha = types), linetype = "dotted", size = 2) + 
  scale_alpha_manual(values = c(1, .5, .5, .5))

如果您从 RStudio 运行它,它不会在左、左或右的图例上显示任何内容。 如果您创建 PDF,您可以看到一条透明线,上面有点。 我只是想让它显示透明线而不是点。

我怎么做?

show.legend = FALSE 有效。 谢谢。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM