箱线图:移动 x 轴刻度标签基于 R

时间:2021-02-14 22:43:50

标签: r boxplot

我正在尝试使用基础 R 来制作箱线图。有没有办法移动 x 轴刻度标签?我只看到 ggplot 提出的问题。我只需要将它们移到图表下方即可。

当前刻度标签示例

enter image description here

当我在刻度标签中使用 \n 时出现问题。

boxplot(data$Height ~ data$Status, names=c("Loser\n(n=14)","No change\n(n=486)","Winner\n(n=18)"),  ylab="Maximum height (cm)", outline=F,
col="grey", cex.lab=1.5, cex.axis=1.5, cex.main=1.5, main="", xlab="")

1 个答案:

答案 0 :(得分:1)

您似乎没有提供所有相关代码,也没有提供任何数据来重现您的问题。以下是使用包含在基础 R 中的 iris 数据集的示例,可以帮助您解决问题:

data(iris)
oldp <- par(mgp=c(3, 1.5, 0))
boxplot(Sepal.Length~Species, iris, names=c("setosa\n(n=50)", "versicolor\n(n=50)", "virginica\n(n=50)"))
par <- oldp

如果在绘图前不设置 mgp=,标签将覆盖轴刻度线。 mgp= 参数采用包含三个值的数字向量。第一个是轴标签的绘图区域下方的行数,第二个是刻度标记标签的绘图区域下方的行数,第三个是刻度标记的绘图区域下方的行数。默认值为 c(3, 1, 0),因此通过将 1 更改为 1.5,我们将刻度标记标签向下推半行(这些值用于标签底部,而不是顶部)。

在您的示例中,您取消了 xlab= 标签,因此您似乎将 mar= 参数设置得太小,以至于无法将刻度标签打印在刻度线下方,或者您裁剪了上图绘图窗口的底部。 enter image description here