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
実行結果:
気温と売上数の2つのデータを六角形プロットにしてみましょう。
引数xにはx軸として気温のヒストグラムを指定します。
引数yにはy軸として売上数のヒストグラムを指定します。
引数gridsizeに、ヒストグラムで分割する数を指定します。
実行します。
六角形プロットを作成することができました。
ちなみに、六角形の色が濃いほど、データが多く、色が薄いとデータが少ないことを意味します。
このデータの場合、気温が28度~30度のときに売上数が400後半というデータが多いということがわかります。
df.plot.hexbin(x='Sales', y='Temperature', gridsize=15,sharex=False)
実行結果:
次に、グラフにタイトルをつけてみましょう。
引数titleにタイトル名を指定して実行します。
タイトルをつけることができました。
df.plot.hexbin(x='Sales', y='Temperature', gridsize=15, sharex=False,title='Report')
実行結果:
最後に、色のグラデーションを変更してみましょう。
引数colormapにグラデーションの種類を指定して実行します。
色のグラデーションを変更することができました。
df.plot.hexbin(x='Sales', y='Temperature', gridsize=15, sharex=False,title='Report',colormap='plasma')
実行結果:
関連メソッド
【毎日Python】Pythonでデータフレームからグラフを作成|DataFrame.plot
【毎日Python】Pythonでデータフレームから棒グラフを作成|DataFrame.plot.bar
【毎日Python】Pythonで棒グラフを作成する方法|matplotlib.pyplot.bar