[seaborn] 6. 時系列データをlineplotの線グラフで表示する

python

はじめに

簡単かつ簡潔にデータを可視化できるライブラリであるseabornを用いて、時系列データの線グラフをlineplotで表示する方法について説明する。

コード

解説

モジュールのインポートなど

データの読み込み

3/8の京都の気象データを下記サイトから読み込む。

気象庁|過去の気象データ検索
過去の気象データ検索

時系列データの作成とDataFrameへの追加

baseから1時間刻みで増加する配列を作成する。先程読み込んだDataFrameに新しい列として[‘dates’]を作成して、作成した配列を入れる。
最終的なDataFrameは以下のようになる。(上位五行)

現地 海面 降水量(mm) 気温(℃) 露点温度(℃) 蒸気圧(hPa) 湿度(%) 風速 風向 日照時間(h) 全天日射量(MJ/㎡) 降雪 積雪 天気 雲量 視程(km) dates
0 1 1010.2 1016.6 0.0 11.2 2.5 7.3 55 3.2 東北東 NaN NaN NaN NaN 20.00 2020-03-08 01:00:00
1 2 1009.6 1016.0 0.0 10.8 3.4 7.8 60 4.3 NaN NaN NaN NaN 20.00 2020-03-08 02:00:00
2 3 1008.7 1015.1 0.0 10.2 3.7 8.0 64 2.2 東北東 NaN NaN NaN NaN 20.00 2020-03-08 03:00:00
3 4 1008.5 1014.9 0.5 10.1 4.1 8.2 66 0.9 北北西 NaN NaN NaN NaN 9.73 2020-03-08 04:00:00
4 5 1007.8 1014.2 1.0 9.7 6.1 9.4 78 2.5 北東 NaN NaN NaN NaN 13.40 2020-03-08 05:00:00

時系列線グラフの表示

x軸が”dates”, y軸が”気温(℃)”の線グラフを作成する。locatorにAutoDateLocator、formatterにConciseDateFormatterを用いると以下のグラフが得られる。

なお、ConciseDateFormatterについては下記記事で説明した。

[matplotlib] 54. ConciseDateFormatterで時系列グラフの軸ラベルをシンプルにする
matplotlib.datesのConciseDateFormatterで時系列グラフの目盛りラベルを簡潔に表示する方法について説明する。

目盛りを2時間毎に表示したグラフ

locatorとして、mdates.HourLocatorを用い、interval=2とすることで2時間毎に目盛りを表示したグラフを得ることができる。

コードをダウンロード(.pyファイル)

コードをダウンロード(.ipynbファイル)

参考

Visualizing statistical relationships — seaborn 0.13.2 documentation

コメント