Python Matplotlib 中文显示参数设置
最近在学习python著名的绘图包matplotlib时发现,有时候图例等设置无法正常显示中文,于是就想把这个问题解决了。
PS:本文仅针对Windows,其他平台仅供参考。
原因
大致就是matplotlib库中没有中文字体。1
我安装的anaconda,这是对应的matplotlib的字体所在文件夹(怎么找到matplotlib配置文件夹所在,下面解决方案会叙述,easy man~)。
C:\Anaconda64\Lib\site-packages\matplotlib\mpl-data\fonts\ttf
解决方案
现在整理一下我认为比较好的解决方案:
- 每次编写代码时进行参数设置
#coding:utf-8
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签
plt.rcParams['axes.unicode_minus']=False #用来正常显示负号
#有中文出现的情况,需要u'内容'
- 一劳永逸(推荐)
import matplotlib
matplotlib.matplotlib_fname() #将会获得matplotlib包所在文件夹
然后进入C:\Anaconda64\Lib\site-packages\matplotlib\mpl-data
该文件夹下就能看到matplotlibrc配置文件。[^2]
[^2]:官网-Customizing matplotlib
1)打开该配置文件,找到下面这行:
#font.serif : Bitstream Vera Serif, New Century Schoolbook, Century Schoolbook L, Utopia, ITC Bookman, Bookman, Nimbus Roman No9 L, Times New Roman, Times, Palatino, Charter, serif
然后,将前面的注释去掉!
2)找中文字体放到matplotlib字体库中。
在Windows文件夹下:C:\Windows\Fonts\Microsoft YaHei UI
复制该字体,然后粘贴到C:\Anaconda64\Lib\site-packages\matplotlib\mpl-data\fonts\ttf
文件夹,并给它重命名为Vera.ttf
。
注明:这一步的作用其实就是将matplotlib中一个默认的字体替换为我们复制过来的中文字体,将这个中文字体命名改为matplotlib中有的字体名。
其实,还有其他方案23,但是貌似在我这儿没成功。
补充
坐标轴的负号正常显示4:
#去掉了注释符号,同时,改为False
axes.unicode_minus : False
举例
#coding:utf-8
import matplotlib.pyplot as plt
plt.plot((1,2,3),(4,3,-1))
plt.xlabel(u'横坐标')
plt.ylabel(u'纵坐标')
plt.show()
matplotlib 中文乱码解决↩
解决matplotlib中文乱码问题(Windows)↩
python画图包seaborn和matplotlib中文字体显示↩
如何在matplotlib里显示中文↩
转载于:https://www.cnblogs.com/michael-xiang/p/10466789.html
Python Matplotlib 中文显示参数设置相关推荐
- matplotlib中文显示以及设置图片大小
1.找到字体路径 mac字体的路径一般都是在:/System/Library/Fonts 下 如果不放心可在:访达>字体册>简体中文>在访达中显示>显示简介>位置,在将字 ...
- Python matplotlib中文显示异常,导入simhei字体有误
查找matplotlib字体安装路径 import matplotlib print(matplotlib.matplotlib_fname()) 下载simhei.tff字体 下载'SimHei' ...
- linux的matplotlib中文异常,Linux中matplotlib 中文显示问题解决
1.下载下载中文 arial unicode ms 字体到 /home 目录 2. 拷贝字体到 usr/share/fonts 下: sudo cp ~/arial\ unicode\ ms.ttf ...
- Python matplotlib 画图 显示中文 中文乱码 无法显示负号
Python matplotlib 画图 显示中文 中文乱码 无法显示负号 import matplotlib.pyplot as pltplt.rcParams["font.sans-se ...
- Mac字体路径,解决matplotlib中文显示问题,超级好用~
不需要用fc-list,找到字体路径,解决matplotlib中文显示问题. 1.找到字体路径 mac字体的路径一般都是在:/System/Library/Fonts 下 如果不放心可在:访达> ...
- 01_Linux系统系统语言查询,设置Xshell工具,中文显示,测试Xshell中文字符显示,Linux中文显示乱码设置
Xshell是一个强大的安全终端模拟软件,它支持SSH1,SSH2,以及Microsoft Windows平台的TELNETNetSarang Xshell 4 Build 0 ...
- 如何解决python 图表中文显示乱码问题(matlplotlib 包)
如何解决python 图表中文显示乱码问题(matlplotlib 包) 参考文章: (1)如何解决python 图表中文显示乱码问题(matlplotlib 包) (2)https://www.cn ...
- 解决linux服务器上matplotlib中文显示乱码问题
解决linux服务器上matplotlib中文显示乱码问题 参考文章: (1)解决linux服务器上matplotlib中文显示乱码问题 (2)https://www.cnblogs.com/Bell ...
- 解决matplotlib中文显示问题
解决matplotlib中文显示问题 参考文章: (1)解决matplotlib中文显示问题 (2)https://www.cnblogs.com/weiweiwei233/p/9307619.htm ...
最新文章
- 【单片机】以输出方波为例的 定时器使用
- Centos 编译安装sphinx-0.9.9全文检索
- Carring data across redirect requests
- 吴恩达 coursera ML 第二课总结+作业答案
- 64位linux安装mysql数据库吗_CentOS7 64位安装mysql教程
- c语言 段位,C语言 段位
- 网上讨论“电商平台打败了实体店”?
- UIFont 字体设置
- linux上的mysql数据库恢复
- pyc文件反编译到Python源码
- Selina 爱我的每个人
- 也许黎曼猜想是错误的
- python 在线客服_如何利用Python实现简单全双工在线客服系统!这个有点东西!...
- 致远OA自定义函数--正则表达式匹配校验
- Python 毕设精品实战案例——快速索引目录
- 用adblock来屏蔽百度热搜
- 国盛源投资量化买卖一定会挣钱吗?量化买卖怎样挣钱的?
- (跨平台UI)单片机用MTF HMI串口屏 UART通信易用兼容
- 游戏平台对接哪种支付公司好(选择标准介绍)
- 后处理-SAO原理分析及代码实现