Plotly中使用$...$标记后LaTeX公式无法渲染显示问题求助
Plotly LaTeX公式无法渲染的解决办法
你按照Plotly官网的LaTeX示例编写代码,但运行后LaTeX公式未被渲染,而是显示原始的代码文本(如标题、坐标轴直接显示$\alpha_{1c} = 352 \pm 11 \text{ km s}^{-1}$这类代码,而非格式化的数学公式)。以下是修复方案:
一、添加MathJax渲染配置
核心问题是Plotly默认未启用LaTeX渲染引擎,只需在update_layout中加入mathjax='cdn'参数,让Plotly加载官方的MathJax资源即可:
import plotly.express as px fig = px.line(x=[1, 2, 3, 4], y=[1, 4, 9, 16], title=r'$\alpha_{1c} = 352 \pm 11 \text{ km s}^{-1}$') fig.update_layout( xaxis_title=r'$\sqrt{(n_\text{c}(t|{T_\text{early}}))}$', yaxis_title=r'$d, r \text{ (solar radius)}$', mathjax='cdn' # 关键配置:启用MathJax渲染LaTeX ) fig.show()
二、不同运行环境的适配
- Jupyter Notebook/Lab:如果运行后仍无效果,先执行
plotly.offline.init_notebook_mode(connected=True)初始化离线环境,确保Notebook能加载MathJax资源 - PyCharm等IDE内置预览:部分IDE的Plotly预览组件不支持LaTeX渲染,建议用
fig.write_html("latex_plot.html")生成HTML文件,在浏览器中打开查看渲染效果
三、可选语法优化
部分复杂LaTeX语法可以调整为Plotly更兼容的写法,比如把\text替换为\mathrm,渲染效果一致:
yaxis_title=r'$d, r \mathrm{ (solar radius)}$'
运行修改后的代码,公式即可正常渲染为标准数学符号。
内容的提问来源于stack exchange,提问作者TsurumiTei
相关产品推荐
相关产品推荐

