matplotlib显示不了中文,主要问题在于没有指定中文字体。
解决方法有有很多种,有修改matplotlib配置文件,还有替换matplotlib的mpl-data
文件夹下字体文件的,这些方法不够灵活,以下两种方法相对灵活一些。
方法一
#-*- coding: utf-8 -*-
import matplotlib.pyplot as plt
import matplotlib
matplotlib.rcParams['font.sans-serif'] = ['FangSong_GB2312']
#指定的字体为系统自带的字体,这种方法关键在于要知道操作系统自带的字体的名称
fig = plt.figure()
ax = fig.add_subplot(111)
ax.set_title(u'试试看')
plt.show()
方法二
#-*- coding: utf-8 -*-
import matplotlib.pyplot as plt
import matplotlib
fig = plt.figure()
ax = fig.add_subplot(111)
font_path = matplotlib.font_manager.FontProperties(fname='msyh.ttf')
#指定字体为同目录下的msyh.ttf即微软雅黑
ax.set_title(u'试试看',fontproperties=font_path)
plt.show()