R 箱线图添加截止
R boxplot add cut off
我使用 boxplot
然后 add
创建一组并排比较。然而,最后一个盒子被切成两半。见下文:
这是我使用的代码:
boxplot(mydf$Prop ~ mydf$Id,at=c(1,4,7))
boxplot(mydf$Prop2 ~ mydf$Id,at=c(2,5,8),add = TRUE)
有什么想法吗?
您需要调整 xlim
参数,以便为绘图腾出空间:
boxplot(mydf$Prop ~ mydf$Id,at=c(1,4,7),xlim=c(0.5,8.5))
boxplot(mydf$Prop2 ~ mydf$Id,at=c(2,5,8),add = TRUE)
作为替代方案,您可以稍微调整数据框并使用 ggplot2
,这样您就不必担心添加到绘图和调整限制:
library(reshape2)
library(ggplot2)
df <- melt(mydf,id.var="Id")
df$Id <- as.factor(df$Id)
ggplot(df,aes(x=Id,y=value,group=interaction(variable,Id),fill=variable))+
geom_boxplot(width=0.45,position=position_dodge(width=0.5))+theme_bw()+
labs(fill="")
缺点是学习新的图形范式,有时调用时间更长,但您可能会发现有很大的好处。
我使用 boxplot
然后 add
创建一组并排比较。然而,最后一个盒子被切成两半。见下文:
这是我使用的代码:
boxplot(mydf$Prop ~ mydf$Id,at=c(1,4,7))
boxplot(mydf$Prop2 ~ mydf$Id,at=c(2,5,8),add = TRUE)
有什么想法吗?
您需要调整 xlim
参数,以便为绘图腾出空间:
boxplot(mydf$Prop ~ mydf$Id,at=c(1,4,7),xlim=c(0.5,8.5))
boxplot(mydf$Prop2 ~ mydf$Id,at=c(2,5,8),add = TRUE)
作为替代方案,您可以稍微调整数据框并使用 ggplot2
,这样您就不必担心添加到绘图和调整限制:
library(reshape2)
library(ggplot2)
df <- melt(mydf,id.var="Id")
df$Id <- as.factor(df$Id)
ggplot(df,aes(x=Id,y=value,group=interaction(variable,Id),fill=variable))+
geom_boxplot(width=0.45,position=position_dodge(width=0.5))+theme_bw()+
labs(fill="")
缺点是学习新的图形范式,有时调用时间更长,但您可能会发现有很大的好处。