Matplotlib の目盛りラベルの整列調整

PythonPythonBeginner
今すぐ練習

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

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

データ可視化において、目盛りラベルは視聴者に情報を伝える上で重要な役割を果たします。時々、目盛りラベルの整列を調整して、読みやすさを向上させたり、重複を避けるためにする必要がある場合があります。この実験では、Matplotlibを使って目盛りラベルの整列を調整する方法を学びます。

VMのヒント

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

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

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


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL matplotlib(("Matplotlib")) -.-> matplotlib/BasicConceptsGroup(["Basic Concepts"]) python(("Python")) -.-> python/DataStructuresGroup(["Data Structures"]) python(("Python")) -.-> python/FunctionsGroup(["Functions"]) python(("Python")) -.-> python/ModulesandPackagesGroup(["Modules and Packages"]) python(("Python")) -.-> python/DataScienceandMachineLearningGroup(["Data Science and Machine Learning"]) matplotlib/BasicConceptsGroup -.-> matplotlib/importing_matplotlib("Importing Matplotlib") matplotlib/BasicConceptsGroup -.-> matplotlib/figures_axes("Understanding Figures and Axes") python/DataStructuresGroup -.-> python/lists("Lists") python/DataStructuresGroup -.-> python/tuples("Tuples") python/DataStructuresGroup -.-> python/sets("Sets") python/FunctionsGroup -.-> python/function_definition("Function Definition") python/ModulesandPackagesGroup -.-> python/importing_modules("Importing Modules") python/DataScienceandMachineLearningGroup -.-> python/data_visualization("Data Visualization") subgraph Lab Skills matplotlib/importing_matplotlib -.-> lab-48687{{"Matplotlib の目盛りラベルの整列調整"}} matplotlib/figures_axes -.-> lab-48687{{"Matplotlib の目盛りラベルの整列調整"}} python/lists -.-> lab-48687{{"Matplotlib の目盛りラベルの整列調整"}} python/tuples -.-> lab-48687{{"Matplotlib の目盛りラベルの整列調整"}} python/sets -.-> lab-48687{{"Matplotlib の目盛りラベルの整列調整"}} python/function_definition -.-> lab-48687{{"Matplotlib の目盛りラベルの整列調整"}} python/importing_modules -.-> lab-48687{{"Matplotlib の目盛りラベルの整列調整"}} python/data_visualization -.-> lab-48687{{"Matplotlib の目盛りラベルの整列調整"}} end

Matplotlib と AxisArtist のインポート

まず、Matplotlib と AxisArtist をインポートする必要があります。AxisArtist は、カスタム グリッドを作成するための追加ツールを提供します。

import matplotlib.pyplot as plt
import mpl_toolkits.axisartist as axisartist

グリッド設定用の関数を定義する

コードを簡略化するために、グラフオブジェクトと位置を入力として受け取り、カスタム目盛りラベル付きのグリッドオブジェクトを返す関数を定義できます。

def setup_axes(fig, pos):
    ax = fig.add_subplot(pos, axes_class=axisartist.Axes)
    ax.set_yticks([0.2, 0.8], labels=["short", "loooong"])
    ax.set_xticks([0.2, 0.8], labels=[r"$\frac{1}{2}\pi$", r"$\pi$"])
    return ax

グラフを作成してサブグリッドを追加する

次に、グラフオブジェクトを作成し、setup_axes 関数を使って3つのサブグリッドを追加します。

fig = plt.figure(figsize=(3, 5))
fig.subplots_adjust(left=0.5, hspace=0.7)

ax = setup_axes(fig, 311)
ax.set_ylabel("ha=right")
ax.set_xlabel("va=baseline")

ax = setup_axes(fig, 312)
ax.axis["left"].major_ticklabels.set_ha("center")
ax.axis["bottom"].major_ticklabels.set_va("top")
ax.set_ylabel("ha=center")
ax.set_xlabel("va=top")

ax = setup_axes(fig, 313)
ax.axis["left"].major_ticklabels.set_ha("left")
ax.axis["bottom"].major_ticklabels.set_va("bottom")
ax.set_ylabel("ha=left")
ax.set_xlabel("va=bottom")

目盛りラベルの整列を調整する

最後に、set_haset_va メソッドを使って、目盛りラベルの水平および垂直方向の整列を調整できます。

ax.axis["left"].major_ticklabels.set_ha("center")
ax.axis["bottom"].major_ticklabels.set_va("top")

グラフを表示する

グラフを表示するには、show メソッドを使います。

plt.show()

まとめ

この実験では、Matplotlib と AxisArtist を使って目盛りラベルの整列を調整する方法を学びました。目盛りラベルの水平および垂直方向の整列をカスタマイズすることで、データの可視化の読みやすさと明確さを向上させることができます。