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魔术方法详解
Feb 14 Python
Python利用多进程将大量数据放入有限内存的教程
Apr 01 Python
对python .txt文件读取及数据处理方法总结
Apr 23 Python
Python判断一个三位数是否为水仙花数的示例
Nov 13 Python
使用 Django Highcharts 实现数据可视化过程解析
Jul 31 Python
python字符串格式化方式解析
Oct 19 Python
Python3.7 基于 pycryptodome 的AES加密解密、RSA加密解密、加签验签
Dec 04 Python
谈一谈数组拼接tf.concat()和np.concatenate()的区别
Feb 07 Python
python Plotly绘图工具的简单使用
Mar 03 Python
Python中实现输入一个整数的案例
May 03 Python
python 线程的五个状态
Sep 22 Python
Python基础之hashlib模块详解
May 06 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
JS查看对象功能代码
2008/04/25 Javascript
浅析javascript中function 的 length 属性
2014/05/27 Javascript
JavaScript数组去重的两种方法推荐
2016/04/05 Javascript
基于jquery实现智能表单验证操作
2016/05/09 Javascript
js上传图片预览的实现方法
2017/05/09 Javascript
JavaScript箭头(arrow)函数详解
2017/06/04 Javascript
获取本机IP地址的实例(JavaScript / Node.js)
2017/11/24 Javascript
浅谈AngularJS中$http服务的简单用法
2018/05/15 Javascript
Vue.js 2.x之组件的定义和注册图文详解
2018/06/19 Javascript
vue的.vue文件是怎么run起来的(vue-loader)
2018/12/10 Javascript
js 实现 list转换成tree的方法示例(数组到树)
2019/08/18 Javascript
深入探索VueJS Scoped CSS 实现原理
2019/09/23 Javascript
详解elementUI中input框无法输入的问题
2020/04/27 Javascript
jQuery实现开关灯效果
2020/08/02 jQuery
Flask-Mail用法实例分析
2018/07/21 Python
Python3.4学习笔记之类型判断,异常处理,终止程序操作小结
2019/03/01 Python
Python3调用百度AI识别图片中的文字功能示例【测试可用】
2019/03/13 Python
python3 字符串/列表/元组(str/list/tuple)相互转换方法及join()函数的使用
2019/04/03 Python
信号生成及DFT的python实现方式
2020/02/25 Python
python动态规划算法实例详解
2020/11/22 Python
详解background属性的8个属性值(面试题)
2020/11/02 HTML / CSS
ALDO英国官网:加拿大女鞋品牌
2018/02/19 全球购物
教育局长自荐信范文
2013/12/22 职场文书
社区庆八一活动方案
2014/02/02 职场文书
六月份红领巾广播稿
2014/02/03 职场文书
法制报告会主持词
2014/04/02 职场文书
爱国主义演讲稿
2014/05/07 职场文书
优秀中职教师事迹材料
2014/08/26 职场文书
新闻人物通讯稿
2014/10/09 职场文书
幼儿园中班教师个人工作总结
2015/02/06 职场文书
2015年办公室人员工作总结
2015/05/15 职场文书
Mysql - 常用函数 每天积极向上
2021/04/05 MySQL
Python爬虫实战之爬取京东商品数据并实实现数据可视化
2021/06/07 Python
小程序实现悬浮按钮的全过程记录
2021/10/16 HTML / CSS
浅谈MySql整型索引和字符串索引失效或隐式转换问题
2021/11/20 MySQL
Java处理延时任务的常用几种解决方案
2022/06/01 Java/Android