【毎日Python】Pythonでデータフレームから六角形プロットを作成する方法|DataFrame.plot.hexbin

plot_hexbin
毎日Python/こつこつPython未分類

Pythonで六角形プロットを作成する方法です。
使用するのは、Pythonのpandasライブラリのplot.hexbinメソッドです。

import pandas as pd
import numpy as np
import random  

六角形プロットとは、2つのデータのヒストグラムを掛け合わせて表示したグラフのことです。
pandasにはmatplitlibというライブラリがありますが、pandasのplotメソッドでも簡単にグラフ作成を行うことができます。

このようなデータフレームを使用します。

a = np.random.randint(300, 1000, size=300)
b = np.random.randint(20, 35, size=300)
col = ['Sales', 'Temperature']
df = pd.DataFrame({'Sales': a, 'Temperature': b})
df 

実行結果:
df

気温と売上数の2つのデータを六角形プロットにしてみましょう。
引数xにはx軸として気温のヒストグラムを指定します。
引数yにはy軸として売上数のヒストグラムを指定します。
引数gridsizeに、ヒストグラムで分割する数を指定します。
実行します。
六角形プロットを作成することができました。
ちなみに、六角形の色が濃いほど、データが多く、色が薄いとデータが少ないことを意味します。
このデータの場合、気温が28度~30度のときに売上数が400後半というデータが多いということがわかります。

df.plot.hexbin(x='Sales', y='Temperature', gridsize=15,sharex=False) 

実行結果:
graph01

次に、グラフにタイトルをつけてみましょう。
引数titleにタイトル名を指定して実行します。
タイトルをつけることができました。

df.plot.hexbin(x='Sales', y='Temperature', gridsize=15, sharex=False,title='Report')

実行結果:
graph02

最後に、色のグラデーションを変更してみましょう。
引数colormapにグラデーションの種類を指定して実行します。
色のグラデーションを変更することができました。

df.plot.hexbin(x='Sales', y='Temperature', gridsize=15, sharex=False,title='Report',colormap='plasma')

実行結果:
graph03

関連メソッド

【毎日Python】Pythonでデータフレームからグラフを作成|DataFrame.plot

【毎日Python】Pythonでデータフレームから棒グラフを作成|DataFrame.plot.bar

【毎日Python】Pythonで棒グラフを作成する方法|matplotlib.pyplot.bar

【毎日Python】Pythonでデータフレームから横棒グラフを作成|DataFrame.plot.barh

【毎日Python】Pythonでシリーズからヒストグラムを作成する方法|Series.plot.hist