Python で円グラフを作成
Google Search Console から取得した “デバイス.csv” を Python で読み込み,デバイス比率を円グラフで表示するプログラムを作成する。
Google Search Console は,Google 検索結果でのサイトの掲載順位を監視,管理,改善するのに役立つ Google の無料サービスです。
(出典)Google Search Console の概要
Python,ライブラリのバージョン
今回,使用した Python のバージョン,ライブラリのバージョンは以下のとおり。
- Python 3.7.4
- matplotlib 3.1.1
- japanize-matplotlib 1.1.3
- pandas 1.3.5
データの概要
“デバイス.csv” には,以下のデータが記載されている。
※『目指せ!電気主任技術者~解説ノート』の 2022年1月1日~12月31日までのデータである。
デバイス,クリック数,表示回数,CTR,掲載順位
PC,33746,416525,8.1%,15.2
モバイル,19528,298419,6.54%,10.59
タブレット,987,11447,8.62%,9.36
プログラムの概要
Google Search Console から取得した CSV では,”モバイル”,”タブレット” のように日本語が使用されているため,japanize-matplotlib を使用している。
import matplotlib.pyplot as plt
import japanize_matplotlib
import pandas as pd
df = pd.read_csv('デバイス.csv', usecols = ['デバイス','クリック数','表示回数','CTR','掲載順位'], encoding='utf-8')
# パイの透明度,パイの枠線を設定
wedgeprops={"alpha":0.7, "edgecolor":"white", "linewidth":2}
# クリック数のパイチャート
plt.pie(df['クリック数'],labels=df['デバイス'],startangle=90,counterclock=False,autopct="%1.1f%%",wedgeprops=wedgeprops)
plt.title('clicks (N = ' + str(sum(df['クリック数'])) + ')')
plt.savefig("pie_clicks.png",dpi=300)
plt.show()
作成した円グラフ
クリック数の円グラフを下図に示す。
PC,モバイル,タブレットの割合を示す円グラフが作成できた。
プログラムの補足説明
円グラフは以下のコードで記載している。
円グラフの開始位置
第一引数の df[‘クリック数’] でクリック数を読み込み,labels には df[‘デバイス’] を読み込んでいる。円グラフの開始を 12 時の位置となるよう startangle=90 としている。
plt.pie(df['クリック数'],labels=df['デバイス'],startangle=90,counterclock=False,autopct="%1.1f%%",wedgeprops=wedgeprops)
円グラフのタイトル
以下のとおり,円グラフのタイトルにクリック数の合計値(sum(df[‘クリック数’]))を表示するようにしている。
plt.title('clicks (N = ' + str(sum(df['クリック数'])) + ')')