Matplotlib Intermediate Styling with cycler

2023-11-08

Styling with cycler

自定义属性循环设置的演示以控制多个 line 的图的颜色和其他样式属性.
这个例子演示了两种不同的 API

  1. 设置 rc 参数 指定默认属性循环. 这会影响所有随后的 axes (不会影响已经创建的 axes).
  2. 为一对 axes 设置属性循环.
    [cycle 基本用法](Composable cycles — cycler 0.11.0 documentation (matplotlib.org))

用 plt.rc() 设置默认属性循环

x = np.linspace(0, 2 * np.pi, 50)
offsets = np.linspace(0, 2 * np.pi, 4, endpoint=False)
yy = np.transpose([np.sin(x + phi) for phi in offsets])
default_cycler = (cycler(color=['r', 'g', 'b', 'y']) +
                  cycler(linestyle=['-', '--', ':', '-.']))

plt.rc('lines', linewidth=4)
plt.rc('axes', prop_cycle=default_cycler)

用 Axes.set_prop_cycle() 设置只针对该 Axes 实例的属性循环.

custom_cycler = (cycler(color=['c', 'm', 'y', 'k']) +
                 cycler(lw=[1, 2, 3, 4]))

fig, (ax0, ax1) = plt.subplots(nrows=2)
ax0.plot(yy)
ax0.set_title('Set default color cycle to rgby')
ax1.set_prop_cycle(custom_cycler)
ax1.plot(yy)
ax1.set_title('Set axes color cycle to cmyk')

# Add a bit more space between the two plots.
fig.subplots_adjust(hspace=0.3)
plt.show()

如果使用了 plt.subplots(nrows=2) 来创建一个行数为 2 的子图网格,那么该网格的行数就已经固定了,无法在后续更改。如果需要更改行数,可以重新创建一个新的网格,或者将原有的网格调整为合适的行数。

Cycling through multiple properties

cycler 相加

from cycler import cycler
cc = (cycler(color=list('rgb')) +
      cycler(linestyle=['-', '--', '-.']))
for d in cc:
    print(d)
'''
{'color': 'r', 'linestyle': '-'}
{'color': 'g', 'linestyle': '--'}
{'color': 'b', 'linestyle': '-.'}
'''

cycler 相乘

from cycler import cycler
cc = (cycler(color=list('rgb')) *
      cycler(linestyle=['-', '--', '-.']))
for d in cc:
    print(d)
