xticks,yticksで目盛を変更してみる【matplotlib】

matplotlibのticksの記事のアイキャッチmatplotlib

matplotlibのグラフの目盛はxticks(),yticks()で変更することができます。

xticks(),yticks()の基本的な使い方

plt.xticks(置き換える前のリスト,
           置き換える文字列のリスト)

plt.yticks(置き換える前のリスト,
           置き換える文字列のリスト)

import matplotlib.pyplot as plt

x = [ i for i in range(10)]
y = [ i for i in range(10)]

plt.plot(x, y)
plt.xticks([0, 2, 7],
            ['tickde', 'memori', 'womozini'])

plt.yticks([1, 5, 9],
            ['yzikumo', 'onazi', 'dayo'])
plt.show()
目盛が文字列のグラフ

目盛が変わっていますね!

特定の数値のメモリを表示させたい

デフォルトで表示される数値の目盛ではなくて、特定の数値の目盛を表示させたい場合は2つlistを渡さなくても、もっと簡単に出来る方法があります。

とても簡単で、表示させたい数値のlistを渡すだけです。

import matplotlib.pyplot as plt

x = [ i for i in range(10)]
y = [ i for i in range(10)]

plt.plot(x, y)

plt.xticks([0,1,2,9])
plt.yticks([])

plt.show()
目盛が数字のグラフ

目盛を消してみる

目盛を与えるのではなく、目盛を消したい!
という時のために、xticks(),yticks()で目盛を消すこともできるのです。

具体的には空のlistを与える。
つまり、引数に[]を与えれば、目盛を消すことができます。

import matplotlib.pyplot as plt

x = [ i for i in range(10)]
y = [ i for i in range(10)]

plt.plot(x, y)

plt.xticks([])
plt.yticks([])

plt.show()
目盛がないグラフ

引数を与えなければ、ラベルの位置とラベルの内容が返ってくる

xticks(),yticks()は引数を与えない、という使い方もできます。

引数を与えなければ、
loc:表示位置,
labels:Textオブジェクト(目盛の内容)
を返してくれます。

import matplotlib.pyplot as plt

x = [ i for i in range(10)]
y = [ i for i in range(10)]

plt.plot(x, y)
plt.xticks([0, 2, 7],
            ['tickde', 'memori', 'womozini'])

plt.yticks([1, 5, 9],
            ['yzikumo', 'onazi', 'dayo'])

print(plt.xticks())
#(array([0, 2, 7]), [Text(0, 0, 'tickde'), Text(2, 0, 'memori'), Text(7, 0, 'womozini')])

print(plt.yticks())
#(array([1, 5, 9]), [Text(0, 1, 'yzikumo'), Text(0, 5, 'onazi'), Text(0, 9, 'dayo')])

コメント