相关疑难解决方法(0)

ggplot2可以在一个图例中分别控制点大小和线条大小(线宽)吗?

ggplot2用于绘制数据点组和连接每个组的均值的线组的示例,使用相同的aesfor shape和for 映射linetype:

p <- ggplot(mtcars, aes(gear, mpg, shape = factor(cyl), linetype = factor(cyl))) + 
  geom_point(size = 2) +
  stat_summary(fun.y = mean, geom = "line", size = 1) +
  scale_shape_manual(values = c(1, 4, 19))
Run Code Online (Sandbox Code Playgroud)

问题是,相对于线符号,图例中的点符号看起来有点太小而无法看到:

p

尝试在图例中放大点大小也会扩大线宽,因此在这里没有用.

p1 <- p + guides(shape = guide_legend(override.aes = list(size = 4)))
Run Code Online (Sandbox Code Playgroud)

P1

如果线宽是一种独特的美学,那将是很好的size.我尝试添加

+ guides(linetype = guide_legend(override.aes = list(size = 1)))
Run Code Online (Sandbox Code Playgroud)

这只是一个警告.

> Warning message:
In guide_merge.legend(init, x[[i]]) : Duplicated override.aes is ignored.
Run Code Online (Sandbox Code Playgroud)

这似乎没有什么区别或者,如果我移动 …

r graph legend ggplot2

10
推荐指数
2
解决办法
5411
查看次数

标签 统计

ggplot2 ×1

graph ×1

legend ×1

r ×1