matplotlib运行时配置(Runtime Configuration,rc)参数rcParams解析


Posted in Python onJanuary 05, 2021

什么是运行时配置(Runtime Configuration,rc)

Matplotlib使用matplotlibrc配置文件来自定义图形的各种属性,称之为rc配置或rc参数(rcParams)。通过rc参数可以修改matplotlib绝大多数属性的默认值,包括窗体大小、每英寸的点数、线条宽度、颜色、样式、坐标轴、坐标和网络属性、文本、字体等。

运行时配置的默认值

运行时配置的默认值存放在默认的matplotlibrc文件中。

matplotlibrc文件与rcParams的关系

rcParams是RcParams类的实例,结构类似于字典,用于处理matplotlib的默认运行时配置,它是matplotlib模块的全局变量。当导入matplotlib模块时,matplotlibrc文件中的所有rc 参数存储在matplotlib.rcParams中。

源码如下:

rcParamsDefault = _rc_params_in_file(
  cbook._get_data_path("matplotlibrc"),
  # Strip leading comment.
  transform=lambda line: line[1:] if line.startswith("#") else line,
  fail_on_error=True)
dict.update(rcParamsDefault, rcsetup._hardcoded_defaults)
rcParams = RcParams() # The global instance.
dict.update(rcParams, dict.items(rcParamsDefault))
dict.update(rcParams, _rc_params_in_file(matplotlib_fname()))

修改运行时配置参数的方法

通过rc文件:修改默认 matplotlibrc文件或者指定自定义rc文件。

修改默认 matplotlibrc文件。

指定自定义的rc文件。

matplotlib.rc_file(fname, *, use_default_template=True)

通过rcParams对象:直接修改rcParams对象。这种方法比较灵活,修改的方法有以下三种:

  • matplotlib.rc(group, **kwargs)
  • rcParams[group.params]
  • rcParams.update()

第一、二种方法是等价的,第三种方法不支持缩写和分组。

#第一种方法1
  rc('lines', linewidth=2, color='r')
  #第一种方法2
  font = {'linewidth' : 2,
    'color'  : 'r'}
  rc('lines', **font) 
  #第二种方法
  rcParams['lines.linewidth'] = 2
  rcParams['lines.color'] = 'r'
  #第三种方法
  rcParams.update({"lines.linewidth": 2,'lines.color': 'r'})

还原修改运行时配置默认值的方法

  • matplotlib.rcdefaults():根据matplotlib内置的默认样式还原rcParams对象。
  • matplotlib.rc_file_defaults():根据matplotlib加载的rc文件的源文件还原rcParams对象。
  • matplotlib.style.use(default):加载默认样式。

到此这篇关于matplotlib运行时配置(Runtime Configuration,rc)参数rcParams解析的文章就介绍到这了,更多相关matplotlib配置rcParams内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python文件比较示例分享
Jan 10 Python
浅析Python中的序列化存储的方法
Apr 28 Python
python操作redis的方法
Jul 07 Python
python XlsxWriter模块创建aexcel表格的实例讲解
May 03 Python
Python3的介绍、安装和命令行的认识(推荐)
Oct 20 Python
Python实现TCP探测目标服务路由轨迹的原理与方法详解
Sep 04 Python
python scipy卷积运算的实现方法
Sep 16 Python
解决tensorflow添加ptb库的问题
Feb 10 Python
jupyter notebook的安装与使用详解
May 18 Python
如何在scrapy中捕获并处理各种异常
Sep 28 Python
Django数据库迁移常见使用方法
Nov 12 Python
7个关于Python的经典基础案例
Nov 07 Python
matplotlib制作雷达图报错ValueError的实现
Jan 05 #Python
python实现三种随机请求头方式
Jan 05 #Python
scrapy实践之翻页爬取的实现
Jan 05 #Python
python里glob模块知识点总结
Jan 05 #Python
python用opencv 图像傅里叶变换
Jan 04 #Python
python基于opencv 实现图像时钟
Jan 04 #Python
python基于opencv实现人脸识别
Jan 04 #Python
You might like
smarty静态实验表明,网络上是错的~呵呵
2006/11/25 PHP
15种PHP Encoder的比较
2007/04/17 PHP
使用 MySQL Date/Time 类型
2008/03/26 PHP
一个PHP分页类的代码
2011/05/18 PHP
php学习笔记之基础知识
2014/11/08 PHP
php网页版聊天软件实现代码
2016/08/12 PHP
php性能分析之php-fpm慢执行日志slow log用法浅析
2016/10/17 PHP
PHP有序表查找之插值查找算法示例
2018/02/10 PHP
jQuery之ajax技术的详细介绍
2013/06/19 Javascript
今天是星期几的4种JS代码写法
2013/09/17 Javascript
js身份证判断方法支持15位和18位
2014/03/18 Javascript
js实现页面跳转重定向的几种方式
2014/05/29 Javascript
详解Javascript 装载和执行
2014/11/17 Javascript
jQuery+html5+css3实现圆角无刷新表单带输入验证功能代码
2015/08/21 Javascript
Sublime Text 3常用插件及安装方法
2015/12/16 Javascript
JS产生随机数的几个用法详解
2016/06/22 Javascript
解决拦截器对ajax请求的拦截实例详解
2016/12/21 Javascript
JS 调用微信扫一扫功能
2016/12/22 Javascript
使用Vue.observable()进行状态管理的实例代码详解
2019/05/26 Javascript
json数据格式常见操作示例
2019/06/13 Javascript
Cordova(ionic)项目实现双击返回键退出应用
2019/09/17 Javascript
javascript(基于jQuery)实现鼠标获取选中的文字示例【测试可用】
2019/10/26 jQuery
python 多线程应用介绍
2012/12/19 Python
Python操作Access数据库基本步骤分析
2016/09/19 Python
详解MySQL数据类型int(M)中M的含义
2016/11/20 Python
Python实现的查询mysql数据库并通过邮件发送信息功能
2018/05/17 Python
python rsa实现数据加密和解密、签名加密和验签功能
2019/09/18 Python
快速解决jupyter启动卡死的问题
2020/04/10 Python
浅谈Python 命令行参数argparse写入图片路径操作
2020/07/12 Python
3种方式实现瀑布流布局小结
2019/09/05 HTML / CSS
电气技术员岗位职责
2013/11/19 职场文书
信息管理员岗位职责
2013/12/01 职场文书
电话客服专员岗位职责
2014/06/28 职场文书
12.4法制宣传日活动总结
2014/08/26 职场文书
八项规定整改方案
2014/10/01 职场文书
python某漫画app逆向
2021/03/31 Python