我正在尝试将数学符号包括在ggplot
轴标签中。考虑以下代码。
library(ggplot2)
df <- data.frame(dose=c("D0.5", "D1", "D2"), len=c(4.2, 10, 29.5))
ggplot(data=df, aes(x=dose, y=len, group=1)) +
ylab("length")+
geom_line()+
geom_point()
我现在想将len ("Length")
的范围用符号Length ∈ [0, 10]
包括在y轴描述中,但是找不到找到将“ element of”符号添加到标签中的方法。 / p>
答案 0 :(得分:2)
有一篇很棒的帖子here经历了不同的方式,在这里我使用expression
ggplot(data=df, aes(x=dose, y=len, group=1)) +
ylab("length")+
geom_line()+
geom_point() +
ylab(expression("Length " ~ epsilon ~ " [0, 10]"))
编辑:
由于元素of的符号为\in
,因此由于in
是内置函数,因此表达式代码不起作用。可能有解决方法,但我不得不使用latex2exp
程序包
library(latex2exp)
ggplot(data=df, aes(x=dose, y=len, group=1)) +
ylab("length")+
geom_line()+
geom_point() +
ylab(TeX(sprintf("Length $\\in$ \\[0, 10\\]")))
答案 1 :(得分:0)
对于特殊符号,可以通过转义字符\U####
引用其Unicode值。 ∈是Unicode(U + 2208),因此可以使用\U2208
粘贴∈符号。
所以:
> 'Length \U2208 [0, 10]'
[1] "Length ∈ [0, 10]"
然后您只需在绘图代码中使用ylab('Length \U2208 [0, 10]')
。