matplotlib 原始字符串中的换行问题

2 投票
1 回答
1119 浏览
提问于 2025-04-17 16:11

在matplotlib的文本字段中,什么字符或者字符组合可以用来换行,以避免代码行太长呢?

比如说:

plt.text(0.5, 0.5,
    r'$\mathsf{sin\left(\frac{\pi}{180} f_1 \theta + \varphi_1\right) + B sin\left(\frac{\pi}{180} f_2 \theta + \varphi_2\right)}$'

使用 "\" 来换行会导致打印出来的文本没有格式。

1 个回答

6

我通常会利用字符串字面量的拼接。简单来说,如果你有两个字符串紧挨着,没有其他的操作符,它们会自动连接在一起:

>>> "a" + "b"
'ab'
>>> "a" "b"
'ab'

而且这样

plt.text(0.5, 0.5,
         r'$\mathsf{sin\left(\frac{\pi}{180} f_1 \theta + \varphi_1\right)'
         r'     + B sin\left(\frac{\pi}{180} f_2 \theta + \varphi_2\right)}$')

也可以。(因为这是TeX,我加了一些额外的空格来让这两行对齐;如果我们在处理对空格更敏感的东西,这样就不行了。)

撰写回答