Windows环境中python绘图显示中文字体解决方法
程序员文章站
2022-04-22 07:52:13
...
首先很高兴努力的您能光临我的小世界!!!
环境:Win 10; Anaconda; Tensorflow CPU; Python 3.5; Spyder;
重点代码:
import matplotlib
matplotlib.rc('font',family = 'SimHei',weight = 'bold')
1.遇到的问题:
可以看出该图片不能显示中文,中文处显示乱码(方框)。
并且程序出现警告:
UserWarning: findfont: Font family ['SimHei'] not found. Falling back to DejaVu Sans
(prop.get_family(), self.defaultFamily[fontext]))
2.分析及解决问题
环境中缺乏该字体,需要下载该该字体文件SimHei。下载路径和提取码如下:
链接:https://pan.baidu.com/s/1yDWLKgGGxtuR-aBfu8RKWg
提取码:l2v6
下载该文件并将该文件放在如下文件夹下:D:\anaconda\acript\pkgs\matplotlib-2.0.2-np113py35_0\Lib\site-packages\matplotlib\mpl-data\fonts\ttf
接下来重新运行自己的程序,图片立即显示中文,结果如下:
该部分完整代码如下:
from matplotlib import pyplot as plt
import matplotlib
#设置显示中文字体
matplotlib.rc('font',family = 'SimHei',weight = 'bold')
#准备数据
x = range(2,26,2)
y = [15,13,14,5,17,20,25,26,24,22,18,15]
#绘图
plt.plot(x,y)
x_xticks = ['{}时'.format(i) for i in x]
plt.xticks(list(x),x_xticks,rotation = 45)
plt.show()
最后,感谢您能用心看到最后,希望我的点滴分享能给你带来便利,记录点滴,方便他人。
欢迎大家的批评指正!
上一篇: python matplotlib中文字体无法显示问题
下一篇: MYSQL语法的详细总结(附示例)