2014-12-18 5 views
0

먼저, [0,1]에 데이터를 정규화하여 해당 값을 빨간색 스펙트럼의 색상에 지정합니다.matplotlib.colorbar는 단색 적색 스펙트럼을 표시해야합니다.

reds = (data/data.max()).flatten() 
rgb_data = np.array([(r,0,0)for r in reds]).reshape((x.max(),y.max(),3)) 

내가

my_cmap = mcolors.ListedColormap(rgb_data) 
cax = ax.imshow(rgb_data) 

문제는 년 Colorbar

cbar = colorbar(cax) 

은 0

에 녹색과 불평등 파란색 색상을 통해도에 걸쳐 있다는 것이다 컬러 맵을 만드는 방법은 수 녹색과 파란색을 거치지 않고 검은 색에서 깊은 빨간색까지 스팬하도록 사용자 정의 하시겠습니까?

답변

0

당신은 거의 바로

cax = ax.imshow(rgb_data, cmap = my_cmap) 

당신은 당신의 자신의 컬러 맵을 정의했지만, 당신은 또한 인수로 전달해야합니다.

+0

입력하면 다음 오류가 발생합니다. "파일"/usr/lib/pymodules/python2.7/matplotlib/colors.py ", 392 줄, to_rgba_array에 raise ValueError ("색상 배열은 두 개 여야합니다 -dimensional ") ValueError : 색상 배열이 2 차원이어야합니다."내 cmap을 어떻게 정의 했습니까? – AKG

+0

해결 : ListedColormap에 전달 된 배열은 "변형"하지 않은 배열이어야합니다. – AKG