科学の箱

科学・IT・登山の話題

Python

グラフの軸を操作する

投稿日:

概要

ここでは以下の項目について取り扱う

  • 軸にラベルを設定する ー xlabel, ylabel
  • 軸の最小値、最大値を設定する ー xlim, ylim, xaxis
  • 軸にメモリを設定する ー xticks, yticks
  • 軸にグリッドを設定する ー grid

ラベルを設定する

ラベルは軸ごとに設定する。

  • pyplot.xlabel() : x軸にラベルを設定する
  • pyplot.ylabel() : y軸にラベルを設定する

xlabelとylabelのマニュアルはこちら

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.ylimpyplot.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

Axes.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()を使う。

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")

メタ情報

inarticle



メタ情報

inarticle



-Python
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

K近傍法でデータを分析

K近傍法の手順 データ読み込み EDA スケーリング K選択前処理 モデル評価 K選択 モデル構築   K近傍法でデータを分析する際にはseabornのpairplotが役に立つ df = …

no image

dataframeで条件を付けて要素を返す方法

前回の続きから。 dfは現在以下のようになっている。 W X Y Z A 2.706850 0.628133 0.907969 0.503826 B 0.651118 -0.319318 -0.848 …

no image

seleniumでWebElement object is not iterableが出るときの対処方法

iterableなオブジェクトを想定して要素を取得、forループに取り込むと下記のようなWebElement object is not iterableが出る。 結論としては勘違い。 Seleniu …

no image

numpy.arange()を使って等差数列を生成する

等差数列を作るためにはnumpy.linspace()を使うと話をした。しかしlinspace()は要素数を指定するためにかえって混乱を招くことがある。そこで便利なのが公差を指定して配列を作ってくくれ …

no image

pythonでTensorFlowを使うまで

TensorFlowが利用できるまでの設定手順をまとめる。 まず基本となるインストラクションはこちらにある。 https://www.tensorflow.org/install/pip このインスト …

2019年9月
« 8月   10月 »
 1
2345678
9101112131415
16171819202122
23242526272829
30  

side bar top



アーカイブ

カテゴリー