Python在Matplotlib图中显示中文字体的操作方法
作者:xieyan0811 发布时间:2023-03-30 00:29:54
标签:python,matplotlib,中文字体
1. 说明
本篇主要针对在Ubuntu系统中,matplotlib显示不了中文的问题,尤其是在无法安装系统字体的情况下,解决Python绘图时中文显示的问题。
2. 在系统中安装字体
$ fc-list :lang=zh#
查看中文字体名称及其安装路径,相对于英文字体,中文字体文件一般较大。
如果无中文字体,可使用apt-get安装,具体方法如下:
$ apt-cache search font|grep Chinese # 查看可安装的中文字体
$ sudo apt-get install fonts-wqy-zenhei # 安装字体, 一般字体会被安装到/usr/share/fonts/的某个子目录下,也可以从windows中把ttf,ttc复制到fonts目录下。
$ cd /usr/share/fonts/truetype/xxx/ # cd到字体安装目录下
$ sudo mkfontscale
$ sudo mkfontdir
$ fc-cache -v # 更新字体
$ fc-list :lang=zh # 此时就可以看到新装的字体
3. 在Python中指定字体
此时python就可以使用新安装的字体了,方法是在Python中设置默认字体.
plt.rcParams['font.sans-serif'] = ['Droid Sans Japanese']
用以下方法可列出Python可用的系统字体名称及路径。
from os import path
from matplotlib.font_manager import fontManager
for i in fontManager.ttflist:
print(i.fname, i.name)
4. 在程序中指定字体文件
如果由于权限的限制,无法安装系统字体,也可以在程序中直接指定程序路径load字体,具体方法如下:
zhfont = mpl.font_manager.FontProperties(fname='../../font/wqy-zenhei.ttc')
plt.xlabel(u'测试一下 ', fontsize=20, fontproperties=zhfont)
注意:用docker+notebook写程序时,需要把字体存放在有权访问的路径之下。
5. 为Python安装新字体
把字体复制到 /usr/local/lib/python3.6/site-packages/matplotlib/mpl-data/fonts/ttf/目录下,然后删除 /root/.cache/matplotlib/,就可以使用新的字体了。
总结
以上所述是小编给大家介绍的Python在Matplotlib图中显示中文字体的方法,网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
来源:https://www.jianshu.com/p/1d2adaea1bd1


猜你喜欢
- 本文实例讲述了Python实现PS图像调整颜色梯度效果。分享给大家供大家参考,具体如下:这里用 Python 实现 PS 中的色彩图,可以看
- RPC,即 Remote Procedure Call(远程过程调用),说得通俗一点就是:调用远程计算机上的服务,就像调用本地服务一样。我的
- 本文实例讲述了JavaScript观察者模式(publish/subscribe)原理与实现方法。分享给大家供大家参考,具体如下:观察者模式
- 目录1、前言2、递归3、回调函数3.1匿名回调函数3.2带参数的回调函数3.3回调函数的优缺点4、自调函数5、为值的函数6、闭包1、前言在J
- 什么是insert buffer? 插入缓冲,也称之为insert buffer,它是innodb存储引擎的关键特性
- MySQL之前有一个查询缓存Query Cache,从8.0开始,不再使用这个查询缓存,那么放弃它的原因是什么呢?在这一篇里将为您介绍。My
- 多数情况下,mysql在刚刚安装时是不支持中文的,这是由于编码的问题我们可以通过修改配置文件,永久实现mysql对中文的识别首先我们要先将文
- 简介:MongoEngine 是一个Document-Object Mapper (想一下ORM, 但它是针对文档型数据库),Python通
- 如果index是时间序列就不用转datetime;但是如果时间序列是表中的某一列,可以把这一列设为index例如:代码:DF=df2.set
- 前言最近在使用Python的时候遇到浮点数运算,发现经常会碰到如下情况:出现上面的情况,主要还是因浮点数在计算机中实际是以二进制保存的,有些
- 1.概述pyecharts 是百度开源的,适用于数据可视化的工具,配置灵活,展示图表相对美观,顺滑。2.安装python3环境下的安装:pi
- 在介绍完给图上添加文字后,我们再介绍给图片上添加图片,也就是图片的叠加。需要使用的Python的图像库:PIL.更加详细的知识点如下:Ima
- 简介在日常的Python开发中,处理时间和日期的需求是非常常见的。尽管Python内置了 datetime 和 time 模块,但在某些情况
- 本篇文章是一篇Vue.js的教程,目标在于用一种常见的业务场景——分页/无限加载,帮助读者更好的理解Vue.js中的一些设计思想。与许多To
- 搭建MySQL主从后,很多时候不知道从的状态是否ok,有时候出现异常不能及时知道,这里通过shell脚本结合zabbix实现监控并告警一般情
- 微服务架构中收集通常大家都采用ELK进行日志收集,同时我们还采用了SkyWalking进行链路跟踪,而SkyWalking数据存储也用到了E
- MySQL带AND关键字的多条件查询,MySQL中,使用AND关键字,可以连接两个或者多个查询条件,只有满足所有条件的记录,才会被返回。SE
- 在机房收费系统中,有几处这样的情况:起始日期和终止日期,相信聪明的你肯定可以想象出为什么要有两个日期控件!是的,就是从一张表中查找出在这两个
- 1.重命名表方法使用 RENAME TABLE 语句或 ALTER TABLE 语句都可以对表进行重命名,基本语法如下:# RE
- 交待:使用的软硬件环境为Win XP SP2、SQL Server 2000 SP2个人版、普通双核台式机、1000M局域网,A机为已使用的