transformation tutorial을 살펴보십시오. 여기에서는 하나의 단위/참조 프레임에서 포인트를 다른 것으로 변환하는 방법을 설명합니다. 여기
일부 코드는 다음을 입증한다 :
는
import matplotlib.pyplot as plt
import matplotlib.patches as patches
SCALE=1
MOUSE_CLICK = (80*SCALE,80*SCALE)
fig = plt.figure(figsize=(1*SCALE,1*SCALE),dpi=100) # 100x100
rect = [.1,.1,.8,.8]
ax = fig.add_axes(rect)
ax.plot(range(9),range(9))
# tranformations to help convert pixels to other units
fromPixelToFig = fig.transFigure.inverted()
fromPixelToData = ax.transData.inverted()
origin = ax.transData.transform((0,0))
print "origin in Pixels = ",origin
print "origin in Figure units = ",fromPixelToFig.transform(origin)
print "click in Pixels: ",MOUSE_CLICK
print "click in Figure Units: ",fromPixelToFig.transform(MOUSE_CLICK)
clickInData = fromPixelToData.transform(MOUSE_CLICK)
print "click in Data Units: ",clickInData
circ = patches.Circle(clickInData,radius=.25)
ax.add_patch(circ)
fig.savefig('mouseClick.png')
이 스크립트의 출력은 다음
이 다음 (소)도 초래
origin in Pixels = [ 10. 10.]
origin in Figure units = [ 0.1 0.1]
click in Pixels: (80, 80)
click in Figure Units: [ 0.8 0.8]
click in Data Units: [ 7. 7.]
더 큰 예제에서 볼 수 있습니다 (SCALE
은 4로 설정 됨) :
감사합니다. Yann, 저에게 보일 장소를 주었고 매우 유망 해 보였습니다. –