Python matplotlib pyplot中title() xlabel() ylabel()无法显示在中文(方框乱码)的解决办法

来源:互联网 发布:软件资格考试怎么报名? 编辑:程序博客网 时间:2024/04/30 07:17

Python matplotlib包其实是支持unicode的,但是我在实验中无法正常显示中文,比如说在pyplot.title()中输出中文,我试过以下几种方法均不奏效

pyplot.title('中文')

pyplot.title("中文")

pyplot.title(u'中文')

pyplot.title(u"中文")

pyplot.title(u'\u4e2d\u6587') #  (unicode编码)

pyplot.title('\u4e2d\u6587')

pyplot.title('\xe4\xb8\xad\xe6\x96\x87') # (utf-8编码)


原来是matplotlib.pyplot在显示时无法找到合适的字体,故显示乱码(我的显示为方框)


解决办法:

添加相关包,指定相关字体

from matplotlib import pyplotfrom matplotlib.font_manager import FontPropertiesfont_set = FontProperties(fname=r"c:\windows\fonts\simsun.ttc", size=15)pyplot.title(u'中文', fontproperties=font_set)pyplot.xlabel(u'中文', fontproperties=font_set)pyplot.ylabel(u'中文', fontproperties=font_set)


0 0