如何在包含R中的希腊字母的图标题中添加换行符

fre*_*tal 3 plot r line-breaks title character-encoding

这个问题感觉它应该有一个直截了当的答案,但我似乎无法弄明白,而且这是我第一次找不到其他已经问过并在互联网上得到这个问题答案的人.

我有一个情节标题,有希腊字母(不是问题)以及换行符(通常也不是问题).但不知何故,我不能让他们两个同时在一个情节标题中工作.

这段代码工作正常,但它太长了:

title1=expression(paste("Interannual variability in "*delta^13*"C ratios in fish samples"))
plot(1,1, main=title1)
Run Code Online (Sandbox Code Playgroud)

此代码也可以正常工作,并插入换行符,但它没有希腊字母或上标:

title1=expression(paste("Interannual variability in d13C ratios \nin fish samples"))
plot(1,1, main=title1)
Run Code Online (Sandbox Code Playgroud)

但是这段代码将"C比率"放在上一行.这太令人困惑了.

title1=expression(paste("Interannual variability in "*delta^13*"C ratios\nin fish samples"))
plot(1,1, main=title1)
Run Code Online (Sandbox Code Playgroud)

我已经尝试了各种表达,粘贴和替换的排列,但必须承认我对这些函数的确切工作的掌握确实是不完整的.如果我能以不同的方式找到答案,我表示歉意.

任何想法都会受到欢迎.

谢谢!

42-*_*42- 5

你考虑过这个atop功能吗?(正如您发现plotmath不接受"\n"字符.)

title1=expression(atop(Interannual~variability~"in"~delta^13~C~ratios, 
                       "in"~fish~samples))
plot(1,1, main=title1)
Run Code Online (Sandbox Code Playgroud)

唯一需要引用的是"in",因为它是一个保留字.

(关于在何处查找先前的讨论,r-help档案中应该对此主题进行点击.)

require(fortunes)
fortune("Liaw-Baron principle")
Run Code Online (Sandbox Code Playgroud)