여기서 로그 스케일 I 좌표 데이터로부터 좌표 변환하기 위해서변환은
newcoords = ax.transLimits.transform(np.array(oldcoords)))
가 축 좌표 newcoords
플롯 oldcoords
좌표 싶지 간단한 일이다. 내 플롯은 하나의 축을 선형 눈금으로, 다른 하나는 로그 눈금으로 표시합니다. 선형 스케일 (예 : x
)에 해당하는 구성 요소가 올바르게 변환되지만 로그 스케일 (예 : y
)에 해당하는 구성 요소는 올바르게 변환되지 않습니다.
시도했지만 작동하지 않습니다. 어떻게해야합니까?
transInstance = ax.transLimits + ax.transScale
newcoords = transInstance.transform(oldcoords)
당신이하려는 일에 대해 좀 더 많은 정보를 제공 할 수 있습니까? 최종 목표를 달성하는 쉬운 방법이있는 것 같습니다. – tacaswell
괜찮지 만 컨텍스트가 약간 복잡하고 중요하지 않다고 생각합니다. 'pcolormesh'로 만든 플롯이 있는데,이 플롯은 선형 스케일의 축 하나와 로그 스케일의 다른 축이 있습니다. 플롯, 최소값 대신 직사각형을 그리면이 최소값을 표시하려고합니다. 그러나 로그 스케일 때문에 데이터 좌표에 플롯하면 직사각형이 모양이 나빠 지므로 플롯에 그립니다 좌표, 즉 읽을 수있는 데이터 독립적 인 크기를 제공하기 때문에 쉬운 일이되어야하는이 변환이 필요하지만, 내가 잘못했다고 생각합니다. – pms
간단히 말해서 : 나는 가운데에 사각형을 그려야합니다. 선택된 데이터 영역에 있지만 플롯의 크기와 관련된 크기를 갖는 경우 (예 : 플롯의 5 %에 해당하는 너비와 높이를 중심에 독립적으로 배치 할 수 있습니다. – pms