3D 배열이 있는데 첫 번째 두 차원은 공간이므로 (x, y)라고 말합니다. 세 번째 차원에는 점 별 정보가 포함됩니다. 지금이미지 데이터 모양이 변경된 경우 imshow를 사용하여 올바른 한계 설정
print H.shape # --> (200, 480, 640) spatial extents (200,480)
, 삼차원의 특정면을 선택함으로써, I는 I가 전환되도록 해주기 큐브 회전 I 원할
imdat = H[:,:,100] # shape (200, 480)
img = ax.imshow(imdat, cmap='jet',vmin=imdat.min(),vmax=imdat.max(), animated=True, aspect='equal')
갖는 화상을 표시 할 수있다 (X, Y) ~ (y, x).
imdat = H[:,:,100] # shape (480,200)
img.set_data(imdat)
ax.relim()
ax.autoscale_view(tight=True)
내가 이상한 행동을 얻을 : 내가 전화 이제
H = np.rot90(H) # could also use H.swapaxes(0,1) or H.transpose((1,0,2))
print H.shape # --> (480, 200, 640)
. 행에 따른 이미지는 200 번째 행까지 데이터를 표시 한 다음 y 축 (480) 끝까지 검정색으로 표시됩니다. x 축은 0에서 200까지 확장되며 회전 된 데이터를 표시합니다. 자, 90도 다른 회전, 이미지가 올바르게 표시됩니다 (그냥 180도 물론 회전)
그것은 데이터 회전 후, 축 제한 (또는 이미지 범위?) 또는 뭔가가 아닌 것 같습니다 새로 고침. 누군가 도울 수 있습니까?
추신 : 나쁜 해킹에 빠지기 위해 각 회전 후에 새로운 이미지 (ax.imshow를 호출하여)를 다시 만들려고했으나 여전히 동일한 동작을합니다.
문맥을 제공 할 수 있습니까? 왜냐하면 새로운 이미지를 별도의 그림으로 그릴 것을 권장하기 때문입니다. 이것이 바람직하지 않은 경우 이유를 지정하십시오. –
나는 뒤죽박죽이다. 각 호출 후에'set_extent'를 명시 적으로 사용해야한다고 가정했는데'set_xlim','set_ylim'도 호출해야합니다.하지만 이렇게하면 원하는 동작을 얻지 못하는 것 같습니다. – Yann