以多行打印文本作为绘图或轴的标题,文本中包含下标

时间:2013-03-28 17:56:30

标签: r

我希望在标题中以两行打印文本,但由于文本中存在下标,因此无法实现所需的输出。以下是我想要的两行文本。

plot(1,main=expression(paste(CO[2]~'Flux (kg C ', m^-2,' ',s^-1,')')))

但是,如以下命令中所示使用换行符不会产生所需的结果(仅)将其后面的文本带到新行:

plot(1,main=expression(paste(CO[2]~'Flux \n(kg C ', m^-2,' ',s^-1,')')))

请帮我解决这个问题。 提前致谢

1 个答案:

答案 0 :(得分:3)

您可以使用atop功能执行此操作。

plot(1,main=expression(atop(CO[2]~'Flux', paste('(kg C ', m^-2,' ',s^-1,')'))))

enter image description here

由于lheight par不会影响表达式,如果您希望线条之间的间距更紧密,则可以使用以下内容。

plot(1,main=expression(textstyle(atop(CO[2]~'Flux', paste('(kg C ', m^-2,' ',s^-1,')')))), 
     cex.main=2)

enter image description here