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 相关文章推荐
Python Django使用forms来实现评论功能
Aug 17 Python
Python中字典(dict)合并的四种方法总结
Aug 10 Python
Flask框架通过Flask_login实现用户登录功能示例
Jul 17 Python
Python从文件中读取数据的方法讲解
Feb 14 Python
在Qt中正确的设置窗体的背景图片的几种方法总结
Jun 19 Python
django的model操作汇整详解
Jul 26 Python
python生成器推导式用法简单示例
Oct 08 Python
Python运行提示缺少模块问题解决方案
Apr 02 Python
Python爬取YY评级分数并保存数据实现过程解析
Jun 01 Python
python 实现批量图片识别并翻译
Nov 02 Python
python中pop()函数的语法与实例
Dec 01 Python
解析python中的jsonpath 提取器
Jan 18 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
如何在PHP中使用Oracle数据库(6)
2006/10/09 PHP
PHP接收json 并将接收数据插入数据库的实现代码
2015/12/01 PHP
PHP XML和数组互相转换详解
2016/10/26 PHP
Laravel使用Queue队列的技巧汇总
2019/09/02 PHP
关于恒等于(===)和非恒等于(!==)
2007/08/20 Javascript
javascript定时变换图片实例代码
2013/03/17 Javascript
jquery DIV撑大让滚动条滚到最底部代码
2013/06/06 Javascript
JS仿百度搜索自动提示框匹配查询功能
2013/11/21 Javascript
javascript实现继承的简单实例
2015/07/26 Javascript
JavaScript判断IE版本型号
2015/07/27 Javascript
js+css实现有立体感的按钮式文字竖排菜单效果
2015/09/01 Javascript
终于实现了!精彩的jquery弹幕效果
2016/07/18 Javascript
利用JS对iframe父子(内外)页面进行操作的方法教程
2017/06/15 Javascript
详解在Vue中使用TypeScript的一些思考(实践)
2018/07/06 Javascript
Vue中使用vux配置代码详解
2018/09/16 Javascript
JavaScript跳出循环的三种方法(break, return, continue)
2019/07/30 Javascript
[52:31]VP vs Serenity 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
Python的Flask框架中实现登录用户的个人资料和头像的教程
2015/04/20 Python
Python中Iterator迭代器的使用杂谈
2016/06/20 Python
python 获取网页编码方式实现代码
2017/03/11 Python
Python实现按中文排序的方法示例
2018/04/25 Python
python数字图像处理之骨架提取与分水岭算法
2018/04/27 Python
解决Python安装后pip不能用的问题
2018/06/12 Python
快速解决pyqt5窗体关闭后子线程不同时退出的问题
2019/06/19 Python
用vue.js组件模拟v-model指令实例方法
2019/07/05 Python
用Python制作音乐海报
2021/01/26 Python
雅诗兰黛旗下走天然植物路线的彩妆品牌:Prescriptives
2016/08/14 全球购物
KIKO MILANO西班牙官网:意大利领先的化妆品和护肤品品牌
2019/05/03 全球购物
师范应届生语文教师求职信
2013/10/29 职场文书
中国梦的演讲稿
2014/01/08 职场文书
情况说明书格式范文
2014/05/06 职场文书
机关作风整顿个人剖析材料
2014/10/06 职场文书
2015年团支书工作总结
2015/04/03 职场文书
2015年国庆节广播稿
2015/08/19 职场文书
eval(cmd)与eval($cmd)的区别与联系
2021/07/07 PHP
sql查询语句之平均分、最高最低分及排序语句
2022/05/30 MySQL