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

Matplotlib中含变量的图形下标标题设置问题

解决Matplotlib标题中变量作为整体下标的问题

要让变量n的数值整体作为t的下标,关键是让LaTeX识别到下标是一个完整的多字符内容——LaTeX中下标默认仅作用于单个字符,多字符下标必须用花括号包裹。结合f-string的语法,你需要用双花括号转义来生成LaTeX所需的花括号,同时将变量插入其中。

正确代码示例

import matplotlib.pyplot as plt

n = 100
plt.figure()
# 用双花括号转义生成LaTeX的下标包裹花括号,变量n的结果会被完整放入下标区域
plt.title(f'$t_{{{n:3d}}}=0.1$')
plt.show()

原理说明

  • 原代码中$t_{n:3d}$会被LaTeX解析为:仅将n:3d输出的第一个字符(即1)作为下标,后续字符00被当作普通文本。
  • 修正后的{{n:3d}}在f-string解析时,会先将n:3d替换为100,同时双花括号会转为单个花括号,最终生成LaTeX表达式$t_{100}=0.1$,这样LaTeX就会把100整体作为t的下标。

如果不需要固定3位格式,直接写f'$t_{{{n}}}=0.1$'即可达到同样效果。

内容的提问来源于stack exchange,提问作者Ongky Denny Wijaya

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.21 10:32:36