Pythonでヒストグラム付きの散布図を作る方法

Pythonを使ってヒストグラム付きの散布図を作成する方法について。

Matplotlibよりも簡単に綺麗なグラフ書くことができるseabornというライブラリを使います。

完成形

完成形の散布図

完成形の散布図は、上のグラフのようにx軸とy軸ごとの分布がヒストグラムで分かるようになります。

Matplotlibの散布図

seabornの散布図との違いが分かるようにMatplotlibの散布図も載っけておきます。

グラフのタイトルやラベルなど何も表示していないデフォルトのままのグラフです。
Matplolibの散布図

Matplotlibのコード

Matplotlibで散布図を作成するためのコードは以下のとおりです。

import matplotlib.pyplot as plt
import numpy as np

X = np.random.randn(1000)
Y = np.random.randn(1000)

plt.scatter(X, Y)
plt.show()

作成方法

まずは、matplotlibをインポートします。

グラフのデータを作るためにnumpyもインポートします。
今回は、numpyのrandnを使って標準正規分布に従う乱数のデータを使います。
(numpyで乱数を作る方法についてはこちらを参照)

散布図を plt.scatter で作成し、最後に plt.show() でグラフを表示します。

このように、Matplotlibでもとっても簡単に散布図を作ることができるのですが、seabornを使うとほとんど同じようなコードでもっとキレイなグラフを作ることができます。

seabornの散布図

seabornでヒストグラム付きの散布図を作成するコードは以下のとおりです。

さっきのMatplotlibのコードとほとんど同じです。

import matplotlib.pyplot as plt
import numpy as np
import seaborn as sns

X = np.random.randn(1000)
Y = np.random.randn(1000)

sns.jointplot(X, Y)
plt.show()

Matplotlibの時との違いは、インポートとグラフ作成の部分だけです。

seabornのインポートはsnsという別名でするのが一般的です。

ヒストグラム付きの散布図は sns.jointplot で作ることができます。

たったこれだけの違いで、ヒストグラムが付きで見栄えもいい散布図を作ることができます。

以上、Pythonでヒストグラム付きの散布図を作る方法でした。

0 件のコメント :