R绘图标签以上标形式作为第一个字符

4
我正在使用R绘制同位素数据图。我想用上标作为第一个字符来标注坐标轴。我尝试了与第二个字符的上标相同的方法,但是出现了以下错误: x<-seq(0,10) y<-seq(0,10) plot(x, y, ylab=expression(paste(^87,'Sr/',^'86','Sr'))) 错误:在“plot(x,y,ylab = expression(paste(^”中有意外的'^'。
谢谢你的帮助。

1
在开始时尝试使用空字符串:ylab=expression(text=''^87*'Sr/'^86*'Sr')) - Andrew Gustar
可以了,非常感谢! - user8665021
@AndrewGustar 你应该将其发布为答案,以便未来的用户可以找到它。 - Rui Barradas
2个回答

5
诀窍是在开头放一个空字符串:
ylab=expression(text=''^87*'Sr/'^86*'Sr'))

在我的情况下,我需要以^1-上标数字开始该行,这可以很好地与expression(""^1")配合使用。但在我的情况下,这不是一个解决方案,因为我想放置text_in_var的内容,似乎后者不易用expression实现,而用bquote(.(text_in_var))则较为简单。有什么建议吗? - JelenaČuklina
@JelenaČuklina 经过一些尝试和错误,我认为 ylab=bquote(paste(""^1, .(text_in_var))) 可能有效。 - Andrew Gustar

0

这个命令对我有效:

ylab(expression(~''^{"87"}~Sr/~''^{"86"}~Sr))

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接