'''
{'color': 'r', 'linestyle': '-'}
{'color': 'r', 'linestyle': '--'}
{'color': 'r', 'linestyle': '-.'}
{'color': 'g', 'linestyle': '-'}
{'color': 'g', 'linestyle': '--'}
{'color': 'g', 'linestyle': '-.'}
{'color': 'b', 'linestyle': '-'}
{'color': 'b', 'linestyle': '--'}
{'color': 'b', 'linestyle': '-.'}
'''
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Matplotlib Intermediate Styling with cycler 的相关文章

  • OpenCV Python cv2.mixChannels()

    我试图将其从 C 转换为 Python 但它给出了不同的色调结果 In C Transform it to HSV cvtColor src hsv CV BGR2HSV Use only the Hue value hue create
  • 如何在flask中使用g.user全局

    据我了解 Flask 中的 g 变量 它应该为我提供一个全局位置来存储数据 例如登录后保存当前用户 它是否正确 我希望我的导航在登录后在整个网站上显示我的用户名 我的观点包含 from Flask import g among other
  • Python(Selenium):如何通过登录重定向/组织登录登录网站

    我不是专业程序员 所以请原谅任何愚蠢的错误 我正在做一些研究 我正在尝试使用 Selenium 登录数据库来搜索大约 1000 个术语 我有两个问题 1 重定向到组织登录页面后如何使用 Selenium 登录 2 如何检索数据库 在我解决
  • 使用 matplotlib 绘制时间序列数据并仅在年初显示年份

    rcParams date autoformatter month b n Y 我正在使用 matpltolib 来绘制时间序列 如果我按上述方式设置 rcParams 则生成的图会在每个刻度处标记月份名称和年份 我怎样才能将其设置为仅在每
  • 从字符串中删除识别的日期

    作为输入 我有几个包含不同格式日期的字符串 例如 彼得在16 45 我的生日是1990年7月8日 On 7 月 11 日星期六我会回家 I use dateutil parser parse识别字符串中的日期 在下一步中 我想从字符串中删除
  • 使用 on_bad_lines 将 pandas.read_csv 中的无效行写入文件

    我有一个 CSV 文件 我正在使用 Python 来解析该文件 我发现文件中的某些行具有不同的列数 001 Snow Jon 19801201 002 Crom Jake 19920103 003 Wise Frank 19880303 l
  • 根据列值突出显示数据框中的行?

    假设我有这样的数据框 col1 col2 col3 col4 0 A A 1 pass 2 1 A A 2 pass 4 2 A A 1 fail 4 3 A A 1 fail 5 4 A A 1 pass 3 5 A A 2 fail 2
  • 是否可以忽略一行的pyright检查?

    我需要忽略一行的pyright 检查 有什么特别的评论吗 def create slog group SLogGroup data Optional dict None SLog insert one SLog group group da
  • 基于代理的模拟:性能问题:Python vs NetLogo & Repast

    我正在 Python 3 中复制一小段 Sugarscape 代理模拟模型 我发现我的代码的性能比 NetLogo 慢约 3 倍 这可能是我的代码的问题 还是Python的固有限制 显然 这只是代码的一个片段 但 Python 却花费了三分
  • OpenCV 无法从 MacBook Pro iSight 捕获

    几天后 我无法再从 opencv 应用程序内部打开我的 iSight 相机 cap cv2 VideoCapture 0 返回 并且cap isOpened 回报true 然而 cap grab 刚刚返回false 有任何想法吗 示例代码
  • 如何加速Python中的N维区间树?

    考虑以下问题 给定一组n间隔和一组m浮点数 对于每个浮点数 确定包含该浮点数的区间子集 这个问题已经通过构建一个解决区间树 https en wikipedia org wiki Interval tree 或称为范围树或线段树 已经针对一
  • AWS EMR Spark Python 日志记录

    我正在 AWS EMR 上运行一个非常简单的 Spark 作业 但似乎无法从我的脚本中获取任何日志输出 我尝试过打印到 stderr from pyspark import SparkContext import sys if name m
  • 绘制方程

    我正在尝试创建一个函数 它将绘制我告诉它的任何公式 import numpy as np import matplotlib pyplot as plt def graph formula x range x np array x rang
  • 无法在 Python 3 中导入 cProfile

    我试图将 cProfile 模块导入 Python 3 3 0 但出现以下错误 Traceback most recent call last File
  • 在 MatPlotLib 中检索自定义破折号

    关于如何使用 matplotlib 线中设置自定义破折号有很多问题Line2D set linestyle and Line2D set dashes 但是 我似乎找不到在设置后检索破折号图案的方法 这是在主站点上设置破折号的示例 我将在下
  • 对年龄列进行分组/分类

    我有一个数据框说df有一个柱子 Ages gt gt gt df Age 0 22 1 38 2 26 3 35 4 35 5 1 6 54 我想对这个年龄段进行分组并创建一个像这样的新专栏 If age gt 0 age lt 2 the
  • 如何在 Python 中追加到 JSON 文件?

    我有一个 JSON 文件 其中包含 67790 1 kwh 319 4 现在我创建一个字典a dict我需要将其附加到 JSON 文件中 我尝试了这段代码 with open DATA FILENAME a as f json obj js
  • 绘制与Fig.show()内联的IPython Notebook图形?

    我正在使用 IPython Notebook 调用内联模式 pylab inline 以下代码立即在单元格处绘制一个图形 fig plt figure axes fig add axes 0 0 1 1 不过 我想在一个单元格中创建绘图 轴
  • 使用其构造函数初始化 OrderedDict 以便保留初始数据的顺序的正确方法?

    初始化有序字典 OD 以使其保留初始数据的顺序的正确方法是什么 from collections import OrderedDict Obviously wrong because regular dict loses order d O
  • 在 Qt 中自动调整标签文本大小 - 奇怪的行为

    在 Qt 中 我有一个复合小部件 它由排列在 QBoxLayouts 内的多个 QLabels 组成 当小部件调整大小时 我希望标签文本缩放以填充标签区域 并且我已经在 resizeEvent 中实现了文本大小的调整 这可行 但似乎发生了某

