繁体   English   中英

在R轴标签中使用上标

[英]Use superscripts in R axis labels

在R中使用基本图形时,如何在地图上绘制纬度和经度轴时可能需要将上标添加到轴标签。

考虑这个例子:

plot(-100:-50, 50:100, type="n", xlab="", ylab="", axes=FALSE)
axis(1, seq(-100, -50, 10), labels=paste(abs(seq(-100, -50, 10)), "o", "W", sep=""))
axis(2, seq(50, 100, 10), labels=paste(seq(50,100,10), "o", "N", sep=""))
box()

在地图周围生成一个漂亮的框架。 使度数符号上标更好。

这通常可以在其他绘图函数中完成,例如mtext()text()使用expression(paste(...))substitute()但在这种情况下如何做?

对于轴,它的工作方式相同: parse(text='70^o*N')o作为上标提升( *N是为了确保N也不会被提升)。

labelsX=parse(text=paste(abs(seq(-100, -50, 10)), "^o ", "*W", sep=""))
labelsY=parse(text=paste(seq(50,100,10), "^o ", "*N", sep=""))
plot(-100:-50, 50:100, type="n", xlab="", ylab="", axes=FALSE)
axis(1, seq(-100, -50, 10), labels=labelsX)
axis(2, seq(50, 100, 10), labels=labelsY)
box()

这是一个简单的例子

plot(rnorm(30), xlab = expression(paste("4"^"th")))

在这种特殊情况下,另一种选择是键入度数符号:˚

R似乎处理得很好。 在Mac上键入Option-k以获取它。 不确定其他平台。

@The Thunder Chimp你可以分割文本,使某些部分受到超级(或子)脚本的影响而其他部分不是通过使用*。 就你的例子而言,将“时刻”这个词从“第四”中分离出来 -

plot(rnorm(30), xlab = expression('4'^th*'moment'))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM