【问题标题】:Matplotlib Display Dollar Signs in Tick Labels (Strings)Matplotlib 在刻度标签(字符串)中显示美元符号
【发布时间】:2017-03-10 16:39:46
【问题描述】:

我不知道如何在不是数字而是字符串的刻度标签中显示美元符号。

这是我的意思的一个例子:

import matplotlib.pyplot as plt
import numpy as np

categories = ['$0-$10','$10-$20','$20-$30']
y_pos = np.arange(len(categories))
data = 3 + 10 * np.random.rand(len(categories))

plt.barh(y_pos, data, align='center', alpha=0.4)
plt.yticks(y_pos, categories)

plt.show()

产量:

我试过这个,它可以用数千美元:

fmt = '${x:,.0f}'
tick = mtick.StrMethodFormatter(fmt)
plt.yaxis.set_major_formatter(tick) 

...但是像我这里的字符串没有运气。

【问题讨论】:

    标签: python matplotlib format labels dollar-sign


    【解决方案1】:

    用反斜杠转义美元符号,以便 Matplotlib 不会将它们解释为表示 LaTeX math mode 的开头(或结尾):

    import matplotlib.pyplot as plt
    import numpy as np
    
    categories = ['\$0-\$10','\$10-\$20','\$20-\$30']
    y_pos = np.arange(len(categories))
    data = 3 + 10 * np.random.rand(len(categories))
    
    plt.barh(y_pos, data, align='center', alpha=0.4)
    plt.yticks(y_pos, categories)
    
    plt.show()
    

    【讨论】:

      猜你喜欢
      • 2018-06-05
      • 2016-11-04
      • 2010-11-16
      • 2022-01-01
      • 2013-06-22
      • 2021-11-17
      • 2015-08-21
      • 1970-01-01
      相关资源
      最近更新 更多