我尝试使用以下R代码绘制数据:
print(ggplot(data = my_data3, aes(x = Visit, y = Variable1, group = number)) +
geom_point(aes(col=Treatment), size = 2) +
geom_line(aes(col=Treatment)) +
facet_grid(. ~ Treatment) +
ggtitle("Variable1")+
theme_bw() +
stat_compare_means(comparisons = list(c("visit 1", "visit 2")), label = "p.format", method = "wilcox.test", paired=T, tip.length = 0))
我的Variable3包含2个变量,当我使用facet_grid函数时,它们被绘制为2个图形。但是,p值仅针对其中一个图显示。如何获得两个图的p值?Graph showing the p value for 1 facet
这是数据集的一部分:
my_data3 <- structure(list(number = c(110002, 110002, 110003, 110003, 110004,
110004, 110005, 110005, 110006, 110006, 110007, 110007, 110008,
110008, 110009, 110009, 110010, 110010, 110011, 110011, 110012,
110012, 110013, 110013, 110014, 110014, 110016, 110016, 110017,
110017), Treatment = c("Treatment1", "Treatment1", "Treatment2",
"Treatment2", "Treatment2", "Treatment2", "Treatment2", "Treatment2",
"Treatment1", "Treatment1", "Treatment1", "Treatment1", "Treatment2",
"Treatment2", "Treatment2", "Treatment2", "Treatment1", "Treatment1",
"Treatment2", "Treatment2", "Treatment1", "Treatment1", "Treatment2",
"Treatment2", "Treatment2", "Treatment2", "Treatment1", "Treatment1",
"Treatment2", "Treatment2"), Visit = c("visit 1", "visit 2",
"visit 1", "visit 2", "visit 1", "visit 2", "visit 1", "visit 2",
"visit 1", "visit 2", "visit 1", "visit 2", "visit 1", "visit 2",
"visit 1", "visit 2", "visit 1", "visit 2", "visit 1", "visit 2",
"visit 1", "visit 2", "visit 1", "visit 2", "visit 1", "visit 2",
"visit 1", "visit 2", "visit 1", "visit 2"), Variable1 = c(5618,
4480.5, 1034.75, 706.75, 11492.5, 6037.5, 3841.5, 2762.75, 306,
138.5, 259.5, 0, 31.5, 911.75, 1909.5, 1352.75, 1957.75, 2383.25,
23538.25, 8595.5, 13360.5, 10337.5, 1696.5, 805.25, 14655, 6169,
10141, 5922.25, 2164.25, 14990.25)), .Names = c("number", "Treatment",
"Visit", "Variable1"), row.names = c(NA, 30L), class = "data.frame")
答案 0 :(得分:0)
我今天遇到了类似的问题,所以我将答案留在这里,以防将来其他人需要它:
当您在图解的一般美学中使用分组变量(使用分组,颜色,填充等)时,stat_compare_means
似乎很困难,因此您应将其移至特定功能的美学中想要使用它们。
对于您的代码,我只需要在group = number
函数内移动geom_line
参数即可解决问题:
ggplot(data = my_data3, aes(x = Visit, y = Variable1)) +
geom_point(aes(col=Treatment), size = 2) +
geom_line(aes(col=Treatment, group = number)) +
facet_grid(. ~ Treatment) +
ggtitle("Variable1")+
theme_bw() +
stat_compare_means(comparisons = list(c("visit 1", "visit 2")),
label = "p.format", method = "wilcox.test", paired=T, tip.length = 0)