刻度标签上的matplotlib负数显示为方框

时间:2017-03-29 19:30:28

标签: python matplotlib fonts

我正在使用matplotlib为报告生成绘图并指定我自己的样式表以指定文本格式以符合报告的指定文档样式。在我的.mplstyle样式表中,我指定了字体系列,如下所示:

font.family:Tw Cen MT

除了我有带负数的刻度标签之外,这对于所有内容都可以正常工作。对于刻度标签上的负数,减号将显示为带有此字体的框。使用默认字体系列它可以正常工作,但我需要使用Tw Cen MT字体系列。

有没有办法以正确显示负数的方式使用Tw Cen MT字体系列?

或者,有没有办法为刻度标签指定不同的字体。

在我的Python脚本中,我按如下方式设置滴答: ax2.set_yticks([ - 3,-2,-1,0,1,2,3],minor = False)

1 个答案:

答案 0 :(得分:1)

您使用的字体可能没有实现unicode减号 虽然我强烈建议不使用没有基本unicode标志的字体,但您可以使用normal hyphen instead解决此问题。

在mplstyle文件中添加

axes.unicode_minus  : False

或使用

plt.rcParams['axes.unicode_minus'] = False

与链接示例中一样。