対数グラフの描き方【matplotlib】

xscale(‘log’)
yscale(‘log’)
を使うことで、logスケールにすることができます。

対数グラフの描き方

matplotlib.pyplot.xscale('log')
matplotlib.pyplot.yscale('log')

xscaleはxの目盛を設定する関数
yscaleはyの目盛を設定する関数です。

xscale,yscaleには他にも[‘linear’,’symlog’,’logit’]を指定することができます。

import matplotlib.pyplot as plt
import numpy as np

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

plt.plot(x, y)
plt.yscale('log')
plt.show()

2のべき乗のグラフを描くコードです。

目盛を大数に変えた2の冪乗グラフ

対数目盛を変える

無事対数グラフを描くことができましたが目盛は \(10^x\) がデフォルトで設定されています。

これを \(a^x\) にする方法は以下の通りです。

xscale('log', base = a)
yscale('log', base = a)

\(2^x\)の対数目盛にするコードです。

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

plt.plot(x, y)
plt.yscale('log', base = 2)
plt.show()
対数目盛を2の冪乗にしたグラフ

コメント