ggplot2 使用expression添加公式与数学符号
有时需要在图上标注诸如数学公式、上下标等符号,该操作可以通过expression
函数完成。
原理
如果在ggplot2中text
参数是一个表达式形式(expression
),则该参数将被根据类似TeX的规则对进行格式化输出。expression
可用于标题,注释以及x轴和y轴标签[1]。
expression
代码与输出的对应关系如图
使用方式
普通label
如果只是输出单独符号,则独立使用expression即可,如果组合复杂公式或添加文本描述,则在expression中使用paste进行拼接。
# 全公式
labels = expression(-pi, -pi/2, 0, pi/2, pi)
# 文本与符号组合
xlab = expression(paste("Phase Angle ", phi))
facet_grid()
中的label
需要将label解析方式设置为”label_parsed”[2]。
facet_grid(~ x, label = "label_parsed")
annotate()
中的label
text类型的标注,需将parse设置为TRUE。
annotate("text", label = expression(...), parse = TRUE)