Python
 Computer >> コンピューター >  >> プログラミング >> Python

Matplotlibで軸の目盛りとラベルを非表示にする方法

Matplotlibで作成したグラフから、軸の目盛り(tick)やラベル(数値)を非表示にしたいケースは意外と多くあります。たとえば、プレゼン資料用にシンプルな図を作りたい場合や、独自の装飾を行いたい場合などが該当します。

この記事では、set_tick_params()set_xticks() / set_yticks() を使って、X軸・Y軸の目盛りとラベルをまとめてオフにする方法を解説します。

非表示にするための手順

  • 図のサイズを設定し、サブプロット間および周囲の余白を調整する
  • NumPyを使ってx・yのデータポイントを作成する
  • plot() メソッドでデータをプロットする
  • gca() で現在の軸(Axes)オブジェクトを取得する
  • set_tick_params() を使い、X軸・Y軸のラベル(目盛りの数値)を非表示にする
  • set_xticks() / set_yticks() を使い、X軸・Y軸の目盛り線そのものを非表示にする
  • show() メソッドで図を表示する

コード例

import numpy as np
from matplotlib import pyplot as plt

# 図のサイズを設定
plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True

# xとyのデータポイントを作成
x = np.linspace(-10, 10, 100)
y = np.sin(x)

plt.plot(x, y)
ax = plt.gca()

# X軸・Y軸のラベル(目盛りの数値)を非表示
ax.xaxis.set_tick_params(labelbottom=False)
ax.yaxis.set_tick_params(labelleft=False)

# X軸・Y軸の目盛り線を非表示
ax.set_xticks([])
ax.set_yticks([])

plt.show()

実行結果

上記のコードを実行すると、正弦波の曲線だけが描かれ、軸の目盛りもラベルも一切表示されないグラフが出力されます。

Matplotlibで軸の目盛りとラベルを非表示にする方法Matplotlibで軸の目盛りとラベルを非表示にする方法

補足:もっと簡単に非表示にする方法

軸まわりの要素をすべて一括で消したい場合は、以下のような簡潔な書き方もあります。

# 目盛りラベルのみを消す
plt.xticks([])
plt.yticks([])

# 軸の枠ごと完全に非表示にする
plt.axis('off')

plt.axis('off') を使うと、目盛り・ラベルだけでなく軸の枠線(スパイン)まで含めてすべて非表示になるため、「画像として図だけを切り出したい」場合に便利です。用途に応じて使い分けてください。

  1. Windows 8 / 7でフィルターキーをオン・オフにする方法をわかりやすく解説

    「キーボードがフィルターキーの状態のまま固まってしまい、Windows 8でフィルターキーをオフにしたいのですが、どうすればいいですか?本当に困っています。このせいでPCがほとんど使えなくなってしまいました」 フィルターキーは、短時間の入力や連続したキーストロークを無視することで、誤操作を防ぐためのWindowsのアクセシビリティ機能です。しかし、キーを一定時間以上押し続けないと入力が反映されないため、意図せず有効になっていると非常にストレスを感じることもあります。特に右側のShiftキーを8秒間押し続けると自動的に起動してしまうため、「いつの間にかオンになっていた」というケースも少なくありま

  2. Windows 10でシステムアイコンの表示をオン・オフに切り替える方法

    システムアイコンとは、Windows 10のタスクバー右側にある「通知領域(システムトレイ)」に表示されるアイコンのことです。タスクバーは初期設定では画面の下部に表示されており、アプリやブラウザーを全画面表示で使っているとき以外は、常に確認できます。Windows 10で表示される主なシステムアイコンWindows 10でよく見かけるシステムアイコンには、時計、音量、ネットワーク、電源、入力インジケーター、位置情報、アクションセンター、タッチキーボード、Windows Ink ワークスペース、タッチパッド、マイクなどがあります。これらのアイコンは、PCが動作しているWindows 10のバージ