- 积分
- 3638
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2014-10-21
- 最后登录
- 1970-1-1
|
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
1、需求缘起
我们画图的时候,经常要画【多折线图】:
Excel会自动为每条折线配色,
如果用matplotlib来画:plt.plot(a,b);plt.plot(c,d);plt.plot(e,f),你不设置颜色,也会自动配色的。
但很多时候,我们希望自己控制配色,而且颜色区分度越大越好。
2、一个失败想法
一开始,我想从matplotlib内置的色条中提取颜色,
比如,我有7条折线,那就等间隔地在色条上提取颜色,
但是,通过观察matplotlib的色条,发现其实每个色条也就三五种颜色,其余部分只是过渡色而已!
matplotlib内置色条
像gist_rainbow色条的颜色:
它由红、黄、绿、蓝、紫5种颜色组成。绿色范围很多,如果折线有10个,必然有2个同是绿色。
3、自定义一组【独特颜色】
通过查看 Matplotlib颜色对照表 我自定义了以下颜色:
colors=['red','green','blue','black','magenta',
'orange','gold','chocolate','tan','olive',
'yellow','turquoise','deepskyblue',
'dodgerblue','blueviolet','deeppink']
这些颜色尽量扩大了视觉区分度,最常用的红、绿、蓝、黑、紫、橙放在前面。
将颜色的十六进制颜色也包含进来,写成字典:
{'red':'#FF0000',
'green':'#008000',
'blue':'#0000FF',
'black':'#000000',
'magenta':'#FF00FF',
'orange':'#FFA500',
'gold':'#FFD700',
'chocolate':'#D2691E',
'tan':'#D2B48C',
'olive':'#808000',
'yellow':'#FFFF00',
'turquoise':'#40E0D0',
'deepskyblue':'#00BFFF',
'dodgerblue':'#1E90FF',
'blueviolet':'#8A2BE2',
'deeppink':'#FF1493'}
|
|