在Matplotlib中选择颜色映射 #
从 马特普洛特利布 进口 彩色地图
列表 ( 彩色地图 )
概述 #
是否表示表单数据或度量数据( [仓库] ) 您对数据集的了解( 例如 ,是否存在临界值 其他值会偏离哪个值?) 如果要打印的参数有直观的配色方案 如果现场有标准,观众可能会期待
颜色贴图类 #
顺序:亮度变化,通常是色彩饱和度 增量,通常使用单一色调; 应用于 表示具有顺序的信息。 发散:亮度的变化,可能是两个的饱和度 不同的颜色在中间以不饱和的颜色相遇; 当绘制的信息具有临界值时,应使用 中间值,例如地形或数据偏离周围时 零。 循环:两种不同颜色亮度的变化 中间和开始/结束的颜色不饱和; 应该是 用于在端点处换行的值,例如phase 角度、风向或一天中的时间。 定性:通常是杂色; 应该习惯 表示没有顺序的信息或 关系。
从 色彩宽敞 进口 cspace_转换器
进口 matplotlib.打印 作为 plt公司
进口 笨蛋 作为 净现值
进口 马特普洛特利布 作为 英里/小时
计算机辅助程序 = {}
梯度 = 净现值 . 林斯空间 ( 0 , 1 , 256 )
梯度 = 净现值 . vstack(vstack) (( 梯度 , 梯度 ))
定义 绘图颜色渐变 ( 类别 , cmap列表 ):
#创建图形并根据颜色贴图的数量调整图形高度
nrows公司 = 伦恩 ( cmap列表 )
教法学 = 0.35 + 0.15 + ( n行 + ( n行 - 1 ) * 0.1 ) * 0.22
无花果 , 斧头 = plt公司 . 次要情节 ( n行 = n行 + 1 , 图尺寸 = ( 6.4 , 教法学 ))
无花果 . 子程序_调整 ( 顶部 = 1 - 0.35 / 教法学 , 底部 = 0.15 / 教法学 ,
左边 = 0.2 , 正确的 = 0.99 )
斧头 [ 0 ] . 设置标题(_T) ( (f) ' { 类别 } 颜色映射' , 字体大小 = 14 )
对于 斧头 , 名称 在里面 拉链 ( 斧头 , cmap列表 ):
斧头 . 显示图像 ( 梯度 , 方面 = “自动” , cmap公司 = 英里/小时 . 彩色地图 [ 名称 ])
斧头 . 文本 ( - 0.01 , 0.5 , 名称 , va公司 = “中心” , 哈 = “正确” , 字体大小 = 10 ,
转型 = 斧头 . 横轴 )
#关闭所有勾选和脊椎,而不仅仅是带有颜色贴图的勾选和脊柱。
对于 斧头 在里面 斧头 :
斧头 . 设置_轴_关闭 ()
#保存颜色映射列表供以后使用。
计算机辅助程序 [ 类别 ] = cmap列表
相继的 #
绘图颜色渐变 ( '感知一致序列' ,
[ “绿色” , “血浆” , “地狱” , “岩浆” , “雪人” ])
![感知一致的序列彩色地图](../../../_images/sphx_glr_colormaps_001.png)
绘图颜色渐变 ( “顺序” ,
[ “灰色” , “紫色” , “蓝色” , “绿色” , “橘子” , “红色” ,
“YlOrBr” , “YlOrRd” , “OrRd” , “PuRd” , “RdPu” , “布浦” ,
“GnBu” , “PuBu” , “YlGnBu” , “PuBuGn” , “错误” , “YlGn” ])
![顺序彩色贴图](../../../_images/sphx_glr_colormaps_002.png)
序列2 #
绘图_颜色_半径 ( '顺序(2)' ,
[ “二进制” , “gist_yarg” , “gist_gray” , “灰色” , “骨头” ,
“粉红色” , “弹簧” , “夏天” , “秋天” , “冬天” , “酷” ,
“Wistia” , “热门” , “afmhot” , “gist_heat” , “铜” ])
![顺序(2)颜色映射](../../../_images/sphx_glr_colormaps_003.png)
分散 #
绘图颜色渐变 ( “分流” ,
[ “PiYG” , “PRGn” , “BrBG” , “PuOr” , “RdGy” , “RdBu” , “RdYlBu” ,
“RdYlGn” , “光谱” , “冷暖” , “bwr” , “地震” ])
![多样的颜色映射](../../../_images/sphx_glr_colormaps_004.png)
循环(Cyclic) #
绘图颜色渐变 ( “循环” , [ “暮色” , '微光_移动' , “hsv” ])
![循环颜色贴图](../../../_images/sphx_glr_colormaps_005.png)
定性的 #
绘图颜色渐变 ( “定性” ,
[ “Pastel1” , “Pastel2” , “配对” , “强调文字” , “深色2” ,
“设置1” , '设置2' , '设置3' , '选项卡10' , '选项卡20' , '选项卡20b' ,
'标签20c' ])
![定性颜色图](../../../_images/sphx_glr_colormaps_006.png)
其他 #
绘图颜色渐变 ( “其他” ,
[ '标志' , “棱镜” , “海洋” , “gist_earth” , “地形” ,
'gist_stern' , “gnuplot” , “gnuplot2” , “CMR映射” ,
“cubehelix” , “brg” , '注册主弓' , “彩虹” , “喷气式飞机” ,
“涡轮” , “nipy_spectric” , 'gist_ncar' ])
plt公司 . 显示 ()
![其他颜色映射](../../../_images/sphx_glr_colormaps_007.png)
Matplotlib彩色地图的亮度 #
英里/小时 . rc参数 . 更新 ({ '字体大小' : 12 })
#特定cmap类别的每个子图的颜色映射数
_DSUBS公司 = { “感知一致序列” : 5 , “顺序” : 6 ,
'顺序(2)' : 6 , “分流” : 6 , “循环” : 三 ,
“定性” : 4 , “其他” : 6 }
#子情节的颜色映射之间的间距
_直流电 = { “感知一致序列” : 1.4 , “顺序” : 0.7 ,
'顺序(2)' : 1.4 , “分流” : 1.4 , “循环” : 1.4 ,
“定性” : 1.4 , “其他” : 1.4 }
#单步浏览颜色映射的索引
x = 净现值 . 林斯空间 ( 0 , 1 , 100 )
#进行绘图
对于 cmap类别 , cmap列表 在里面 cmaps公司 . 项目 ():
#进行子绘图,以便颜色贴图有足够的空间。
#默认值为每个子情节6个颜色贴图。
dsub公司 = _DSUBS公司 . 得到 ( cmap类别 , 6 )
nsubplots公司 = 整数 ( 净现值 . 天花板 ( 伦恩 ( cmap列表 ) / dsub公司 ))
#挤压=False以类似方式处理单个子情节的情况
无花果 , 斧头 = plt公司 . 次要情节 ( n行 = nsubplots公司 , 挤压 = False(错误) ,
使无花果化 = ( 7 , 2.6 * nsubplots公司 ))
对于 我 , 斧头 在里面 列举 ( 斧头 . 平的 ):
就地控制系统 = [] #文本标签的位置
对于 j个 , cmap公司 在里面 列举 ( cmap列表 [ 我 * dsub公司 :( 我 + 1 ) * dsub公司 ]):
#获取颜色映射的RGB值并在中转换颜色映射
#CAM02-UCS颜色空间。 实验室[0,:,0]是亮度。
阿拉伯联合酋长国 = 英里/小时 . 彩色地图 [ cmap公司 ]( x )[ 净现值 . 新轴 , :, : 三 ]
实验室 = cspace_converter(空间转换器) ( “sRGB1” , “CAM02-UCS” )( 阿拉伯联合酋长国 )
#绘制颜色映射L值。 对每个类别分别进行
#所以每一个情节都很美。 更改散射标记
#沿绘图的颜色:
# https://stackoverflow.com/q/8202605/
如果 cmap类别 == “顺序” :
#这些彩色地图都是从高亮度开始的,但我们需要它们
#颠倒以使情节好看,所以颠倒顺序。
年_ = 实验室 [ 0 , 时间: - 1 , 0 ]
c(c)_ = x [:: - 1 ]
其他的 :
年_ = 实验室 [ 0 , :, 0 ]
c(c)_ = x
直流电 = _直流电 . 得到 ( cmap类别 , 1.4 ) #cmaps水平间距
斧头 . 分散 ( x + j个 * 直流电 , 年_ , c(c) = c(c)_ , cmap公司 = cmap公司 , 秒 = 300 , 线宽度 = 0 )
#彩色地图标签的存储位置
如果 cmap类别 在里面 ( “感知一致序列” ,
“顺序” ):
位置 . 追加 ( x [ - 1 ] + j个 * 直流电 )
否则如果 cmap类别 在里面 ( “分流” , “定性” , “循环” ,
“其他” , '顺序(2)' ):
位置 . 追加 ( x [ 整数 ( x . 大小 / 2 )] + j个 * 直流电 )
#设置轴限制:
#*第1个子槽用作x轴极限的参考
#*亮度值从0到100(y轴限制)
斧头 . 设置限制 ( 斧头 [ 0 , 0 ] . 获取限制 ())
斧头 . 集合(_Y) ( 0 , 100 )
#设置颜色贴图的标签
斧头 . X轴 . 设置标记位置 ( “顶部” )
自动售票机 = 英里/小时 . 自动售票机 . 固定定位器 ( 位置 )
斧头 . X轴 . 设置主要定位器 ( 自动售票机 )
格式化程序 = 英里/小时 . 自动售票机 . 固定格式工具 ( cmap列表 [ 我 * dsub公司 :( 我 + 1 ) * dsub公司 ])
斧头 . X轴 . 设置主要格式 ( 格式化程序 )
斧头 . X轴 . 设置tick_params ( 旋转 = 50 )
斧头 . 设置伊拉贝尔 ( '亮度$L^*$' , 字体大小 = 12 )
斧头 . 设置标签(_X) ( cmap类别 + '颜色映射' , 字体大小 = 14 )
无花果 . 紧凑的布局 ( h焊盘 = 0 , 衬垫 = 1.5 )
plt公司 . 显示 ()
灰度转换 #
英里/小时 . rc参数 . 更新 ({ '字体大小' : 14 })
#索引以单步浏览颜色映射。
x = 净现值 . 林斯空间 ( 0 , 1 , 100 )
梯度 = 净现值 . 林斯空间 ( 0 , 1 , 256 )
梯度 = 净现值 . vstack(vstack) (( 梯度 , 梯度 ))
定义 绘图颜色渐变 ( cmap类别 , cmap列表 ):
无花果 , 斧头 = plt公司 . 次要情节 ( n行 = 伦恩 ( cmap列表 ), ncol公司 = 2 )
无花果 . 子程序_调整 ( 顶部 = 0.95 , 底部 = 0.01 , 左边 = 0.2 , 正确的 = 0.99 ,
无线传感器网络空间 = 0.05 )
无花果 . 副标题 ( cmap类别 + '颜色映射' , 字体大小 = 14 , 年 = 1 , x = 0.6 )
对于 斧头 , 名称 在里面 拉链 ( 斧头 , cmap列表 ):
#获取颜色贴图的RGB值。
阿拉伯联合酋长国 = 英里/小时 . 彩色地图 [ 名称 ]( x )[ 净现值 . 新轴 , :, : 三 ]
#在CAM02-UCS颜色空间中获取颜色图。 我们想要轻盈。
实验室 = cspace_converter(空间转换器) ( “sRGB1” , “CAM02-UCS” )( 阿拉伯联合酋长国 )
L(左) = 实验室 [ 0 , :, 0 ]
L(左) = 净现值 . 浮动32 ( 净现值 . vstack(vstack) (( L(左) , L(左) , L(左) )))
斧头 [ 0 ] . 显示图像 ( 梯度 , 方面 = “自动” , cmap公司 = 英里/小时 . 彩色地图 [ 名称 ])
斧头 [ 1 ] . 显示图像 ( L(左) , 方面 = “自动” , cmap公司 = 'binary_r' , vmin(虚拟货币单位) = 0 , vmax(最大值) = 100 )
销售时点情报系统 = 列表 ( 斧头 [ 0 ] . 获取位置(_P) () . 边界 )
x_文本 = 销售时点情报系统 [ 0 ] - 0.01
y_text(_text) = 销售时点情报系统 [ 1 ] + 销售时点情报系统 [ 三 ] / 2
无花果 . 文本 ( x_文本 , y_text(_text) , 名称 , va公司 = “中心” , 哈 = “正确” , 字体大小 = 10 )
#关闭所有勾选和脊椎,而不仅仅是带有颜色贴图的勾选和脊柱。
对于 斧头 在里面 斧头 . 平的 :
斧头 . 设置_轴_关闭 ()
plt公司 . 显示 ()
对于 cmap类别 , cmap列表 在里面 计算机辅助程序 . 项目 ():
绘图颜色渐变 ( cmap类别 , cmap列表 )