スポンサーリンク
2行×1列に画面分割してグラフを表示
画面分割してグラフを表示するには、下記のようにmatplotlibのsubplot()で設定できます。
import matplotlib.pyplot as plt plt.subplot(分割する行数, 分割する列数, 領域番号)
サンプルコードを下記に記載します。
下記のようにin.txtがあったとします。
$ cat in.txt 20160105,0,3,5 20160106,1,4,5 20160107,2,5,5 20160108,3,6,5 20160109,4,8,5 20160110,5,9,5 20160111,6,8,5 20160112,7,3,5 20160113,8,5,5
下記がサンプルコードになります。
$ cat sample1.py #!/usr/bin/env python3 # coding: UTF-8 import pandas as pd import matplotlib.pyplot as plt data = pd.read_csv('in.txt', names=('Date', 'Value1', 'Value2', 'Value3'), index_col='Date', parse_dates=True) print("dataの中身を出力") print (data) #3行 × 1列のグラフを設定 row = 2 col = 1 #1番目のグラフのプロット plt.subplot(row, col, 1) plt.plot(data.Value1) #2番目のグラフのプロット plt.subplot(row, col, 2) plt.plot(data.Value2) #グラフを表示 plt.show()
下記が実行結果になります。
$ ./sample1.py dataの中身を出力 Value1 Value2 Value3 Date 2016-01-05 0 3 5 2016-01-06 1 4 5 2016-01-07 2 5 5 2016-01-08 3 6 5 2016-01-09 4 8 5 2016-01-10 5 9 5 2016-01-11 6 8 5 2016-01-12 7 3 5 2016-01-13 8 5 5
下記が表示されたグラフになります。
スポンサーリンク
3行×1列に画面分割してグラフを表示
3行×1列に画面分割する場合のサンプルコードになります。
下記がサンプルコードになります。
$ cat sample.py #!/usr/bin/env python3 # coding: UTF-8 import pandas as pd import matplotlib.pyplot as plt data = pd.read_csv('in.txt', names=('Date', 'Value1', 'Value2', 'Value3'), index_col='Date', parse_dates=True) print("dataの中身を出力") print (data) #3行 × 1列のグラフを設定 row = 3 col = 1 #1番目のグラフのプロット plt.subplot(row, col, 1) plt.plot(data.Value1) #2番目のグラフのプロット plt.subplot(row, col, 2) plt.plot(data.Value2) #3番目のグラフのプロット plt.subplot(row, col, 3) plt.plot(data.Value3) #グラフを表示 plt.show()
下記が実行結果になります。
$ ./sample.py dataの中身を出力 Value1 Value2 Value3 Date 2016-01-05 0 3 5 2016-01-06 1 4 5 2016-01-07 2 5 5 2016-01-08 3 6 5 2016-01-09 4 8 5 2016-01-10 5 9 5 2016-01-11 6 8 5 2016-01-12 7 3 5 2016-01-13 8 5 5
下記が表示されたグラフになります。
分割したグラフにタイトルを設定
分割したグラフにタイトルを設定するには、subplot()の引数に、title='name'の形で設定します。
下記は、それぞれのグラフにタイトルを設定しています。
#3行 × 1列のグラフを設定 row = 3 col = 1 #1番目のグラフのプロット plt.subplot(row, col, 1, title='Graph1') plt.plot(data.Value1) #2番目のグラフのプロット plt.subplot(row, col, 2, title='Graph2') plt.plot(data.Value2) #3番目のグラフのプロット plt.subplot(row, col, 3, title='Graph3') plt.plot(data.Value3) #グラフを表示 plt.show()
スポンサーリンク