gpt4 book ai didi

r - 如何在 ggplot2 中将图例键字形的形状更改为六边形?

转载 作者:行者123 更新时间:2023-12-05 02:37:29 24 4
gpt4 key购买 nike

我一直在努力寻找一种方法来更改带有六边形的 ggplot2 的图例键。非常感谢任何帮助或指导!

library(ggplot2)
set.seed(123)
ggplot(iris) +
geom_jitter(aes(x=Species,y=Sepal.Length,color=Species),width=0.25) +
guides(color= guide_legend(override.aes = list(shape = 21)))

reprex package 创建于 2021-11-13 (v2.0.1)

最佳答案

您可以使用 grid 命令创建键,然后使用 key_glyph 参数传递给 geom_

一个简单的例子:

library(grid)
library(ggplot2)

draw_key_hex <- function (data, params, size) {
# hexagon vertex coordinates
v <- list(x = c(0.95, 0.725, 0.275, 0.05, 0.275, 0.725),
y = c(0.5, 0.110288568297003, 0.110288568297003, 0.5, 0.889711431702997, 0.889711431702997))
# hexagon grob
polygonGrob(v$x, v$y,
gp = gpar(col = data$colour,
fill = alpha(data$fill, data$alpha)))
}

set.seed(123)
ggplot(iris, aes(x=Species,y=Sepal.Length,color=Species)) +
geom_jitter(width=0.25, key_glyph=draw_key_hex)

# or with fill
set.seed(123)
ggplot(iris, aes(x=Species,y=Sepal.Length,color=Species, fill=Species)) +
geom_jitter(width=0.25, key_glyph=draw_key_hex)

关于r - 如何在 ggplot2 中将图例键字形的形状更改为六边形?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69957847/

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