【问题标题】:How to display LaTeX f-strings in matplotlib [duplicate]如何在 matplotlib 中显示 LaTeX f 字符串 [重复]
【发布时间】:2020-05-25 17:59:26
【问题描述】:

在 Python 3.6 中,有一个新的 f-string 可以在字符串中包含变量,这很棒,但是如何正确应用这些字符串来为 matplotlib 打印上标或下标?

(要实际查看带下标的结果,您需要在 matplotlib 图上绘制变量 foo

换句话说,我如何获得这种行为:

    var = 123
    foo = r'text$_{%s}$' % var
    text<sub>123</sub>

使用新的 f-string 语法?到目前为止,我已经尝试使用原始字符串文字与 f 字符串相结合,但这似乎只是将下标应用于变量的第一个字符:

    var = 123
    foo = fr'text$_{var}$'
    text<sub>1</sub>23

因为{ 具有一个模棱两可的功能,用于界定r 应考虑下标的内容以及f 界定作为变量位置的内容。

【问题讨论】:

    标签: python python-3.x string matplotlib f-string


    【解决方案1】:

    您需要通过将大括号加倍来转义大括号,然后再添加一个以在 LaTeX 公式中使用。这给出了:

    foo = f'text$_{{{var}}}$'
    

    示例:

    plt.figure()
    plt.plot([1,2,3], [3,4,5])
    var = 123
    plt.text(1, 4,f'text$_{{{var}}}$')
    

    输出:

    顺便说一下,在本例中,您实际上并不需要使用原始字符串文字。

    【讨论】:

      猜你喜欢
      • 2020-12-12
      • 2017-04-05
      • 1970-01-01
      • 2021-09-16
      • 2016-08-09
      • 2020-12-31
      • 1970-01-01
      • 1970-01-01
      • 2018-02-28
      相关资源
      最近更新 更多