将希腊字符添加到轴标题
Posted
技术标签:
【中文标题】将希腊字符添加到轴标题【英文标题】:Adding greek character to axis title 【发布时间】:2011-08-28 00:54:48 【问题描述】:我想在 R 中的条形图的 y 轴上添加一个希腊字符。 问题是我需要将这个角色整合到标题中。我要写:
Diameter of aperture ("mu"m)
在轴标签中。
有
ylab=expression()
我可以写希腊字符,用
ylab="axis title"
我可以在单词之间使用适当的空格来写标题。
但是我找不到将所有这些放在一起并在轴标签中写一个带有希腊词的适当标签的方法。我希望我已经足够清楚了。
【问题讨论】:
【参考方案1】:我在使用带有合适 TrueType 字体的 Windows 10 和 R 3.62 上的帮助包 utf8 时,对上面 Chase 的绘图示例(从 2011 年)给出了更新的答案。 在我的回答中,我为 μ 赋值。我只是用十六进制 (??) 代码调用的 unicode 字符。空格只是引号内的“空格”。看我的回答here:
另请参阅: http://www.unicode.org/Public/10.0.0/ucd/UnicodeData.txt
utf8-package utf8
# pi small case
utf8_print("\u03C0")
"π"
# sigma small case
utf8_print("\u03C3")
"σ"
μ <- abs(digamma(1))
μseq <- seq(μ,3*μ,μ)
dev.new()
plot(μseq, ylab = "Diameter of apeture ( μ m)",
, xlab = "Force spaces with ~ μ \u03C0 \u03C3 \u03C0 ",
, main = "This is another Greek character with space \u03C3")
#
【讨论】:
【参考方案2】:latex2exp
应该更直接:
require(latex2exp)
plot(1, xlab = TeX('$\\mu$'))
【讨论】:
如果你习惯用 Latex 排版,这比表达式好用得多。谢谢【参考方案3】:而且,如果您处理的是估计数量,plotmathgrDevices
还提供在您的希腊字母中添加帽子的可能性:
ylab = expression(paste("Diameter of aperture ( ", hat(mu), " )"))
hat()
中包含的 mu
可以解决问题。
【讨论】:
【参考方案4】:如果您想替换文本中的变量,请使用bquote
。例如,如果您有一个变量 mu
并希望在标题中显示它,则使用以下成语:
mu <- 2.8
plot(1:3, main=bquote(mu == .(mu)))
.()
中的部分将被替换,因此mu
的值将被打印,而不是希腊语“mu”字符。详情请参阅bquote
上的 R 帮助。
【讨论】:
这太完美了!正是我想要的【参考方案5】:我认为我正确地遵循了您的问题。 ~
在对 expression()
的调用中强制在字符之间使用空格。这是你想要的吗?
plot(1:3, ylab = expression("Diameter of apeture (" * mu ~ "m)"),
, xlab = expression("Force spaces with ~" ~ mu ~ pi * sigma ~ pi)
, main = expression("This is another Greek character with space" ~ sigma))
【讨论】:
【参考方案6】:如果您使用的是plotmathgrDevices
,则主帮助页面 (plotmath) 会包含您想要的示例:
xlab = expression(paste("Phase Angle ", phi))
或者对于你的情况,我猜:
ylab = expression(paste("Diameter of aperture ( ", mu, " )"))
这对你有用吗?
【讨论】:
哦,确实如此!非常感谢:)以上是关于将希腊字符添加到轴标题的主要内容,如果未能解决你的问题,请参考以下文章
将 Arial Unicode MS 添加到 CKEditor