Categories: Python

マンション契約率とマンション販売戸数のグラフ化

経済指標をPythonで取り込んでグラフ化してみるというメモです。

日経の経済指標はここにまとめられています。
https://vdata.nikkei.com/economicdashboard/macro/

CSV形式でダウンロードできますので、マンション契約率(首都圏)とマンション販売戸数(首都圏)
のCSVを取り込んでグラフにしてみます。

import pandas as pd

# マンション契約率(首都圏)
df1 = pd.read_csv("https://vdata-stats-data.s3.amazonaws.com/csv/NB73M.csv",skiprows=1, names=['Month', 'Keiyaku' ,'Sokuho'])

# マンション販売戸数(首都圏)
df2 = pd.read_csv("https://vdata-stats-data.s3.amazonaws.com/csv/NB76M.csv",skiprows=1, names=['Month', 'Kosu' ,'Sokuho'])


# Monthをキーにしてマージ
Data = pd.merge(df1,df2,on='Month')


# 列の削除
del Data['Sokuho_x']
del Data['Sokuho_y']


# pylabモードの立ち上げ
%pylab
import matplotlib.pyplot as plt 

# 簡単なプロット
plot(Data.Keiyaku)


# 日付データの変換とインデックス化
from datetime import datetime
dates = pd.DatetimeIndex(Data.Month)
Data.index = dates
del Data['Month']

# グラフ化
Data['Keiyaku'].plot()


# グラフに軸のグリッドを表示する
plt.grid()

# which=の'major'と'minor'はそれぞれ主目盛線と補助目盛線
plt.grid(which='major')
plt.grid(which='minor')
plt.grid(which='both')

# ラベルをつける
plt.ylabel('Keiyaku') 
plt.ylabel(u'マンション契約率(%)') 
→日本語はうまくいかなかった

これでいったんはグラフにできますが、グラフを並べて表示させる場合は以下のようなやり方もあります。

# 新たな図の作成
fig = plt.figure()

# サブプロットの作成(図のレイアウトを2X1にして2つのサブプロットのうち最初のものを選択する、という意味) 
ax1 = fig.add_subplot(2,1,1)

# 2つ目のサブプロットの作成 
ax2 = fig.add_subplot(2,1,2)

ax1.plot(Data.Keiyaku)
ax2.plot(Data.Kosu)


ticks = ax1.set_xticks(["2012-01-01","2013-01-01","2014-01-01","2015-01-01","2016-01-01"])
labels = ax1.set_xticklabels(["2012","2013","2014","2015","2016"])
ax1.grid()
ax1.set_ylabel('Keiyaku(%)')

ticks = ax2.set_xticks(["2012-01-01","2013-01-01","2014-01-01","2015-01-01","2016-01-01"])
labels = ax2.set_xticklabels(["2012","2013","2014","2015","2016"])
ax2.grid()
ax2.set_ylabel('Kosu')

グラフはこんな感じになります。

グラフのラベルを日本語にするところはできませんでした。

関連する投稿:

kaz

Share
Published by
kaz

Recent Posts

よく使うショートカットキー

土曜日の日経新聞のNIKKEI…

2年 ago

気になるETFのメモ

ETFを色々調べていたので銘柄…

3年 ago

SPDRゴールド・シェアETF(GLD)を買いました

無事に米国株取引口座を開設でき…

3年 ago

インフレになったらどうなるのか

最近、インフレになったらどうな…

3年 ago

複利の話とiDeCoのすすめ

転職した会社には確定拠出年金が…

3年 ago