내 데이터에 대한 히트 맵을 생성 중입니다.matplotlib, pyplot : 특정 데이터 값의 사용자 정의 색
모든 것이 제대로 작동하지만 약간 문제가 있습니다. 내 데이터 (숫자)는 0에서 10.000까지입니다.
0은 아무 것도 없음 (데이터 없음)을 의미하며 0이 표시된 필드는 내 색상 스칼라 중 가장 낮은 색상을 사용합니다. (미리보기
내 코드를 : 내 문제는
그냥 더 나은 내가 무엇을 의미하는지 이해하기 위해 그림을 참조하십시오 (예 : 검은 색 또는 흰색) 총 다른 색상을 0으로 데이터를 만드는 방법입니다)은 다음과 같습니다
matplotlib.pyplot.imshow(results, interpolation='none')
matplotlib.pyplot.colorbar();
matplotlib.pyplot.xticks([0, 1, 2, 3, 4, 5, 6, 7, 8], [10, 15, 20, 25, 30, 35, 40, 45, 50]);
matplotlib.pyplot.xlabel('Population')
matplotlib.pyplot.yticks([0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10], [1, 2, 3, 4, 5, 10, 15, 20, 25, 30, 'serial']);
matplotlib.pyplot.ylabel('Communication Step');
axis.xaxis.tick_top();
matplotlib.pyplot.savefig('./results_' + optimisationProblem + '_dim' + str(numberOfDimensions) + '_' + statisticType + '.png');
matplotlib.pyplot.close();
, 당신은'for' 루프를 사용하여'0''nan'으로 변경 될 수 있습니다. 'imshow'에서'nan' 값은 항상'white'로 표시됩니다. 그러나,이 경우에는 매끄러운 전이가 없을 것이다. 즉, '0.0001'값은 여전히 '딥 블루 - 틱'이다. 이 변환을 원할 경우 [자신의 colorbar] (http://stackoverflow.com/questions/16834861/create-own-colormap-using-matplotlib-and-plot-color-scale)를 만들 수 있습니다. –
고맙습니다. 단지'0'을'nan'으로 바꾸면 내 문제가 해결됩니다. 이 의견을 답으로 입력하면 정답으로 표시됩니다. – rshuka