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

如何解决matplotlib中LaTeX符号使用\mathrm无法取消斜体的问题

\mathrm{}仅作用于字母、数字类字符,对\copyright这类预定义的特殊符号命令不生效,所以没法达到取消斜体的效果,你可以用以下两种方案解决问题:


  • 方法1:无其他数学内容需求时,直接输出符号,不包裹$数学环境标记
    这是最简单的方案,非数学环境下的文本默认就是正体,不会触发斜体格式,代码示例:
import numpy as np
import matplotlib.pyplot as plt

x = np.arange(10)
y = x

plt.plot(x,y,'ro')
plt.xlabel("©")
plt.show()
  • 方法2:需要和其他数学内容混排时,用\text{}而非\mathrm{}包裹符号
    \text{}可以保留文本的原有正体格式,对特殊符号也生效,代码示例:
# 示例中同时包含数学公式和版权符号
plt.xlabel(r"$y = x \quad \text{\copyright}$")

如果你启用了matplotlib的外部LaTeX渲染功能,需要提前在rcParams中加载amsmath包:

plt.rcParams['text.latex.preamble'] = r'\usepackage{amsmath}'

补充说明:该方法适用于所有特殊符号的正体设置,包括商标符号™、摄氏度符号°等同类场景。

内容的提问来源于stack exchange,提问作者T-Dog

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 09:06:03