Challenge programming

Python

個別データグラフにする。

前回はこちらでいろいろなグラフを作ってみました。

そこでは読み込んだっすべてのデータをグラフにしていました。 今回は、ある項目だけとか、ある人だけのグラフにするためのスキルを学びましょう。

準備のため「matplotlib」というフォルダを作り、あらかじめ表データを作成しました。

matplotlib_gurafu.py import pandas as pd
import matplotlib.pyplot as plt
import japanize_matplotlib

df = pd.read_csv("test.csv", index_col=0)

df["英語"].plot.bar()
plt.legend(loc="lower left")
plt.show()

解説

import pandas as pd表データーを読み込むpandasライブラリをimportします。省略してpdとします。
import matplotlib.pyplot as pltグラフを表示させるmatplotlibをimportします。matplotlib.pyplotとするとpltという省略名が使えます。
import japanize_matplotlib日本語で表示させるため、また文字化けしないようjapanize_matplotlibをimportします。
df = pd.read_csv("test.csv", index_col=0)index_col=0とすると、一番左の列(今回では名前の列)をインデックスとして読み込めるようになります。
df["英語"].plot.bar()一列のデータはdf["列名"]で取得できます。ちなみに行のデータはdf.loc[行番号]で取得できます。
plt.show()グラフを表示します。

各自の英語データだけを取り出せました。


次は英語と国語の棒グラフを作ってみましょう。

matplotlib_gurafu.py import pandas as pd
import matplotlib.pyplot as plt
import japanize_matplotlib

df = pd.read_csv("test.csv", index_col=0)
df[["英語","国語"]].plot.bar()
plt.legend(loc="lower left")
plt.show()

解説

import pandas as pd表データーを読み込むpandasライブラリをimportします。省略してpdとします。
import matplotlib.pyplot as pltグラフを表示させるmatplotlibをimportします。matplotlib.pyplotとするとpltという省略名が使えます。
import japanize_matplotlib日本語で表示させるため、また文字化けしないようjapanize_matplotlibをimportします。
df = pd.read_csv("test.csv", index_col=0)index_col=0とすると、一番左の列(今回では名前の列)をインデックスとして読み込めるようになります。
df[["英語","国語"]].plot.bar()2つ条件を付ける時は、カッコは2つ([[]])必要
plt.legend(loc="lower left")凡例を左下に表示します。
plt.show()グラフを表示します。

指定した英語、国語の棒グラフを作れました。


「A太」の棒グラフを作って表示する

matplotlib_gurafu.py import pandas as pd
import matplotlib.pyplot as plt
import japanize_matplotlib

df = pd.read_csv("test.csv", index_col=0)

df.loc["A太"].plot.bar()
plt.legend(loc="lower left")
plt.show()

解説

df.loc["A太"].plot.bar()行のデータはdf.loc[]で取得できます。

「A太」の円グラフを作って表示する

matplotlib_gurafu.py import pandas as pd
import matplotlib.pyplot as plt
import japanize_matplotlib

df = pd.read_csv("test.csv", index_col=0)

df.loc["A太"].plot.pie(labeldistance=0.6)
plt.legend(loc="lower left")
plt.show()

解説

df.loc["A太"].plot.pie(labeldistance=0.6)円グラフのデータは「1列データ.plot.pie(labeldistance=中心からの距離)」で作れます。

行と列を入れ替えてグラフを作る

こうすれば、生徒別だったグラフから、科目ごとのグラフが作れます。

matplotlib_gurafu.py import pandas as pd
import matplotlib.pyplot as plt
import japanize_matplotlib

df = pd.read_csv("test.csv", index_col=0)

df.T.plot.bar()
plt.legend(loc="lower left")
plt.show()

解説

df.T.plot.bar()「.T」をつけて列と行を入れ替えます。

科目ごとのグラフが作れました。

*尚、ここではバージョン「Python 3.10.1」を使用しています。

この本を参考に学び、完成させることができました。しかし、ここではプログラミング初心者の私が詳しく解説することは、おこがましく、難しく出来ません(ToT)
その点、この本では丁寧な解説が載っていますので、解説とともにコードを書き、完成させればより深く学ぶことができます(^.^)、実際、初心者の私でもわかりやすかったです。身に付け消えないスキルが2,000円程ならコスパよく、買っておいてよかったと満足してます。



もっと深く学びたい人にはこちらもどうぞ。| For those who want to learn more deeply, this is also recommended.

キャリアアップに必要なスキルを取得しよう。| Get the skills you need to advance your career.

Pythonエンジニア育成推進協会公式認定スクール | Officially certified school of Python Engineer Development Promotion Association.

ぺージの先頭に戻る(Return to top of page)


©2020年9月 Challenge programming

プライバシーポリシー