如何在 ggplot 的图例中重复符号以获得更好的符号视图?
How do I repeat a symbol in the legend of a ggplot to gain a better view of the symbol?
作为#tidytuesday 的一部分,我刚刚开始了 du Bois 挑战,并且正在接受挑战 1:格鲁吉亚白人和有色人种的比较增长
原始图表有带 4 个破折号的“白色”符号 enter image description here,但是当我复制该图时,图例只有 1 个破折号和一点点第二个破折号。
如何重复图例中的符号以获得 4 个破折号?我不需要增加大小,只是重复
尝试在 theme
中设置 legend.key.width
:
library(ggplot2)
ggplot(df1, aes(x, y, linetype = f)) +
geom_line() +
scale_linetype_manual(values = c("solid", "dashed")) +
theme(legend.key.width = unit(1.5, "strwidth", "- - - - "))
测试数据
set.seed(2021)
df1 <- data.frame(
x = c(1:10, 1:10),
y = c(cumsum(rnorm(10)), cumsum(rnorm(10))),
f = rep(c("A", "B"), each = 10)
)
类似于@RuiBarradas 的方法,但使用 guide_legend
设置 keywidth
你可以像这样获得你想要的结果:
library(ggplot2)
ggplot(economics, aes(date)) +
geom_line(aes(y = psavert, linetype = "psavert")) +
geom_line(aes(y = uempmed, linetype = "uempmed")) +
scale_linetype_manual(values = c(psavert = 1, uempmed = 5)) +
guides(linetype = guide_legend(keywidth = unit(50, "pt"))) +
theme(legend.position = "bottom")
作为#tidytuesday 的一部分,我刚刚开始了 du Bois 挑战,并且正在接受挑战 1:格鲁吉亚白人和有色人种的比较增长
原始图表有带 4 个破折号的“白色”符号 enter image description here,但是当我复制该图时,图例只有 1 个破折号和一点点第二个破折号。
如何重复图例中的符号以获得 4 个破折号?我不需要增加大小,只是重复
尝试在 theme
中设置 legend.key.width
:
library(ggplot2)
ggplot(df1, aes(x, y, linetype = f)) +
geom_line() +
scale_linetype_manual(values = c("solid", "dashed")) +
theme(legend.key.width = unit(1.5, "strwidth", "- - - - "))
测试数据
set.seed(2021)
df1 <- data.frame(
x = c(1:10, 1:10),
y = c(cumsum(rnorm(10)), cumsum(rnorm(10))),
f = rep(c("A", "B"), each = 10)
)
类似于@RuiBarradas 的方法,但使用 guide_legend
设置 keywidth
你可以像这样获得你想要的结果:
library(ggplot2)
ggplot(economics, aes(date)) +
geom_line(aes(y = psavert, linetype = "psavert")) +
geom_line(aes(y = uempmed, linetype = "uempmed")) +
scale_linetype_manual(values = c(psavert = 1, uempmed = 5)) +
guides(linetype = guide_legend(keywidth = unit(50, "pt"))) +
theme(legend.position = "bottom")