gpt4 book ai didi

r - ggplot 图例中的虚线

转载 作者:行者123 更新时间:2023-12-04 11:05:11 28 4
gpt4 key购买 nike

我想设置图例的线型。

我的数据是这样的:

  VisitMonth VisitYear CaixaForum MNAC   FirstDay
1: 01 2007 NA 7125 2007-01-01
2: 02 2007 NA 5345 2007-02-01
3: 03 2007 NA 4996 2007-03-01
4: 04 2007 NA 5476 2007-04-01
5: 05 2007 NA 6160 2007-05-01
---
98: 02 2015 17903 2360 2015-02-01
99: 03 2015 30400 2930 2015-03-01
100: 04 2015 25422 3088 2015-04-01
101: 05 2015 10787 2130 2015-05-01
102: 06 2015 3679 2047 2015-06-01

我想绘制 CaixaForum 和 MNAC 专栏的时间序列。我有以下代码:

ggplot(data = MUSEUMS, aes(x = FirstDay, y = MNAC)) + 
geom_line(size=0.75, aes(x = FirstDay, y = MNAC, colour = "MNAC")) +
geom_line(size=0.75, aes(y = CaixaForum, colour = "CaixaForum"), linetype = "dashed") +
labs(title = "", x = "", y = "Monthly Visitors") + theme_bw() +
theme(legend.title = element_text(size=16, face="bold"), legend.direction = "horizontal",
legend.position=c(0.5, 1.05), text = element_text(size=20)) +
scale_colour_manual(name="Legend",values=c(MNAC="black", CaixaForum="black"))

如您所见,您无法区分图例中的两种线型:

enter image description here

我该如何修复?

我在 stackoverflow 中编写了其他答案,但它们没有用。

最佳答案

您可以在两个点图层中切换到使用 linetype 而不是 color,因为您实际上并没有对任何内容使用 color在你的图形中。

看起来像这样:

ggplot(data = MUSEUMS, aes(x = FirstDay, y = MNAC)) + 
geom_line(size=0.75, aes(x = FirstDay, y = MNAC, linetype = "MNAC")) +
geom_line(size=0.75, aes(y = CaixaForum, linetype = "CaixaForum")) +
labs(title = "", x = "", y = "Monthly Visitors") + theme_bw() +
theme(legend.title = element_text(size=16, face="bold"), legend.direction = "horizontal",
legend.position=c(0.5, 1.05), text = element_text(size=20)) +
scale_linetype_manual(name="Legend",values=c(MNAC="solid", CaixaForum="dashed"))

如果出于某种原因你真的想使用你现在使用的方法,你可以通过 guide_legend 中的 override.aes 获得你想要的行,方法是添加以下内容线到你的图形:

guides(color = guide_legend(override.aes = list(linetype = c("solid", "dashed"))))

关于r - ggplot 图例中的虚线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31519202/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com