更改轴标签中多行之间的距离

时间:2018-01-14 20:28:49

标签: r plot axis-labels

我需要为x轴标签绘制两条线。因为我需要使用特殊字体,所以我选择使用“表达式”和“atop”。问题是,如果我只使用“\ n”,两条线之间的距离要大得多。如下所示:

xlabs <- c('change in log2\nsample A', 
            expression(atop('change in'~log['2'], 'sample B')))

我有这样的事情:

enter image description here

任何人都知道如何解决问题?

2 个答案:

答案 0 :(得分:2)

您可以将图形参数lheightmtext一起使用,将行间距调整为您想要的任何内容

plot(1:100, xlab = '')
par(lheight = 1.1)
mtext(xlabs[1], side = 1, line = 2)

enter image description here

答案 1 :(得分:0)

我认为使用表达式向量是所要求的:

exl <- list(quote(line~1), quote(line~2))
plot(0:1,0:1,type="n",xlab="")
mtext(side=1, do.call(expression,exl),line=1:2)

这些也取得了成功(并且可能指向更灵活的方法来使用表达载体:

plot(0:1,0:1,type="n",xlab="")
mtext(side=1, expression(line*1, line*2), line=1:2)

plot(0:1,0:1,type="n",xlab="")
mtext(side=1, c(bquote(line==.(round(exp(1),2))), expression(line*2)), line=1:2)