You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在R绘图中使用LaTeX数学字体?含\mathcal与\mathbb需求

解决R绘图中LaTeX特殊字体符号无法显示的问题

latex2exp本质是把LaTeX语法转成R的plotmath表达式,但plotmath对\mathcal、\mathbb这类LaTeX特殊字体支持有限,甚至\mathbf的转换也容易出问题。给你两个实用的解决思路:

1. 直接用R原生plotmath语法

plotmath本身自带对应字体函数,不用依赖latex2exp,兼容性更好:

ggplot2示例

library(ggplot2)
ggplot() + 
  ggtitle(expression(mathcal(A) + bold(C)))

Base R绘图示例

plot(1, main = expression(mathcal(A) + bold(C)))
  • mathcal()对应LaTeX的\mathcal{}
  • bold()对应LaTeX的\mathbf{}
  • 注意:plotmath本身不支持\mathbb{},如果需要这个符号,得用下面的方法。

2. 用tikzDevice实现完整LaTeX渲染

如果必须用完整的LaTeX语法(比如需要\mathbb{}),可以用tikzDevice包,直接生成LaTeX代码并渲染,完美支持所有LaTeX符号:

步骤:

  1. 安装包:
install.packages("tikzDevice")
  1. 绘图并输出为LaTeX文件:
library(ggplot2)
library(tikzDevice)

# 生成tex文件,可后续编译为PDF
tikz("latex_plot.tex", width = 6, height = 4)
ggplot() + 
  ggtitle("$\\mathcal{A} + \\mathbf{C} + \\mathbb{R}$") +
  theme(text = element_text(family = "serif")) # 匹配LaTeX默认字体
dev.off()

这个方法需要你有LaTeX环境(比如TeX Live或MiKTeX),编译生成的.tex文件就能得到完美显示所有符号的图。

内容的提问来源于stack exchange,提问作者chm

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 02:10:17