私はtowプロットを使ってデータをグラフ化する予定です。 2番目のサブプロットには、株価、移動平均(ウィンドウ= 5)、移動平均(ウィンドウ= 8)、移動平均(ウィンドウ= 13) 。add_subplot関数を使用したときに凡例が表示されない
株価(インデックスとして日付を使用)の深刻なデータを最初に取得すると、移動平均である深刻なデータを作成するためにemaという関数を定義します。
その後、rsiというデータを作成するためにrsiという関数も作成します。
次に、graph_with_indicatorという次の関数を定義しようとします。 この関数では、最初にすべてのemaと株価をデータフレームとして結合します 次に、rsi seriousを作成します。
次に、最初のデータフレームをプロットするためにadd_subplot(211)を使用しました。 その後、add_subplot(212)を使ってrsiをプロットしました。
実際には、伝説を除いてうまくいきます。 rsi凡例のみ作成できますが、最初のグラフは作成できません。
誰でも私にこれを手伝ってもらえますか?
私の最初のグラフはデータフレームですが、2番目のグラフは重大なものなので、2番目のグラフの伝説を生成できますか?
もう1つの質問があります。実際にすべてのデータを1つのデータフレームにまとめてサブプロットを別々に作成できますか?たとえば、5列のデータフレームを取得し、最初の2つの列を最初のサブプロットに、最後の2つの列を2番目のサブプロットに生成します。ここで
は私のコードです:
def graph_with_indicator(stock):
#5,8,13
df = pd.DataFrame(stock)
name = str(df.columns[0])
windows = [5,8,13]
for window in windows:
df_tmp = ema(stock,window)
df = df.join(df_tmp)
stock_rsi = rsi(stock,14)
fig = plt.figure()
fig.suptitle(name, fontsize=20)
ax1 = fig.add_subplot(211)
ax1.xaxis.set_visible(False)
ax2 = fig.add_subplot(212)
ax1.plot(df)
ax2.plot(stock_rsi)
ax1.legend(loc='upper left')
ax2.legend(loc='upper left')
plt.subplots_adjust(left= 0.1, bottom= 0.1, right= 0.98, top= 0.9, wspace= 0, hspace= 0.1)
plt.show()
ありがとうございます。わかった。 –