2016-10-20 12 views
0

matplotlibでカスタムカラーテーブルを作成しようとしていますが、問題が発生しています。私は既にr、g、b、0から1までの値を持つ色のリストを持っています。しかし、LinearSegmentedColormapで使用するために正しく構築していないようです。matplotlibでのIndexError例外カスタムカラーマップ/ LinearSegmentedColormap

ここに私がそれを構築するために使用しているコードがあります。

しかし
while len(iterator) != 0: 
    element = iterator.pop() 
    if element.get('r') != None: 
     r = np.float64(element.get('r')) 
     g = np.float64(element.get('g')) 
     b = np.float64(element.get('b')) 
     a = np.float64(element.get('a')) 
     vals = np.array([r,g,b,a])   
     cmapList.append(vals) 
cmapList = np.array(cmapList) 
colorMap = LinearSegmentedColormap("name",cmapList,len(cmapList),gamma = 1.0) 

、私はこのエラーが発生したプロットにカラーマップを使用するか、カラーマップ

colorMap(1) 

を呼び出そう。

Traceback (most recent call last): 
    File "satelliteVisFwz.py", line 63, in <module> 
    colorTable(1) 
    File "/awips2/python/lib/python2.7/site-packages/matplotlib/colors.py", line 553, in __call__ 
    self._init() 
    File "/awips2/python/lib/python2.7/site-packages/matplotlib/colors.py", line 732, in _init 
    self.N, self._segmentdata['red'], self._gamma) 
IndexError: only integers, slices (`:`), ellipsis (`...`), numpy.newaxis (`None`) and integer or boolean arrays are valid indices 

答えて

0

私は希望の結果を与えたあなたがそう

LinearSegmentedColormap.from_list("name",cmapList,len(cmapList),gamma=1.0) 

をfrom_list

静的メソッドを使用する必要が実現。

関連する問題