如何获取Matplotlib默认颜色循环器的颜色列表?
获取Matplotlib颜色循环列表的方法
要拿到和Matplotlib隐式颜色循环完全一致的colorList,有两种直接有效的方法:
方法1:从当前坐标轴提取
直接获取当前绘图轴的颜色循环器中的颜色列表:
import matplotlib.pyplot as plt # 获取与隐式循环匹配的颜色列表 colorList = plt.gca().prop_cycle.by_key()['color'] # 显式分配颜色,效果和隐式循环完全相同 for i, c in enumerate(colorList): plt.scatter(i, i, color=c) plt.show()
方法2:从全局配置读取
如果不想依赖已创建的坐标轴,可直接读取全局风格配置里的颜色循环:
import matplotlib.pyplot as plt colorList = plt.rcParams['axes.prop_cycle'].by_key()['color'] for i, c in enumerate(colorList): plt.scatter(i, i, color=c) plt.show()
两种方式得到的colorList完全匹配Matplotlib当前使用的颜色循环规则,显式分配后绘制的图形颜色,和不指定color参数的隐式循环效果完全一致。
内容的提问来源于stack exchange,提问作者Paul Jurczak
相关产品推荐
相关产品推荐

