termux中matplotlib无法显示中文问题的解决方法


Posted in Python onJanuary 11, 2021

问题背景

在开始正文之前,感谢用户名为怜索的朋友送给了我的博客2021年的第一个赞!

import numpy as np
import matplotlib
import matplotlib.pyplot as plt
import os
matplotlib.rcParams['xtick.direction'] = 'in'
matplotlib.rcParams['ytick.direction'] = 'in'
plt.rcParams['axes.unicode_minus'] = False # 用来正常显示负号
#显示中文
plt.rcParams['font.sans-serif'] = ['simhei']
x = np.linspace(-1,1,50)#从(-1,1)均匀取50个点
y = 2 * x
plt.plot(x,y)

plt.xlabel("吸光值")
plt.ylabel("浓度")
plt.show()

上述代码在window和linux系统均能够在横纵坐标标题正确显示中文,但在termux中效果如下:

termux中matplotlib无法显示中文问题的解决方法

解决方案

从window或者当前系统中找到中文字体,或者前往https://github.com/dolbydu/font下载相应字体(该网站目前需要科学上网),本文以字体simhai.ttf(黑体)为例;

将simhai.ttf文件移动到/data/data/com.termux/files/usr/lib/python3.9/site-packages/matplotlib/mpl-data/fonts/ttf目录下;

修改matplotlibrc文件

#去掉注释
font.family      : sans-serif
#去掉注释,并在冒号后的值前添加前文提及的中文字体
font.sans-serif  : STKaiti, Simhei........
#删除matplotlib缓存
rm -rf ~/.cache/matplotlib

测试

还是上述代码:

import numpy as np
import matplotlib
import matplotlib.pyplot as plt
import os
#设置坐标轴朝向
matplotlib.rcParams['xtick.direction'] = 'in'
matplotlib.rcParams['ytick.direction'] = 'in'
plt.rcParams['axes.unicode_minus'] = False # 用来正常显示负号
#显示中文
plt.rcParams['font.sans-serif'] = ['simhei']
x = np.linspace(-1,1,50)#从(-1,1)均匀取50个点
y = 2 * x
plt.plot(x,y)

plt.xlabel("吸光值")
plt.ylabel("浓度")
#由于termux没有图像界面,因此不能够使用plt.show(),因此用plt.savefig()配合termux-open命令替代
plt.savefig("test2.png")
os.system("termux-open test2.png")

效果:

termux中matplotlib无法显示中文问题的解决方法

附加:matplotlib中文字体目录

黑体:SimHei
微软雅黑:Microsoft YaHei
微软正黑体:Microsoft JhengHei
新宋体:NSimSun
新细明体:PMingLiU
细明体:MingLiU
华文新魏:STXinwei
华文行楷:STXingkai
华文隶书:STLliti
花纹琥珀:STHupo
华文彩云:STCaiyun
方正姚体:FZYaoti
方正舒体:FZShuTi
标楷体:DFKai-SB
华文仿宋:STFangsong
华文中宋:STZhongsong
华文宋体:STSong
华文楷体:STKaiti
华文细黑:STXihei
幼圆:YouYuan
隶书:LiSu
楷体_GB 2313:Kaiti_GB2313
仿宋_GB2313:FangSong_GB2313
仿宋:FangSong

到此这篇关于termux中matplotlib无法显示中文问题的解决方法的文章就介绍到这了,更多相关termux matplotlib无法显示中文内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
图文详解WinPE下安装Python
May 17 Python
Python中shape计算矩阵的方法示例
Apr 21 Python
用python结合jieba和wordcloud实现词云效果
Sep 05 Python
Python多线程爬虫实战_爬取糗事百科段子的实例
Dec 15 Python
对Python发送带header的http请求方法详解
Jan 02 Python
Python I/O与进程的详细讲解
Mar 08 Python
pygame实现俄罗斯方块游戏(AI篇1)
Oct 29 Python
使用python 对验证码图片进行降噪处理
Dec 18 Python
Python3 assert断言实现原理解析
Mar 02 Python
浅析PyCharm 的初始设置(知道)
Oct 12 Python
Python 中数组和数字相乘时的注意事项说明
May 10 Python
Python pyecharts案例超市4年数据可视化分析
Aug 14 Python
完美解决Pycharm中matplotlib画图中文乱码问题
Jan 11 #Python
Python脚本调试工具安装过程
Jan 11 #Python
装上这 14 个插件后,PyCharm 真的是无敌的存在
Jan 11 #Python
Jupyter Notebook 远程访问配置详解
Jan 11 #Python
jupyter notebook远程访问不了的问题解决方法
Jan 11 #Python
matplotlib绘制鼠标的十字光标的实现(自定义方式,官方实例)
Jan 10 #Python
解决selenium+Headless Chrome实现不弹出浏览器自动化登录的问题
Jan 09 #Python
You might like
关于Intype一些小问题的解决办法
2008/03/28 PHP
使用PHP实现密保卡功能实现代码<打包下载直接运行>
2011/10/09 PHP
改写函数实现PHP二维/三维数组转字符串
2013/09/13 PHP
yii框架builder、update、delete使用方法
2014/04/30 PHP
基于PHP常用文件函数和目录函数整理
2017/08/17 PHP
php封装的pdo数据库操作工具类与用法示例
2019/05/08 PHP
JS时间选择器 兼容IE6,7,8,9
2012/06/26 Javascript
推荐40个简单的 jQuery 导航插件和教程(下篇)
2012/09/14 Javascript
基于javascript实现listbox左右移动
2016/01/29 Javascript
JavaScript ES6的新特性使用新方法定义Class
2016/06/28 Javascript
web 屏蔽BackSpace键实例代码
2016/12/24 Javascript
基于vue,vue-router, vuex及addRoutes进行权限控制问题
2018/05/02 Javascript
解决vue attr取不到属性值的问题
2018/09/18 Javascript
JavaScript箭头函数中的this详解
2019/06/19 Javascript
js实现固定区域内的不重叠随机圆
2019/10/24 Javascript
原生js实现购物车
2020/09/23 Javascript
python scp 批量同步文件的实现方法
2019/01/03 Python
详解python中list的使用
2019/03/15 Python
Python函数定义及传参方式详解(4种)
2019/03/18 Python
纯css3实现的鼠标悬停动画按钮
2014/12/23 HTML / CSS
HTML5的结构和语义(5):内嵌媒体
2008/10/17 HTML / CSS
Sephora丝芙兰泰国官方网站:国际知名化妆品购物
2017/11/15 全球购物
美国木工工具和用品商店:Woodcraft
2019/10/30 全球购物
在阿联酋购买翻新手机和平板电脑:Teckzu
2021/02/12 全球购物
优秀毕业生求职信范文
2014/01/02 职场文书
学校元旦晚会方案
2014/02/19 职场文书
升国旗仪式主持词
2014/03/19 职场文书
幼儿园六一儿童节文艺汇演主持词
2014/03/21 职场文书
孝敬父母的活动方案
2014/08/28 职场文书
对外汉语专业大学生职业生涯规划书
2014/10/11 职场文书
社区党支部公开承诺书
2015/04/29 职场文书
在职证明书模板
2015/06/15 职场文书
党章党规党纪学习心得体会
2016/01/14 职场文书
详解Apache SkyWalking 告警配置指南
2021/04/22 Servers
SpringCloud的JPA连接PostgreSql的教程
2021/06/26 Java/Android
十大必看国产动漫排名,魁拔上线,第二曾在日本播出
2022/03/18 国漫