저는 사용자 정의 컬러 맵과 함께 pcolor를 사용하여 값의 매트릭스를 그려 봅니다. 아래 그림과 같이 낮은 값이 흰색이고 높은 값이 빨간색이되도록 내 색상 맵을 설정합니다. 모든 행렬은 0에서 20 사이의 값을 가지며, 행렬이 전체 범위를 포함하지 않는 값을 가지더라도 20은 항상 순수한 빨강이되고 0은 항상 순수한 흰색이되도록합니다. 예를 들어, 행렬의 값이 2와 7 사이 인 경우, 2를 흰색으로, 7을 빨간색으로 표시하지 않고, 범위가 여전히 0에서 20 인 것처럼 색을 지정합니다. 어떻게 할 수 있습니까? 컬러 바의 "ticks ="옵션을 사용해 보았지만 작동하지 않았습니다. 여기python matplotlib에서 pcolor에 고정 된 색상 막대를 설정하는 방법은 무엇입니까?
내 현재 코드 (플로팅 할 값을 포함하는 "my_matrix을"가정)입니다 :
cdict = {'red': ((0.0, 1.0, 1.0),
(0.5, 1.0, 1.0),
(1.0, 1.0, 1.0)),
'green': ((0.0, 1.0, 1.0),
(0.5, 1.0, 1.0),
(1.0, 0.0, 0.0)),
'blue': ((0.0, 1.0, 1.0),
(0.5, 1.0, 1.0),
(1.0, 0.0, 0.0))}
my_cmap = matplotlib.colors.LinearSegmentedColormap('my_colormap', cdict, 256)
colored_matrix = plt.pcolor(my_matrix, cmap=my_cmap)
plt.colorbar(colored_matrix, ticks=[0, 5, 10, 15, 20])
내가 올바른 결과를 얻기 위해이 문제를 해결할 수있는 방법 어떤 생각? 매우 감사합니다.