2012-03-03 2 views
7

Я новичок в matplotlib и застрял в цветовых каталогах.matplotlib: Получить массив colormap

В matplotlib, как получить весь массив цветов RGB для определенной цветовой карты, скажем, для «горячего». Например, если бы я был в MATLAB, я бы только что сделал это:

# in matlab 
c = hot(256); 
disp(c) 

Любые идеи?

ответ

11

Вы можете посмотреть значение, вызвав палитру как функция, и она принимает Numpy массивов для запроса множества значений одновременно:

In [13]: cm.hot(arange(256)) 
Out[13]: 
array([[ 0.0416 , 0.  , 0.  , 1.  ], 
     [ 0.05189484, 0.  , 0.  , 1.  ], 
     [ 0.06218969, 0.  , 0.  , 1.  ], 
     ..., 
     [ 1.  , 1.  , 0.96911762, 1.  ], 
     [ 1.  , 1.  , 0.98455881, 1.  ], 
     [ 1.  , 1.  , 1.  , 1.  ]]) 
-3

Понял! Таким образом, вы просто идете в командном окне вашего Matlab и введите

CMAP = таблицы цветов (nameOfTheColormapYouWant)

Возможная цветовая карта в Matlab являются: parula, реактивное, ВПГ, горячий, холодный, весна, лето, осень, зима , серый, костяной, медный, розовый, линии, цветной куб, призму, флаг.

Вы получаете матрицу, в которой каждая строка является цветовым кодом, используемым для цветовой карты.

+0

Вот как получить массив RGB в 'Matlab'. OP хочет получить массив RGB в пакете 'matplotlib' python. Пожалуйста, прочитайте вопрос в следующий раз. –