transforms.offset_copy #

これはtransforms.offset_copy、テキスト文字列などの描画要素を、任意の座標で指定された位置に対する画面座標 (ドットまたはインチ) で指定されたオフセットに配置する変換を行うための の使用を示しています。

すべてのアーティスト (Text、Line2D など) には、対応する pyplot 関数などによって、アーティストの作成時に設定できる変換があります。デフォルトでは、これは通常、データ単位から画面ピクセルへの Axes.transData 変換です。関数を使用してoffset_copy、この変換の変更されたコピーを作成できます。変更はオフセットで構成されます。

トランスオフセット
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()

Sphinx-Gallery によって生成されたギャラリー