Matplotlib中不支持中文的问题怎么办,有何解决方法
Admin 2022-06-28 群英技术资讯 1002 次浏览
这篇文章给大家分享的是Matplotlib中不支持中文的问题怎么办,有何解决方法。小编觉得挺实用的,因此分享给大家做个参考,文中的介绍得很详细,而要易于理解和学习,有需要的朋友可以参考,接下来就跟随小编一起了解看看吧。Matplotlib默认不支持中文字符,因为默认的英文字体无法显示汉字。

在代码块加上这两行代码:
plt.rcParams[‘font.sans-serif']=[‘SimHei'] #用来正常显示中文标签 plt.rcParams[‘axes.unicode_minus']=False #用来正常显示负号


补充jupyter-notebook 中matplotlib不支持中文的问题(Linux)
问题就不截图了, jupyter-notebook中,使用plt画出的图像,中文都是小方格(乱码)
把Windows的字体C:/Windows/Fonts复制到Linux系统的存放字体路径/usr/share/fonts下, 如图:

cd到/usr/share/fonts/Fonts,也就是拷贝来的文件夹, 建立字体索引信息,更新字体缓存,让字体生效, 运行命令:
mkfontscale && mkfontdir && fc-cache -fv && source /etc/profile && fc-list |wc -l
查看字体fc-list :lang=zh

这里有很多版本,比如:
import matplotlib
matplotlib.use('qt4agg')
#指定默认字体
matplotlib.rcParams['font.sans-serif'] = ['SimHei']
matplotlib.rcParams['font.family']='sans-serif' #解决负号'-'显示为方块的问题
matplotlib.rcParams['axes.unicode_minus'] = False
我的设置是:
from pylab import mpl mpl.rcParams['font.sans-serif'] = ['STSong'] mpl.rcParams['axes.unicode_minus'] = False
如图,可以正常显示中文了

如果添加了第二部的配置,但还是显示中文乱码, 那么有可能是缓存的问题, 执行rm -r ~/.cache/matplotlib

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章主要为大家详细介绍了Python的构造方法和析构方法,使用Python编程基础,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
每当小编看见朋友圈有这种九宫格的照片就觉得特别秀,一直想自己什么时候也能来秀一个,所以直接拿这个练练手,酷炸朋友圈一波,直接进入主题,需要的朋友可以参考下
Python基础-文件的操作(打开,读,写,重命名,删除等)
这篇文章主要介绍了python计算阶乘的两个函数用法,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
在数据分析中,分组聚合二者缺一不可。对数据聚合(求和、平均值等)通常是不可避免的。pd.agg()很方便进行聚合操作。在这篇文章中我们来了解一下,一些朋友可能会遇到这方面的问题,下文内容详细,易于理解,希望大家阅读完这篇能有收获哦,有需要的朋友就往下看吧!
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008