textured geom_ribbon 类似于 barplot,它有参数 a) density 和 b) angle

textured geom_ribbon similar to barplot, which has arguments a) density and b) angle

有没有办法将参数“密度”和“角度”,或任何其他有趣的参数从“ggplot::barplot”引入“ggplot::geom_ribbon”?

我一直在寻找 geom_ribbon 的基本纹理——比如点、十字和线——,而不是仅仅用可变颜色“填充”它们。我看到包 ggtexture,但它使用 .svg 外部文件,并且确实包含条形图,但显然不包含类似于 geom_ribbons 的色带。 最有希望的是我在这里看到的条形图:Barplots example with texture。我的意思是,根据描述,geom_ribbon 接近条形图的绘制,就好像它们是 y 高度的区域。

但是,我不知道如何自己修改源代码。

您可以尝试(非 CRAN)包 ggpattern,如

中所示

这是一个使用 geom_ribbon_pattern:

的演示
remotes::install_github("coolbutuseless/ggpattern")
library(ggpattern)

x <- seq(pi/2, 20, 0.1)
df <- data.frame(x, lower = 10 * (cos(x)/x - .3), upper = (10 * -cos(x)/x + .3))
ggplot(df) +
  geom_ribbon_pattern(aes(x, ymin = lower, ymax = upper), fill = "gray95",
                      color = "black", 
                      pattern = "stripe",
                      pattern_fill = "gray80",
                      pattern_angle = 45,
                      pattern_density = 0.2,
                      pattern_spacing = 0.05) +
  coord_equal() +
  theme_classic()