本文主要是介绍解决Python使用matplotlib绘图时出现的中文乱码问题RuntimeWarning: Glyph 24180 missing,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
使用matplotlib生成图片但无法显示中文字体
报错信息:matplotlib/backends/backend_agg.py:240: RuntimeWarning: Glyph 24180 missing
原因:matplotlib 自带的字体库不支持中文
解决办法:下载中文字体>放入 matplotlib 字体库路径>修改 matplotlibrc 文件
1、在终端python 的环境下,查看字体路径
import matplotlib
print(matplotlib.matplotlib_fname())
2、下载中文字体
网上常用的中文字体是 SimHei,其他字体可自行搜索下载。SimHei字体下载
3、拷贝字体到 matplotlib 的字体库
查看 matplotlib 字体库路径,将 SimHei.ttf 文件放入其中
在上述路径后,删除:matplotlibrc 添加 /fonts/ttf,matplotlib 字体库的路径为
/usr/local/python3/lib/python3.7/site-packages/matplotlib/mpl-data/fonts/ttf
将下载的 SimHei.ttf 文件放到字体库路径下即可。
4、修改matplotlibrc文件路径
/usr/local/python3/lib/python3.7/site-packages/matplotlib/mpl-data/matplotlibrc
找到 font.serif,font.sans-serif 所在位置,如下如所示。在冒号后面加入 SimHei ,保存退出。
修改为false负号正常显示 axes.unicode_minus : False
5、删除matplotlib的缓冲目录
在终端python 的环境下,输入如下指令,查看matplotlib的字体缓存路径:
import matplotlib
matplotlib.get_cachedir()
使用rm -rf +路径删除缓存
6、在编译器中继续运行代码
中文能够正常显示,完美解决问题!
这篇关于解决Python使用matplotlib绘图时出现的中文乱码问题RuntimeWarning: Glyph 24180 missing的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!