R语言boxplot绘图:如何解决x轴标题出界?

想利用boxplot绘制箱线图
boxplot(exprs, ylab = expression(log2), las = 2, outline = FALSE)

img


请问设置什么参数可以保持x轴标题在图片内?谢谢!

可以调整图形的边框尺寸或者旋转轴标签来使x轴标题不超出图像范围。以下是两种可行的方法:
 
调整图形边框尺寸:
 
可以使用 par(mar=c(bottom,left,top,right)) 函数设置 boxplot 图形的边距(margin)。默认边距为 c(5, 4, 4, 2) + 0.1,其中第一个元素是下边距,第二个元素是左边距,第三个元素是上边距,第四个元素是右边距。边距的单位是英寸,设置方式是按顺序依次给出每个边框的宽度。
 

例如,以下命令将从上面和右侧移动边界 0.1 英寸:
par(mar=c(5, 4, 2, 0.1))
如果希望底部边界更靠近轴标签,则可以增加第一个元素的大小。例如:
par(mar=c(8, 4, 2, 0.1))

 
旋转轴标签:
 
可以使用 las 参数旋转轴标签的方向。默认是 0 ,表示垂直方向。如果将其设置为 2 则表示水平方向:

boxplot(exprs, ylab = expression(log2), las = 2, outline = FALSE)

如果发现标签长度仍然较长,可以再次增加边界大小或适当调整标签字体大小。

  • 这篇博客: R语言boxplot绘制箱线图中的 1. 基本用法 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • # 向量
    boxplot(rnorm(100,10,2))
    
    # 矩阵
    M <- matrix(1:15,ncol=3,nrow=5)
    boxplot(M)
    
    dataset <- data.frame(value1 = rep(1:100, times = 2),
                          value2 = seq(1,200,2),
                          group = factor(rep(c("A", "B"), each = 100)))
    # 数值型数据框
    boxplot(dataset[,c("value1","value2")])
    
    # 公式
    boxplot( value ~ group, dataset)
    
    

    主要参数的含义:
    x: 向量,列表或数据框。
    formula: 公式,形如y~grp,其中y为向量,grp是数据的分组,通常为因子。
    data: 数据框或列表,用于提供公式中的数据。
    range: 数值,默认为1.5,表示触须的范围,即range × (Q3 - Q1)
    width: 箱体的相对宽度,当有多个箱体时,有效。
    varwidth: 逻辑值,控制箱体的宽度, 只有图中有多个箱体时才发挥作用,默认为FALSE, 所有箱体的宽度相同,当其值为TRUE时,代表每个箱体的样本量作为其相对宽度
    notch: 逻辑值,如果该参数设置为TRUE,则在箱体两侧会出现凹口。默认为FALSE。
    outline: 逻辑值,如果该参数设置为FALSE,则箱线图中不会绘制离群值。默认为TRUE。
    names:绘制在每个箱线图下方的分组标签。
    plot : 逻辑值,是否绘制箱线图,如设置为FALSE,则不绘制箱线图,而给出绘制箱线图的相关信息,如5个点的信息等。
    border:箱线图的边框颜色。
    col:箱线图的填充色。
    horizontal:逻辑值,指定箱线图是否水平绘制,默认为FALSE。