import matplotlib.pyplot as plt # モジュールをインポートする T = [0.0] * 12 R = [0.0] * 12 # リストを宣言する # データを読みこむ print ("Input file?") ifile = input () # ファイル名を入力する f = open (ifile, "r") # ファイルを開く m = 1 while m <= 12: # 同じ処理を12回繰り返す a, b, c = f.readline().split() # データをファイルから読みこむ T[m-1] = float (b) # 気温と降水量の値を R[m-1] = float (c) # リストに代入する m = m + 1 # カウントをひとつ進める f.close () # ファイルを閉じる # 入力データを書き出す print ("Month Temp. Prec.") m = 1 while m <= 12: # 同じ処理を12回繰り返す print (" %4d %5.1f %6.1f" % (m, T[m-1], R[m-1])) # データを書き出す m = m + 1 # カウントをひとつ進める # ハイサーグラフを描く print ("Title?") title = input () # タイトルを入力する month = list (range (1, 13)) # 1〜12のリストを定義する month.append (month[0]) T.append (T[0]) # 12月と1月をつなぐため、 R.append (R[0]) # 12月の後に1月を追加する plt.title (title) # タイトルを付ける plt.xlim ( 0.0, 400.0) # x軸の範囲を指定する plt.ylim (-10.0, 30.0) # y軸の範囲を指定する plt.xlabel ("Precipitation [mm]") # x軸にラベルを付ける plt.ylabel ("Temperature [℃]") # y軸にラベルを付ける plt.grid () # 目盛り線を付ける plt.plot (R, T, color="#000000") # 折れ線を描く for i, label in enumerate (month): plt.text (R[i], T[i], label, ha="left", va="center") # データにラベルを付ける plt.show ()