概要
ここでは以下の項目について取り扱う
- 軸にラベルを設定する ー xlabel, ylabel
- 軸の最小値、最大値を設定する ー xlim, ylim, xaxis
- 軸にメモリを設定する ー xticks, yticks
- 軸にグリッドを設定する ー grid
ラベルを設定する
ラベルは軸ごとに設定する。
- pyplot.xlabel() : x軸にラベルを設定する
- pyplot.ylabel() : y軸にラベルを設定する
xlabelとylabelのマニュアルはこちら
x軸のラベルとy軸のラベルを設定する
import matplotlib.pyplot as plt plt.plot([1, 2, 3, 4]) plt.title("Simple Plot Default") plt.xlabel("x - label") plt.ylabel("y - label") plt.show()
軸の最大値を設定
pyplotは与えられたデータにより自動的に軸の最大値を決定する。自分で調整するにはxlimおよびylimを使う。
- pyplot.xlim, pyplot.ylim : x軸およびy軸の最小値、最大値を指定
- pyplot.axis : x軸、y軸の最小値、最大値を一括で指定
マニュアルはこちら
pyplot.xlim, pyplot.ylim, pyplot.axis
import matplotlib.pyplot as plt %matplotlib inline plt.plot([1, 2, 3, 4]) plt.xlim([-4, 4]) plt.ylim([0,8]) plt.show()
import matplotlib.pyplot as plt %matplotlib inline plt.plot([1, 2, 3, 4]) plt.axis([-4, 4, 0, 8]) plt.show()
軸に目盛りを設定する ー xticks, yticks
xticks, yticksで軸に目盛りを設定できる。
引数ticksに目盛りの値を配列で指定する。
import matplotlib.pyplot as plt import numpy as np %matplotlib inline plt.plot([0,1, 2, 3, 4]) plt.xticks(np.arange(0, 6, 0.5)) plt.yticks(np.arange(0,6,2)) plt.show()
軸に目盛りを設定する ー Axes.set_xticks, set_yticks
目盛りをより細かく設定するにはAxes.set_xticksおよびset_yticksを利用する。
Axes.set_xticks(self, ticks, minor=False)
Axes.set_yticks(self, ticks, minor=False)
|
ticksには目盛り値を設定する。 目盛りはmajorとminorの二種類ある。minor=Falseではmajorを設定する。minor=Trueではminorを設定する
import matplotlib.pyplot as plt import numpy as np %matplotlib inline ax = plt.axes() ax.set_xticks(np.arange(0, 6, 0.5)) ax.set_xticks(np.arange(0, 6, 0.1), minor=True) ax.set_yticks(np.arange(0, 6, 1.0)) ax.set_yticks(np.arange(0, 6, 0.2), minor=True) ax.plot([0,1, 2, 3, 4])
軸にグリッドを設定する ー grid
目盛りを設定するとグラフ上にグリッド線を描くことができる。これはpyplot.grid()を使う。
matplotlib.pyplot.grid(b=None, which=’major’, axis=’both’, **kwargs) |
- b=Trueを指定するとgrid線が表示される。
- whichは”major”, “minor”, “both”を指定する。これはset_xticks, setyticksに対応している。”both”を選ぶと”major”, “minor”の両方が表示される。
- axisはデフォルトで”both”。これはx軸およびy軸の両方が表示される。
import matplotlib.pyplot as plt import numpy as np %matplotlib inline fig, ax = plt.subplots(2) for i in [0,1]: ax[i].set_xticks(np.arange(0, 6, 0.5)) ax[i].set_xticks(np.arange(0, 6, 0.1), minor=True) ax[i].set_yticks(np.arange(0, 6, 0.5)) ax[i].set_yticks(np.arange(0, 6, 0.1), minor=True) ax[i].plot([0,1, 2, 3, 4]) ax[0].grid(b=True, which="major") ax[1].grid(b=True, which="minor")