単位付きで注釈を付ける

Beginner

This tutorial is from open-source community. Access the source code

はじめに

このチュートリアルでは、Python の Matplotlib を使ってセンチメートルスケールのプロットに対してテキストと矢印の注釈を作成するプロセスを案内します。

VM のヒント

VM の起動が完了したら、左上隅をクリックしてノートブックタブに切り替え、Jupyter Notebook を使って練習しましょう。

時々、Jupyter Notebook が読み込み終了するまで数秒待つ必要がある場合があります。Jupyter Notebook の制限により、操作の検証を自動化することはできません。

学習中に問題に遭遇した場合は、Labby にお問い合わせください。セッション後にフィードバックを提供してください。すぐに問題を解決いたします。

必要なライブラリをインポートして単位を定義する

このステップでは、必要なライブラリをインポートし、プロットに使用する測定単位を定義します。

from basic_units import cm
import matplotlib.pyplot as plt

プロットを作成する

このステップでは、subplots()関数を使ってプロットを作成し、それをfigaxの変数に格納します。

fig, ax = plt.subplots()

テキスト注釈を追加する

このステップでは、annotate()関数を使ってプロットにテキスト注釈を追加します。注釈の位置と表示するテキストを指定します。

ax.annotate("Note 01", [0.5*cm, 0.5*cm])

単位付きの xy 座標とテキストで矢印注釈を追加する

このステップでは、annotate()関数を使ってプロットに矢印注釈を追加します。矢印の位置、表示するテキスト、および矢印のプロパティを指定します。また、位置とテキストの測定単位も指定します。

ax.annotate('local max', xy=(3*cm, 1*cm), xycoords='data',
            xytext=(0.8*cm, 0.95*cm), textcoords='data',
            arrowprops=dict(facecolor='black', shrink=0.05),
            horizontalalignment='right', verticalalignment='top')

混合単位で矢印注釈を追加する

このステップでは、annotate()関数を使ってプロットにもう 1 つの矢印注釈を追加します。矢印の位置、表示するテキスト、および矢印のプロパティを指定します。また、位置の測定単位を混合し、テキストにはグラフ座標系の割合を使用します。

ax.annotate('local max', xy=(3*cm, 1*cm), xycoords='data',
            xytext=(0.8, 0.95), textcoords='axes fraction',
            arrowprops=dict(facecolor='black', shrink=0.05),
            horizontalalignment='right', verticalalignment='top')

プロットの範囲を設定してプロットを表示する

このステップでは、set_xlim()set_ylim()、およびshow()関数を使って、プロットの範囲を設定して表示します。

ax.set_xlim(0*cm, 4*cm)
ax.set_ylim(0*cm, 4*cm)
plt.show()

まとめ

このチュートリアルでは、Python の Matplotlib を使ってセンチメートルスケールのプロットにテキストと矢印の注釈を作成する方法を示しました。必要なライブラリをインポートし、単位を定義し、プロットを作成し、テキストと矢印の注釈を追加し、プロットの範囲を設定し、そしてプロットを表示しました。