2017-03-02 4 views
0

matplotlib에는 자체 로컬 좌표가 있습니다. 그러나 나는 그것을 자신의 위도 및 경도 데이터로 변경하고 싶습니다. 데이터는 목록의 최대 및 최소 위도 및 경도를 갖기 때문에 수행해야 할 것은 x 및 y 축 범위를 대체하는 것입니다. 그렇게 할 수 있습니까?Matplotlib의 좌표 변경

{'minLat': 109.0, 'maxLat': 177.7, 'maxLong': 177.64, 'minLong': 131.8} 

이것은 x와 y 좌표를 대체해야하는 위도와 경도입니다. 이 목록은 내 정의 된 함수를 통해 생성됩니다.

+0

나는 귀하의 질문에 대해 확신하지 못합니다. 그래프의 축을 설정하거나 xlim과 ylim을 설정 하시겠습니까? –

답변

0

set_xlim()set_ylim()을 사용하면 축 한계를 변경할 수 있습니다.

import matplotlib.pyplot as plt 
coord = {'minLat': 109.0, 'maxLat': 177.7, 'maxLong': 177.64, 'minLong': 131.8} 
fig, ax = plt.subplots() 
ax.set_xlim((coord["minLong"], coord["maxLong"])) 
ax.set_ylim((coord["minLat"], coord["maxLat"])) 
ax.plot(some values) 
plt.show() 
+0

나는 이것을 전에 시도했다. 그러나 문제는 실제로 축이 올바른 것을 보여 주지만 일단 특정 지점을 클릭하면 반환되는 좌표는 내 위도 및 경도 좌표 대신 원래 로컬 matplotlib 좌표입니다. –

+0

방금 ​​확인했습니다. 나는 ax.set_xlim이 플로팅 영역을 다른 지정된 위치로 옮기라고 matplotlib에게 알려줄 것이라고 생각한다. 그러나 문제는 그림의 중앙에 여전히 그래프가 필요하지만 점의 반환 좌표는 새로운 위도 및 경도 좌표와 상호 관련이 있어야한다는 것입니다. –

+0

matplotlib에 플로팅 할 때 데이터 좌표에만주의를 기울입니다 (그림 좌표와 같은 다른 모든 좌표는 축, 범례 등을 배치하는 데는 적합하지만 플로팅에는 적합하지 않을 수 있음). "로컬 좌표"와 같은 것은 없습니다. 문제의 [mcve]를 제공하고 (10 줄 넘지 말 것) 제안을 한 다음 해결 방법을 찾을 것입니다. – ImportanceOfBeingErnest