我有一个包含2个AUC列的数据帧(一个根据观察到的数据计算,另一个根据模拟数据计算)。数据框的子集如下所示:
ID AUC.OBS AUC.SIM FED FORM
1 100 110 0 1
1 100 110 0 1
1 105 99 0 2
2 150 140 1 1
2 120 130 0 2
2 120 130 0 2
3 70 90 1 1
3 80 75 1 2
等等。其中ID是主题ID列。 FED是指药物是否处于喂养状态(1)或禁食状态(0)。 FORM指定给出哪种药物制剂(1 = FORM_A; 2 = FORM_B)。我担心的是,我想为FED和FORM上观察到的和模拟的AUC制作一个箱线图:
我正在使用ggplot。我从以下开始,但我还没有到达那里。
plotdata$ID <- as.factor(plotdata$ID)
plotdata$FED <- as.factor(plotdata$FED)
levels(plotdata$FED) <- c("Fasted","Fed")
plotdata$FORM <- as.factor(plotdata$FORM)
levels(plotdata$FORM) <- c("FORM_A","FORM_B")
libraray(ggplot2)
plotobj <- NULL
plotobj <- ggplot(data=plotdata)
plotobj <- plotobj + geom_boxplot(aes(x = ??, y = AUC.OBS), position=position_dodge(width=0.9))
plotobj <- plotobj + scale_x_discrete("?"))
plotobj <- plotobj + scale_y_continuous("AUC")
plotobj <- plotobj + ggtitle("VPC of drug exposure\n")
plotobj <- plotobj + facet_wrap(~FED+FORM, ncol=2)
plotobj
我会感谢您对如何修改我的代码以实现此目的的指导。
答案 0 :(得分:0)
使用ggplot
,可以通过以正确的格式获取数据来实现快乐:长。
library(reshape2)
names(plotdata)[2:3] <- c("Simulated", "Observed")
plotdata.long <- melt(plotdata, id.vars = "ID",
variable.name = "Data_Source", value.name = "AUC")
ggplot(plotdata, aes(x = Data_Source, color = Data_Source, y = AUC)) +
geom_boxplot() +
ggtitle("VPC of drug exposure\n")
如果您不喜欢下划线,我认为调整标签的最简单方法是使用labs()
。添加到你的情节:
labs(x = "Data Source", color = "Data Source")