ここでは、「Pandas」と「Matplotlib」を用いた「xlsx」ファイルのグラフ化する方法について解説しています。
行ったこと
任意の「xlsx」ファイルを「Pandas」で読み込み、「Matplotlib」を用いてグラフ化までを自動化させました。ここでは以下のファイルを用いました。
準備すること
プログラムを動かす前に必ず以下をインストールしておきます。
$ pip install pandas
$ pip install matplotlib
プログラム
import pandas as pd
import matplotlib.pyplot as plt
#1---ファイルの指定&読み込み
file_excel = "9024-2020.xlsx"
book = pd.read_excel(file_excel,usecols=[0,4])
#2---pltの呼び出し
plt.style.use('ggplot')
#3---軸、グラフ種類の指定
book.plot(x='day',y='close',kind="line")
#4---保存
plt.savefig("plot.png")
プログラムは上記になります。
それでは1から解説していきます。
#1---ファイルの指定&読み込み
file_excel = "9024-2020.xlsx"
book = pd.read_excel(file_excel,usecols=[0,4])
1の部分では開くファイル名を指定して読み出しています。
同時に読み出すとき、「usecols=[0,4]」として0列目と4列目だけに指定しています。
#2---pltの呼び出し
plt.style.use('ggplot')
2の部分ではpltを読み出しています。このとき「’ggplot’」というスタイルを指定しています。スタイルには他にも「’classic’」「’dark_background’」「’fast’」等あります。
「print(plt.style.available)」で調べてみると以下の種類があるようです。
['Solarize_Light2', '_classic_test_patch', 'bmh', 'classic', 'dark_background', 'fast', 'fivethirtyeight', 'ggplot', 'grayscale', 'seaborn', 'seaborn-bright', 'seaborn-colorblind', 'seaborn-dark', 'seaborn-dark-palette', 'seaborn-darkgrid', 'seaborn-deep', 'seaborn-muted', 'seaborn-notebook', 'seaborn-paper', 'seaborn-pastel', 'seaborn-poster', 'seaborn-talk', 'seaborn-ticks', 'seaborn-white', 'seaborn-whitegrid', 'tableau-colorblind10']
解説に戻ります。
#3---軸、グラフ種類の指定
book.plot(x='day',y='close',kind="line")
3の部分ではX軸、Y軸、線の種類を指定しています。excelファイルのA列をX軸、E列をY軸としています。線の種類は「line」としています。他にも様々な種類があるみたいです。
線の種類については以下にまとめてみました。良かった参考にして下さい。
種類 | 内容 |
bar | 垂直棒グラフ(vertical bar plot) |
barh | 水平棒グラフ(horizontal bar plot) |
box | 箱ひげ図(boxplot) |
hist | ヒストグラム(histogram) |
kde,density | カーネル密度推定(Kernel Density Estimation plot) |
area | 面グラフ(area plot) |
scatter | 散布図(scatter plot) |
hexbin | hexbin plot |
pie | 円グラフ(pie plot) |
#4---保存
plt.savefig("plot.png")
最後に保存して終了です。
結果
結果としては、サイズを指定していないせいか、ぎこちないものです。
次は細かい指定をして挑戦してみます。