gpt4 book ai didi

r - 带有 ggplot 的多面热图,用于 X 的选定部分,并带有附加文本标签

转载 作者:行者123 更新时间:2023-12-04 11:53:22 24 4
gpt4 key购买 nike

我有以下数据:

Id = paste ("ID-", 1:5, sep = "")
position <- rep(seq (1, 100,10), each = 5)
group = rep (rep(rep (1:5, each = length (Id)), each = length(position)))
yvar <- rnorm (length(position), 0.5, 0.1)
ycat <- c(sample (c("A", "B"), length(yvar), replace = TRUE))
namevar <- rep(Id, length(group)/length(Id))
mydf <- data.frame (namevar, group, position, yvar, ycat)
group是一个分面变量, position是一个连续的 x 变量。 yvar用于填充瓷砖的颜色。 ycat是每个图块的文本标签。我想为所有值创建一个带有空白空间的图,除了我选择使用填充颜色和标签绘制的某些图块。
这是我到目前为止所拥有的:
  ggplot(mydf,aes(y=Id,x=position)) +
facet_wrap(~group) +
geom_tile(aes(fill = yvar),colour = "black") +
geom_text(aes(label = ycat)) +
labs(x = NULL,y = NULL)
enter image description here
我希望情节看起来像这样,除了到处都有空格,例如,30-50 之间的第 1 组和 20-60 之间的第 5 组,有点像这样:
enter image description here

最佳答案

这将生成您的最后一个图,但仅对选定区域进行着色:

ggplot(mydf,aes(y=Id,x=position)) +
facet_wrap(~group) +
geom_blank() +
geom_tile(data = subset(mydf,(group == 1 & position >= 30 & position <= 50) |
(group == 5 & position >= 20 & position <= 60)),aes(fill = yvar),colour = "black") +
geom_text(data = subset(mydf,(group == 1 & position >= 30 & position <= 50) |
(group == 5 & position >= 20 & position <= 60)),aes(label = ycat),size = 3) +
labs(x = NULL,y = NULL)

关于r - 带有 ggplot 的多面热图,用于 X 的选定部分,并带有附加文本标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10448962/

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