你可以把
linetype
在
aes
呼叫,就像你对颜色所做的那样:
ggplot(aes(x = Sepal.Length), data = iris) +
geom_histogram(color = 'black', fill = NA) +
geom_vline(aes(xintercept = median(iris$Sepal.Length),
color = "median", linetype = 'median'),
size = 1) +
geom_vline(aes(xintercept = mean(iris$Sepal.Length),
color = "mean", linetype = "mean"),
size = 1) +
scale_color_manual(
name = "statistics",
values = c(median = "blue", mean = "red")) +
scale_linetype_manual(
name = "statistics",
values = c(median = "solid", mean = "dashed"))
在指定哪个值与哪个线型匹配时使用命名向量也有帮助-我认为第二个示例失败的原因是,在图例中,ggplot按字母顺序将线型指定给各个级别。
输出: