Matplotlib2|いろいろな種類のグラフを作成する

  • URLをコピーしました!

ここで学習すること

折れ線や棒グラフなど、様々なグラフの作成の仕方を学習します。

グラフ作成ライブラリのmatplotlib.pyplotをimport matplotlib.pyplot as plt でインポートすることでpltで使用できます。

各グラフを作成するメソッドを紹介します。

線グラフ .plot() 

線グラフは plt.plot(x, y, marker=”マーカーの種類”, markerfacecolor=”マーカーの色”, linestyle=”線のスタイル”, color=”線の色”)) で作成します。

マーカーの種類

円:o  四角:s  五角形:p  星:*  プラス:+  ダイアモンド:D

マーカーの色

青:b  緑:g  赤:r  シアン:c  マゼンタ:m  黄色:y  黒:k 白:w

線の種類

実線:- 破線:– 破線(点入り):-. 点線: :

棒グラフ .bar()

棒グラフは plt.bar(x, y, tick_label=[ラベルのリスト]) で作成します。

import numpy as np
import matplotlib.pyplot as plt

x = [1, 2, 3, 4, 5, 6]
y = [23, 45, 22, 12, 21, 8]
labels = [“hyogo”, “osaka”, “kyoto”, “shiga”, “nara”, “wakayama”]

plt.bar(x, y, tick_label=labels)

plt.show()

積み上げ棒グラフ .bar()

棒グラフを積み上げるときは plt.bar(x, y2, bottom=y1) でボトムにする値y1を bottom=y1 で指定します。

import numpy as np
import matplotlib.pyplot as plt

x = [1, 2, 3, 4, 5, 6]
y1 = [13, 23, 36, 78, 12 , 54
y2 = [34, 21, 56, 22, 78, 56]
pref = [“hyogo”, “osaka”, “kyoto”, “shiga”, “nara”, “wakayama”]

棒グラフを作成しラベルを設定します。

plt.bar(x, y1, tick_label=pref)

y1の上にy2を積み上げます

plt.bar(x, y2, bottom=y1)

系列ラベルを設定します

plt.legend((“y1”, “y2”))

plt.show()

=>

ヒストグラム  .hist()

散布図はplt.hist()で作成できます。

import numpy as np
import matplotlib.pyplot as plt

乱数を作成します

np.random.seed(0)
data = np.random.randn(10000)

plt.hist(data)

plt.show()

散布図   plt.scatter()

散布図はplt.scatter()で作成できます。

import numpy as np
import matplotlib.pyplot as plt

乱数を作成します

np.random.seed(0)
x = np.random.choice(np.arange(100), 100)
y = np.random.choice(np.arange(100), 100)

plt.scatter(x, y)

plt.show()

=>

値の大きさに応じてプロットサイズを変更する

plt.scatter(x, y, s=マーカーのサイズ) でマーカーのサイズを変更できます。

np.random.seed(0)
x = np.random.choice(np.arange(100), 100)
y = np.random.choice(np.arange(100), 100)

z = np.random.choice(np.arange(100), 100)

zの大きさに応じてプロットサイズを変更します

plt.scatter(x, y, s=z)

plt.show()

=>

値の大きさに応じてマーカーの色の濃淡を変える

plt.scatter(x, y, c=マーカーのサイズ, cmap=”色”) でマーカーの色の濃淡を変えられます。

plt.scatter(x, y, c=z, cmap=”Blues”)

カラーバーを表示します

plt.colorbar()

=>

色の支持は以下になります。

“Reds”: 赤

“Blues”: 青

“Greens”: 緑

“Purples”: 紫

円グラフ  plt.pie()

円グラフは

plt.pie(list型のデータ, labels = ラベルのリスト)

axis(“equal”)

で作成できます。 axis(“equal”)がないと楕円になってしまいます。

import matplotlib.pyplot as plt

data = [60, 20, 10, 5, 3, 2]
pref = [“hyogo”, “osaka”, “kyoto”, “shiga”, “nara”, “wakayama”]

plt.pie(data, labels=pref)

plt.axis(“equal”)
plt.show()

=>

一部のパイを強調する

一部のパイを強調するには plt.pie(data, labels=labels, explode=協調する度合いのリスト) とします。

import matplotlib.pyplot as plt

data = [60, 20, 10, 5, 3, 2]
pref = [“hyogo”, “osaka”, “kyoto”, “shiga”, “nara”, “wakayama”]

ここではkyotoを0.1だけ協調します。数値を大きくすると強調(抜き出し具合)が大きくなります


explode = [0, 0, 0.1, 0, 0, 0]

plt.pie(data, labels=pref, explode=explode)

plt.axis(“equal”)
plt.show()

=>

よかったらシェアしてね!
  • URLをコピーしました!
目次