在matplotlib标签中添加换行符,在Python中添加TeX?

2024-05-18 20:36:34 发布

您现在位置:Python中文网/ 问答频道 /正文

如何向matplotlib中的绘图标签(例如xlabel或ylabel)添加换行符?例如

plt.bar([1, 2], [4, 5])
plt.xlabel("My x label")
plt.ylabel(r"My long label with $\Sigma_{C}$ math \n continues here") 

理想情况下,我希望y标记也居中。有办法吗?标签必须同时包含TeX(用“$”括起来)和换行符。


Tags: 绘图herematplotlibmywithbarpltmath
3条回答

您可以拥有两个世界的最佳选择:自动“转义”LaTeX命令换行符:

plt.ylabel(r"My long label with unescaped {\LaTeX} $\Sigma_{C}$ math"
           "\n"  # Newline: the backslash is interpreted as usual
           r"continues here with $\pi$")

(另一个选项是用单个空格分隔字符串,而不是使用三行)。

实际上,Python会自动连接彼此跟随的字符串文本,您可以将原始字符串(r"…")和字符串与字符插值("\n")混合使用。

你的例子就是如何做到的,你用\n。不过,您需要去掉r前缀,这样python就不会将其视为原始字符串

plt.bar([1, 2], [4, 5])
plt.xlabel("My x label")
plt.ylabel(r"My long label with $\Sigma_{C}$ math" + "\n" + "continues here")

只需将字符串连接到一个不是原始字符串形式的换行符。

相关问题 更多 >

    热门问题