いつもお世話になっております。
pythonでグラフを描くコードを.pyファイルとして保存しておき、
そのpyファイルをダブルクリックすると、「このファイルを開く方法」と表示され、
Anacondaフォルダ内のpythonw.exeを指定しますと、以下の様なFigure1のウインドゥが表示されます
これが便利で重宝するのですが、
なぜかこれができない.pyファイルがあり、困っています。
たとえば、以下の様なCSVファイルを読み込んで、
ベクトル表示できるコードを皆さまのご協力のもとに作成したのですが、
datetime current orient
0 2018-05-29 23:00:00 24.1 38.2
1 2018-05-29 23:10:00 24.1 37.3
2 2018-05-29 23:20:00 22.5 43.5
3 2018-05-29 23:30:00 23.2 39.9
4 2018-05-29 23:40:00 21.5 40.2
5 2018-05-29 23:50:00 21.7 45.4
6 2018-05-30 00:00:00 21.1 51.9
7 2018-05-30 00:10:00 22.9 42.3
8 2018-05-30 00:20:00 22.2 43.1
#モジュールのインポート import matplotlib.pyplot as plt import pandas as pd import numpy as np #csvの読み込み df = pd.read_csv('ocean_current3.csv',encoding='ANSI',parse_dates=[0]) a = df['current'] b = df['orient'] #データ間引き #データの表示範囲を選択(1行目から1000行目までを選択) df = df.iloc[0:1000:] #流向の度数→radian変換 c = np.radians(b) #ベクトルの成分計算 u = a*np.sin(c) v = a*np.cos(c) #ベクトルの起点を設定 time_len = len(df['datetime']) x = np.arange(time_len) y = np.zeros(len(x)) #グラフの格子を設定する fig, ax = plt.subplots(1,1,figsize=(20, 5)) #水平線・鉛直線の挿入 ax.axhline(color='black', linewidth=1) ax.axvline(color='red', linewidth=0) #X軸の目盛を設定する dt_labels = [dt.strftime('%m/%d') for dt in df['datetime']] ax.set_xticks(x[::10]) ax.set_xticklabels(dt_labels[::10], rotation=0, fontsize='small') #ベクトル表示 q = ax.quiver(x, y, u, v,width=0.002,scale_units='y',scale=1,\ headlength=0, headwidth=0, headaxislength=0) #ベクトルのキー表示 ax.quiverkey(q, 0.2, 0.9, 25,'25cm/s',labelpos='N', coordinates='axes') #y軸の目盛を設定する ax.set_ylim(-50, 50) plt.yticks(np.arange(-50,50,10)) #x軸、y軸にラベルを表記 ax.set_xlabel('datetime',fontsize=13) ax.set_ylabel('current(cm/s)',fontsize=13) #グリッド表示 plt.grid(color='gray',linestyle=':',linewidth='0.5') plt.show()
これを.pyファイルとして保存したものを、pythonで開いて
上記画像(Figure1)のようなことを行うことができません。
ファイルを開くときの青い円は出てくるのですが途中で消えて何も起こらなくなります。
でもどういうわけか、別のパソコンだと何故か開けて表示できるのです。
どちらもwindows10です。いつも初歩的な質問で申し訳ありませんが、
どなたかご教授頂けませんでしょうか?
あなたの回答
tips
プレビュー