R语言箱线图X轴图例误显示观测数的问题排查与修复
箱线图X轴图例异常问题排查与修复
问题原因
代码中通过paste("A", length(a), sep = "")和paste("B", length(b), sep = "")将列表C的元素名称设置为A+观测数量、B+观测数量的格式(比如A50、B50),而boxplot函数绘制列表类型的数据时,默认会把列表的元素名称作为X轴的刻度标签,因此出现了带观测数量的异常显示。
修复方法
提供两种可行的修复方式:
方式1:修改列表元素名称
直接将列表C的名称设置为预期的"A"和"B",去掉观测数量的拼接:
a <- df$A b <- df$B C <- list(a,b) # 直接指定列表元素名称为A、B names(C) <- c("A", "B") par(mgp=c(3,2,0)) boxplot(C, col = "red", ylab="value")
方式2:在boxplot函数中指定X轴标签
如果需要保留原列表的名称,可通过boxplot的names参数直接覆盖默认的X轴标签:
a <- df$A b <- df$B C <- list(a,b) names(C) <- c(paste("A", length(a), sep = ""), paste("B", length(b), sep = "")) par(mgp=c(3,2,0)) # 手动指定X轴标签为A、B boxplot(C, col = "red", ylab="value", names = c("A", "B"))
内容的提问来源于stack exchange,提问作者Espejito
相关产品推荐
相关产品推荐

