2015-09-01 88 views
2

用于检索的颜色我就与(比如说)等高线图10周的轮廓,就像这样:蟒蛇matplotlib:在等高线图

CS = plt.contour(X, Y, Z, levels=levels) 

哪里levels是10号的列表。

我很满意matplotlib使用的颜色 - 我认为它从默认的颜色映射中选择了10个很好的间隔颜色 - 但是如何检索使用的实际颜色? (如同RGB值列表一样)。原因是我想建立一个自定义颜色栏(在plt.hlines命令中使用这些颜色)。

回答

3

说,如果你想10级,彩色地图jet的:

import matplotlib.cm as cm 

cm.jet(np.linspace(0, 1, 10)) 
Out[31]: 
array([[ 0.  , 0.  , 0.5  , 1.  ], 
     [ 0.  , 0.  , 0.99910873, 1.  ], 
     [ 0.  , 0.37843137, 1.  , 1.  ], 
     [ 0.  , 0.83333333, 1.  , 1.  ], 
     [ 0.30044276, 1.  , 0.66729918, 1.  ], 
     [ 0.66729918, 1.  , 0.30044276, 1.  ], 
     [ 1.  , 0.9, 0.  , 1.  ], 
     [ 1.  , 0.48002905, 0.  , 1.  ], 
     [ 0.99910873, 0.07334786, 0.  , 1.  ], 
     [ 0.5  , 0.  , 0.  , 1.  ]]) 

回报是RGBA值的数组。

+0

谢谢!我相信这已经记录在某处,但我无法在任何地方找到直接的答案。 –