Python matplotlib修改默认字体的操作


Posted in Python onMarch 05, 2020

matplotlib库作为Python常用的数据可视化库,默认字体居然不支持中文字体,必须得吐槽一下~

闲言少叙,开始正文

方法1:在plot中指定prop参数

使用matplotlib.font_manager下的FontProperties加载中文字体

调用函数时通过prop属性指定中文字体

import matplotlib.pyplot as plt
import matplotlib.font_manager as fm
x_data = ['2011', '2012', '2013', '2014', '2015', '2016', '2017']
# 定义2个列表分别作为两条折线的Y轴数据
y_data = [58000, 60200, 63000, 71000, 84000, 90500, 107000]
y_data2 = [52000, 54200, 51500,58300, 56800, 59500, 62700]
# 指定折线的颜色、宽度、线形
ln1, = plt.plot(x_data, y_data, color='red', linewidth=2.0,
        linestyle='--', label='A书年销量')
ln2, = plt.plot(x_data, y_data2, color='blue', linewidth=2.0,
        linestyle='-.', label='B书年销量')
# 使用my_font存出一个加载的中文字体
my_font = fm.FontProperties(fname='C:\Windows\Fonts\YaHei.Consolas.1.12.ttf')
# 赊着prop参数未该字体
plt.legend(loc='best', prop=my_font)
plt.show()
var foo = 'bar';

方法2:修改matplotlib默认字体

1、使用交互行获取matplotlib配置文件的保存位置

>>>import matplotlib
>>>matplotlib.matplotlib_fname()
'G:\\Anaconda3\\envs\\PyProjects\\lib\\site-packages\\matplotlib\\mpl-data\\matplotlibrc'

2、打开文件,找到如下行

# font.family : sans-serif

3、修改字体为系统中能够加载中文的字体(这里我用的是SimHei,即黑体)

font.family : SimHei

当然用Yahei Consolas Hybrid也是可以的(需要自己安装),但是Microsoft Yahei和msyh都试过了,会报错,具体原因有待考证~

补充知识:修改 matplotlib 的默认配置添加雅黑字体

根据anaconda安装路径找到配置文件

E:\software\anaconda3\Lib\site-packages\matplotlib\mpl-data\matplotlibrc

打开, 找到 font.sans-serif 删掉注释,添加即可

Python matplotlib修改默认字体的操作

重新启动 jupyter notebook即可

在新开启的文件中输入,就可以正常显示汉字

import matplotlib as mpl
mpl.rcParams['font.serif'] = ['SimHei']

以上这篇Python matplotlib修改默认字体的操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python命令行解析模块详解
Feb 01 Python
python爬虫基本知识
Mar 05 Python
PyTorch上实现卷积神经网络CNN的方法
Apr 28 Python
pip install urllib2不能安装的解决方法
Jun 12 Python
python字符串常用方法
Jun 14 Python
pycharm 在windows上编辑代码用linux执行配置的方法
Oct 27 Python
使用python制作一个解压缩软件
Nov 13 Python
PyCharm使用Docker镜像搭建Python开发环境
Dec 26 Python
pytorch使用 to 进行类型转换方式
Jan 08 Python
pytorch-神经网络拟合曲线实例
Jan 15 Python
Django重设Admin密码过程解析
Feb 10 Python
Visual Studio Code搭建django项目的方法步骤
Sep 17 Python
Django 返回json数据的实现示例
Mar 05 #Python
python利用opencv实现SIFT特征提取与匹配
Mar 05 #Python
python画图常规设置方式
Mar 05 #Python
解决python -m pip install --upgrade pip 升级不成功问题
Mar 05 #Python
python入门之井字棋小游戏
Mar 05 #Python
解决Python图形界面中设置尺寸的问题
Mar 05 #Python
python实现简单井字棋小游戏
Mar 05 #Python
You might like
php压缩和解压缩字符串的方法
2015/03/14 PHP
列举PHP的Yii 2框架的开发优势
2015/07/03 PHP
PHP+Mysql+jQuery中国地图区域数据统计实例讲解
2015/10/10 PHP
php+MySql实现登录系统与输出浏览者信息功能
2016/07/01 PHP
PHP7新特性
2021/03/09 PHP
jQuery 对Select的操作备忘记录
2011/07/04 Javascript
javascript贪吃蛇完整版(源码)
2013/12/09 Javascript
网页下载文件期间如何防止用户对网页进行其他操作
2014/06/27 Javascript
用javascript关闭本窗口技巧小结
2014/09/05 Javascript
浅谈JavaScript function函数种类
2014/12/29 Javascript
jQuery入门之层次选择器实例简析
2015/12/11 Javascript
jQuery遍历json的方法(推荐)
2016/06/12 Javascript
第一次接触神奇的Bootstrap导航条
2016/08/09 Javascript
jQuery图片切换动画效果
2017/02/28 Javascript
微信小程序云开发之数据库操作
2019/05/18 Javascript
layui数据表格跨行自动合并的例子
2019/09/02 Javascript
如何在 Vue 表单中处理图片
2021/01/26 Vue.js
学习python (1)
2006/10/31 Python
Python3实现转换Image图片格式
2018/06/21 Python
对TensorFlow的assign赋值用法详解
2018/07/30 Python
程序员写Python时的5个坏习惯,你有几条?
2018/11/26 Python
matplotlib命令与格式之tick坐标轴日期格式(设置日期主副刻度)
2019/08/06 Python
Python按照list dict key进行排序过程解析
2020/04/04 Python
详解Python高阶函数
2020/08/15 Python
CSS3等相关属性制作分页导航实现代码
2012/12/24 HTML / CSS
澳大利亚在线生活方式商店:Mytopia
2018/07/08 全球购物
法国在线药房:Shop Pharmacie
2019/11/26 全球购物
消防安全责任书
2014/04/14 职场文书
学习党的群众路线实践活动思想汇报
2014/09/12 职场文书
大三学年自我鉴定范文(3篇)
2014/09/28 职场文书
2014年实习班主任工作总结
2014/11/08 职场文书
幼儿园老师个人总结
2015/02/28 职场文书
农村婚礼司仪主持词
2015/06/29 职场文书
2016年员工政治思想表现评语
2015/12/02 职场文书
感恩信:写给爸爸妈妈的一封感谢信
2019/09/12 职场文书
php字符串倒叙
2021/04/01 PHP