메모
전체 예제 코드를 다운로드 하려면 여기 를 클릭 하십시오.
transforms.offset_copy #
이것은 transforms.offset_copy
임의의 좌표에 지정된 위치를 기준으로 화면 좌표(도트 또는 인치)의 지정된 오프셋에 텍스트 문자열과 같은 드로잉 요소를 배치하는 변형을 만들기 위해 를 사용하는 방법을 보여줍니다.
모든 아티스트(Text, Line2D 등)에는 해당 pyplot 함수와 같이 아티스트가 생성될 때 설정할 수 있는 변환이 있습니다. 기본적으로 이것은 일반적으로 데이터 단위에서 화면 픽셀로 이동하는 Axes.transData 변환입니다. 이 offset_copy
함수를 사용하여 수정이 오프셋으로 구성된 이 변환의 수정된 복사본을 만들 수 있습니다.
![트랜스오프셋](/stable/_images/sphx_glr_transoffset_001.png)
import matplotlib.pyplot as plt
import matplotlib.transforms as mtransforms
import numpy as np
xs = np.arange(7)
ys = xs**2
fig = plt.figure(figsize=(5, 10))
ax = plt.subplot(2, 1, 1)
# If we want the same offset for each text instance,
# we only need to make one transform. To get the
# transform argument to offset_copy, we need to make the axes
# first; the subplot function above is one way to do this.
trans_offset = mtransforms.offset_copy(ax.transData, fig=fig,
x=0.05, y=0.10, units='inches')
for x, y in zip(xs, ys):
plt.plot(x, y, 'ro')
plt.text(x, y, '%d, %d' % (int(x), int(y)), transform=trans_offset)
# offset_copy works for polar plots also.
ax = plt.subplot(2, 1, 2, projection='polar')
trans_offset = mtransforms.offset_copy(ax.transData, fig=fig,
y=6, units='dots')
for x, y in zip(xs, ys):
plt.polar(x, y, 'ro')
plt.text(x, y, '%d, %d' % (int(x), int(y)),
transform=trans_offset,
horizontalalignment='center',
verticalalignment='bottom')
plt.show()