gpt4 book ai didi

r - 在 position_dodge() 之后的 ggplot2 中注释?

转载 作者:行者123 更新时间:2023-12-04 15:44:19 28 4
gpt4 key购买 nike

我正在尝试在 R 中生成一个双因子实验图。它包含三个级别,每个级别都有两个子级别。我想对这些组中的每一个进行注释,但我找不到合理的方法。

这是一个为顶级生成注释的示例:

ggplot(mtcars, aes(x = as.factor(cyl), y = mpg)) +
geom_point(aes(colour = as.factor(am)), position = position_dodge(0.5)) +
annotate("text", x = 1:3, y = c(37, 25, 22),
label = c("a", "b", "c"))

我真正想做的是注释“我”的每个级别。

这是我天真的尝试:

ggplot(mtcars, aes(x = as.factor(cyl), y = mpg)) +
geom_point(aes(colour = as.factor(am)), position = position_dodge(0.5)) +
annotate("text", x = 1:6, y = c(27, 37, 25, 25, 22, 17),
label = c("a", "b", "c", "d", "e", "f"), position = position_dodge(0.5))

> Error: Unequal parameter lengths: x (6), y (6), label (6), position (3)

我试过改变 x、y 和标签的数量。我怀疑答案在于为注释分配"is"级别,但我不知道该怎么做。谁有可行的解决方案?

最佳答案

也许试试 geom_text

library(ggplot2)

ggplot(mtcars, aes(x = cyl, y = mpg)) +
geom_point(aes(colour = as.factor(am)), position = position_dodge(0.5)) +
geom_text(data = data.frame(x = c(3.8, 4.2, 5.8, 6.2, 7.8, 8.2),
y = c(27, 37, 25, 25, 22, 17)),
aes(x, y, label = c("a", "b", "c", "d", "e", "f")))

enter image description here

关于r - 在 position_dodge() 之后的 ggplot2 中注释?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56524845/

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