前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >matplotlib:如何选定颜色

matplotlib:如何选定颜色

作者头像
bugsuse
发布2020-04-21 17:35:49
1K0
发布2020-04-21 17:35:49
举报
文章被收录于专栏:气象杂货铺

大多数情况下,matplotlib 的颜色都可以通过以下方式设置:

  • RGB/RGBA 浮点值元组,值的范围在[0, 1]
  • 十六进制 RGB/RGBA 字符串。比如:'#0F0F0F'
  • 用于表示灰度级别的字符串表示方式,浮点值范围在 [0, 1]。比如:'0.5'
  • {'b', 'g', 'r', 'c', 'm', 'y', 'k', 'w'} 其中之一
  • X11/CSS4 颜色名
  • 前缀为 xkcd: 的xkcd color table [注1] 中的颜色名。比如: xkcd: sky blue
  • {'C0', 'C1', 'C2', 'C3', 'C4', 'C5', 'C6', 'C7', 'C8', 'C9'} 其中之一
  • {'tab:blue', 'tab:orange', 'tab:green', 'tab:red', 'tab:purple', 'tab:brown', 'tab:pink', 'tab:gray','tab:olive', 'tab:cyan'} 其中之一。

字符串指定的颜色均是大小写敏感的。

'CN' 颜色选择

此颜色选择方式是由正则匹配的 C[0-9] 来确定颜色。只要是支持这种颜色的地方都可以通过这种方式来设置,而且也可以作为 matplotlib.Axes.plot 的单字符颜色。

单数字表示默认属性循环中的索引(即 matplotlib.rcParams['axes.prop_cycle'])。如果属性循环中不包括指定颜色的话将返回黑色。比如:

代码语言:javascript
复制
import numpy as np
import matplotlib.pyplot as plt
import matplotlib as mpl
th = np.linspace(0, 2*np.pi, 128)

def demo(sty):
    mpl.style.use(sty)
    fig, ax = plt.subplots(figsize=(3, 3))

    ax.set_title('style: {!r}'.format(sty), color='C0')

    ax.plot(th, np.cos(th), 'C1', label='C1')
    ax.plot(th, np.sin(th), 'C2', label='C2')
    ax.legend()

demo('default')
demo('seaborn')

xkcd vs X11/CSS4

xkcd 颜色表中的颜色是源于一次 xkcd 调查,详见 [注2]

在CSS的148种颜色种,CSS4/X11 和 xkcd 的颜色名种 有 95 种颜色名是冲突的,而且其中除了3种颜色外具有不同的十六进制值。由于命名冲突,所以xkcd的颜色名前都会添加 xkcd: 前缀。

下图是 xkcd 和 X11/CSS4 的颜色对比,具有相同十六进制的颜色用粗体表示。


注1:https://xkcd.com/color/rgb/

注2:https://blog.xkcd.com/2010/05/03/color-survey-results/

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2017-07-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 气象杂货铺 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档