随机推荐

  • 数据库JDBC(Java DataBase Connectivity)-->三层架构

    可以使用JDBC完成数据库的访问 java程序不能直接访问到某个具体的数据库 这种强耦合的方式不符合开闭原则 JDBC都是接口 具体JDBC的实现由数据库厂商来实现 将来数据库发生变化 只需要更改驱动 模拟数据库连接 通过反射创建对象 加载
  • 在Linux平台的CUDA cublas矩阵乘具体实现及编译过程

    文章目录 环境变量配置 代码 编译过程 结果 环境变量配置 vim bashrc 最后一行添加cublas v2所在的目录 export CPLUS INCLUDE PATH CPLUS INCLUDE PATH usr local cud
  • 从ChatGPT看人工智能

    ChatGPT是2022年出来的一个对话型人工智能 ChatGPT就是这样一种可以和人类用自然语言去交流的人工智能 一上线就引发了恐慌 最厉害的地方还是它能够用人类的语言来进行交流 不管是中文 英文 日文都可以 ChatGPT有可能就是传说
  • nuxt项目中引入ant design vue的less文件报错.bezierEasingMixin()

    最近使用nuxt 2 14 0版本当中使用 ant desgin vue 这个UI框架进行定制主题 首先 在nuxt项目当中的assets文件夹当中创建less文件夹 在less文件夹下创建index less和variable less文
  • 怎样在webpack中使用 art-template 模板引擎, art-template详解

    1 简介 art template是一个简约 执行速度超快的模板引擎 它采用作用域声明的技术来优化模板渲染速度 从而获得接近 Javascript 极限的运行性能 并且同时支持 NodeJs和浏览器 使用art template 便于代码的
  • linux cpu 内存爆满 mysql停止_每个程序员都应该知道的 CPU 知识:NUMA

    什么是 NUMA 早期的计算机 内存控制器还没有整合进 CPU 所有的内存访问都需要经过北桥芯片来完成 如下图所示 CPU 通过前端总线 FSB Front Side Bus 连接到北桥芯片 然后北桥芯片连接到内存 内存控制器集成在北桥芯片
  • 基于机器学习的油田产油量产量预测 AdaBoost、xgboost、lightgbm 完整代码数据 可直接运行

    项目讲解 基于机器学习 knn 逻辑回归 决策树 集成学习 adaboost梯度提升树 SVC xgboost的工业产量预测数据分析可视化 哔哩哔哩 bilibili 基于机器学习XGB svm LGBM knn的 from sklearn
  • Profiling Top Kagglers: Bestfitting, Currently #1 in the World

    We have a new 1 on our leaderboard a competitor who surprisingly joined the platform just two years ago Shubin Dai bette
  • 研究下DFD

    数据流图 简称DFD 是SA方法中用于表示系统逻辑模型的一种工具 它以图形的方式描绘数据在系统中流动和处理的过程 由于它只反映系统必须完成的逻辑功能 所以它是一种功能模型 下图是一个飞机机票预订系统的数据流图 它反映的功能是 旅行社把预订机
  • JAVA学习------打印多种星星矩阵

    打印一个10 10的星星矩阵 package step1 public class ForPractice1 public static void test start for int i 1 i lt 10 i for int j 1 j
  • [网络安全提高篇] 一一六.恶意代码同源分析及BinDiff软件基础用法

    网络安全提高班 新的100篇文章即将开启 包括Web渗透 内网渗透 靶场搭建 CVE复现 攻击溯源 实战及CTF总结 它将更加聚焦 更加深入 也是作者的慢慢成长史 换专业确实挺难的 Web渗透也是块硬骨头 但我也试试 看看自己未来四年究竟能
  • warning: remember to run ‘libtool --finish /usr/local/1/php-7.4.29/libs

    ubuntu上php7 4 33编译安装完成后警告报错 如下所示 usr local apache2 apr build 1 libtool finish usr local soft php 7 4 33 libs vim etc ld
  • C++:打印大写字母对应的ASCII码

    题目描述 输出26个大写字母对应的ASCII码 每输出 个ASCII码换一行再输出下一行 输入 输出 输出 个十进制整数 即对应大写字母的ASCII码 输出格式见样例 样例输入 Copy 样例输出 Copy 65 66 67 68 69 7
  • Docker学习进阶篇

    学自狂神 视频地址 https www bilibili com video BV1kv411q7Qc share source copy web 目标 掌握 docker基础 原理 网络 服务 集群 错误排查 日志 linux docke
  • java处理时间字符串2021-08-04T16:00:00.000Z

    背景 业务中收到了字符串2021 08 04T16 00 00 000Z 也有可能是2021 08 05 或者2021 08 05 12 00 00由于不确定性 需要手动转换时间 直接上代码 public static String int
  • 在webpack中使用monaco-editor

    目录 前言 使用 自己总结的使用过程 1 安装 2 在页面中使用 3 开启辅助功能 4 如何设置菜单中文显示效果 5 编辑器功能 6 monaco editor使用到的JS文件如何压缩 2020年4月28日11 49 58 前言 我查过网上
  • ROS中多个工作空间同时工作

    ROS开发中 有时需要建多个工作空间 将不同的功能包区别开来 但是 多个工作空间会存在相互影响的情况 如何让它们能同时工作且相互不影响 需要技巧 这里需要清楚ROS工作空间的工作原理 本文做个详细介绍 1 ROS PACKAGE PATH环
  • 汽配企业如何把MES管理系统的价值利用到最大化

    随着信息技术的快速发展 越来越多的汽配企业开始引入MES生产管理系统 以提高生产效率 优化资源利用和提升产品质量 然而 要想实现MES系统的最大化价值 汽配企业需要从以下几个方面入手 首先 汽配企业应该充分了解MES系统的功能和特点 并根据
  • git笔记

    git笔记 第一次使用配置 git config global user email you example com git config global user name Your Name 生成ssh key ssh keygen t
  • Matplotlib Intermediate Styling with cycler

    Styling with cycler 自定义属性循环设置的演示以控制多个 line 的图的颜色和其他样式属性 这个例子演示了两种不同的 API 设置 rc 参数 指定默认属性循环 这会影响所有随后的 axes 不会影响已经创建的 axes