这是一个带有两个分组条形图的facet_wrap图。我在下面的文字中附上了我的问题和代码。
Q1:如何在指定位置注释三个星号(更好的是它可以在没有我的计算/规格的情况下自动定位)如图中所示?尝试但没有奏效:
ann_text1=data.frame(ligand=c(2), uptake=c(24), kd=factor("p", levels=c("p","q")))
tp=t+geom_text(data=ann_text1,label="***", size=8)
Q2:如何在条带标题中使用希腊字母(测试版)? 试图将表达式参数集成在labels =但是没有用。
t$cell=factor(t$cell, levels = unique(t$cell), labels = c("WT","beta-DKO"))
这是我尝试过的完整代码版本。请通过此link导航输入文件。
library(ggplot2)
library(Hmisc)
library(gridExtra)
library(grid)
t=read.csv(file.choose(), header = TRUE)
t$ligand = factor(t$ligand, levels = unique(t$ligand))
t$kd=factor(t$kd, levels = unique(t$kd))
t$cell=factor(t$cell, levels = unique(t$cell), labels = c("WT","beta-DKO"))
tbar=ggplot(t, aes(kd, uptake, fill=ligand)) +
stat_summary(fun.y = mean, geom = "bar", position="dodge", color = "black", size=0.3, width = 0.6) +
stat_summary(fun.data = mean_se, geom = "errorbar", position = position_dodge(width = 0.6), size=0.3, width = .2) +
scale_fill_manual(name="ligand", labels=c("-L", "+L"), values=c("gray20", "gray80"))+
theme_bw()+
scale_y_continuous(expand = c(0,0), limit = c(0, 120), breaks = seq(0, 110, 20))+
ylab("% of T")+
facet_wrap(~cell, nrow=1)+
theme(legend.direction="horizontal",legend.position=c(0.88,0.92))+
theme(legend.text=element_text(size=9))+
theme(legend.key.size=unit(0.25,"cm"))
答案 0 :(得分:0)
您可以根据以下帖子添加stat_summary(geom="text")
:Annotation above bars:
library(ggplot2)
library(Hmisc)
library(gridExtra)
library(grid)
t=read.csv("https://dl.dropboxusercontent.com/u/1204710/test.csv", header = TRUE)
t$ligand = factor(t$ligand, levels = unique(t$ligand))
t$kd=factor(t$kd, levels = unique(t$kd))
t$cell=factor(t$cell, levels = unique(t$cell), labels = c("WT","beta-DKO"))
## parametrise dodging width; add vertical shift to '***' label
width <- 0.6
vshift <- 5
dodgewidth <- position_dodge(width=width)
## identify bars where '***' label has to be placed using a factor
t$mylabel <- ""
t$mylabel[with(t, ligand=="y" & cell=="WT" & kd=="p")] <- "***"
t$mylabel[with(t, ligand=="y" & cell=="beta-DKO" & kd=="q")] <- "***"
t$mylabel <- factor(t$mylabel)
tbar <- ggplot(t, aes(kd, uptake, fill=ligand)) +
stat_summary(fun.y = mean, geom = "bar", position="dodge", color = "black", size=0.3, width = width) +
stat_summary(fun.y = function(v) mean(v)+vshift, geom = "text", position=dodgewidth, aes(label=mylabel)) +
stat_summary(fun.data = mean_se, geom = "errorbar", position = position_dodge(width = width), size=0.3, width = .2) +
scale_fill_manual(name="ligand", labels=c("-L", "+L"), values=c("gray20", "gray80"))+
theme_bw()+
scale_y_continuous(expand = c(0,0), limit = c(0, 120), breaks = seq(0, 110, 20))+
ylab("% of T")+
facet_wrap(~cell, nrow=1)+
theme(legend.direction="horizontal",legend.position=c(0.88,0.92))+
theme(legend.text=element_text(size=9))+
theme(legend.key.size=unit(0.25,"cm"))
print(tbar)