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实现详解
Dec 15 Python
python 接收处理外带的参数方法
Dec 03 Python
Python面向对象程序设计之私有属性及私有方法示例
Apr 08 Python
Python实现的删除重复文件或图片功能示例【去重】
Apr 23 Python
PyQt 实现使窗口中的元素跟随窗口大小的变化而变化
Jun 18 Python
Python3 无重复字符的最长子串的实现
Oct 08 Python
python matplotlib 画dataframe的时间序列图实例
Nov 20 Python
django日志默认打印request请求信息的方法示例
May 17 Python
pycharm激活码2020最新分享适用pycharm2020最新版亲测可用
Nov 22 Python
python 实时调取摄像头的示例代码
Nov 25 Python
只需要这一行代码就能让python计算速度提高十倍
May 24 Python
python调用ffmpeg命令行工具便捷操作视频示例实现过程
Nov 01 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
【动漫杂谈】关于《请在T台上微笑》
2020/03/03 日漫
PHP中10个不常见却非常有用的函数
2010/03/21 PHP
php接口与接口引用的深入解析
2013/08/09 PHP
jMessageBox 基于jQuery的窗口插件
2009/12/09 Javascript
Jquery显示、隐藏元素以及添加删除样式
2013/08/09 Javascript
Js点击弹出下拉菜单效果实例
2013/08/12 Javascript
jquery.cookie() 方法的使用(读取、写入、删除)
2013/12/05 Javascript
JavaScript实现网页截图功能
2014/10/16 Javascript
node.js操作mongoDB数据库示例分享
2014/11/26 Javascript
如何利用JS通过身份证号获取当事人的生日、年龄、性别
2016/01/22 Javascript
关于在vue-cli中使用微信自动登录和分享的实例
2017/06/22 Javascript
JS中Swiper的使用和轮播图效果
2017/08/11 Javascript
Vue的MVVM实现方法
2017/08/16 Javascript
Angularjs过滤器实现动态搜索与排序功能示例
2017/12/13 Javascript
原生JS控制多个滚动条同步跟随滚动效果
2017/12/22 Javascript
深入理解 webpack 文件打包机制(小结)
2018/01/08 Javascript
vue双向绑定及观察者模式详解
2019/03/19 Javascript
[00:36]DOTA2风云人物相约完美“圣”典 12月17日不见不散
2016/11/30 DOTA
PyMongo安装使用笔记
2015/04/27 Python
Python求出0~100以内的所有素数
2018/01/23 Python
python删除字符串中指定字符的方法
2018/08/13 Python
pytorch实现从本地加载 .pth 格式模型
2020/02/14 Python
keras 读取多标签图像数据方式
2020/06/12 Python
python 基于卡方值分箱算法的实现示例
2020/07/17 Python
解决使用Pandas 读取超过65536行的Excel文件问题
2020/11/10 Python
有原因的手表:Flex Watches
2019/03/23 全球购物
Kathmandu新西兰官网:新西兰户外运动品牌
2019/07/27 全球购物
日本订房网站,预订日本星级酒店/温泉旅馆:Relux(支持中文)
2020/01/03 全球购物
Linux中如何用命令创建目录
2016/12/02 面试题
生产内勤岗位职责
2013/12/07 职场文书
大家访活动实施方案
2014/03/10 职场文书
年度考核个人总结
2015/03/06 职场文书
劳动者解除劳动合同通知书
2015/04/16 职场文书
拿破仑传读书笔记
2015/07/01 职场文书
Go语言grpc和protobuf
2022/04/13 Golang
python中 Flask Web 表单的使用方法
2022/05/20 Python