gpt4 book ai didi

r - 使用带有分类变量的 geom_rect 的 ggplot 图表的阴影背景

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

这是我的数据集示例:

df <- data.frame(group = rep(c("group1","group2","group3", "group4", "group5", "group6"), each=3),
X = paste(letters[1:18]),
Y = c(1:18))

如您所见,共有三个变量,其中两个是分类变量( groupX )。我使用 ggplot2 构建了一个折线图,其中 X 轴是 X Y 轴为 Y .

我想使用 group 为背景着色变量,因此必须出现 6 种不同的颜色。

我试过这个代码:
ggplot(df, aes(x = X, y = Y)) +
geom_rect(xmin = 0, xmax = 3, ymin = -0.5, ymax = Inf,
fill = 'blue', alpha = 0.05) +
geom_point(size = 2.5)

但是 geom_rect()只为 0 之间的区域着色和 3 , 在 X 轴上。

我想我可以通过复制 geom_rect() 手动完成。我有很多次团体。但我相信一定有更漂亮的代码使用变量本身。任何的想法?

最佳答案

要获得整个图形的阴影,geom_rect需要 xminxmax所有矩形的位置,因此需要通过映射 xmin 来提供这些位置和 xmax到数据中的列,而不是对它们进行硬编码。

ggplot(df, aes(x = X, y = Y)) +
geom_rect(aes(xmin = X, xmax = dplyr::lead(X), ymin = -0.5, ymax = Inf, fill = group),
alpha = 0.5) +
geom_point(size = 2.5) +
theme_classic()

enter image description here

关于r - 使用带有分类变量的 geom_rect 的 ggplot 图表的阴影背景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50339909/

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