OrbGuiClassは、2つの静的なローソク足チャートとTkinterのGUIを作成し、いずれかの更新機能を実行しません。データはcsvsから取得されます。そのため、コードはあなたのために実行されません。 3番目のグラフは、私が生きていたいトップレベルのグラフです。キャンバス、GUIなどの外部で動作しますが、GUI FuncAnimationは実行されていません。私はそれがクラスの外にある例を見ましたが、これはどちらもうまくいきません。更新ライブチャートは、プロットが表示されますが、一度か繰り返し
class OrbGuiClass:
def __init__(self,root):
self.root=root
self.frame1=tk.Frame(root)
self.day_data=[self.dt,self.o,self.h,self.l,self.c]
self.tenwty_four=[self.ddt,self.oo,self.hh,self.ll,self.cc]
self.create_canvas()
self.create_live_canvas()
self.frame1.grid(row=4,column=2)
def create_canvas(self):
self.fig=Figure(figsize=(8,4))
self.ax1=self.fig.add_subplot(121,title='24 Hour Chart')
self.ax2=self.fig.add_subplot(122,title='Day Chart')
candlestick2_ochl(self.ax1,self.oo[9:len(self.oo)],
self.hh[9:len(self.hh)],self.ll[9:len(self.ll)],
self.cc[9:len(self.cc)])
candlestick2_ochl(self.ax2,self.o,self.h,self.l,self.c)
self.canvas = FigureCanvasTkAgg(self.fig, master=root)
self.canvas.get_tk_widget().grid(row=1,column=0,
columnspan=2,rowspan=2,sticky="ne")
self.canvas.show()
def create_live_canvas(self):
toplevel = tk.Toplevel()
self.fig2=Figure(figsize=(4,4), dpi=100)
self.ax=self.fig2.add_subplot(111)
self.canvas2 = FigureCanvasTkAgg(self.fig2, toplevel)
self.canvas2.show()
self.canvas2.get_tk_widget().pack()
self.anim=animation.FuncAnimation
(self.fig2,self.update,frames=100,interval=25)
def update(self, dummy):
#get_data() is a web crawling function that returns OHLC values
O,H,L,C= get_data()
self.ax=plt.gca()
self.ax.clear()
self.ax.set_xlim([-.5,.5])
candlestick2_ohlc(self.ax,O,H,L,C,width=.2,
colorup='g',colordown='r',alpha=1.0)
root = tk.Tk()
app=OrbGuiClass(root)
root.mainloop()
アニメーションを作成する前に、FigureのキャンバスをGUIに配置して表示する必要があります。今、あなたは自転車用の部品をいくつか持っており、フェラーリの作り方を尋ねています。あなたのコードはそのまま実行されず、あなたを助けてくれません。 –
コードを見れば、なぜそれが動作しないのかわかりません。したがって、問題自体は実際には明らかではありません。コードも[mcve]ではないので、潜在的な障害の原因を判断することは実際には不可能です。写真にとどまるには、車輪なしでフォードを工場に持ってきて、エンジンに問題があるかどうか聞いてみましょう。 – ImportanceOfBeingErnest
私は、最小、完全、および検証可能なサンプルレコードを確認し、問題を再現するコードを更新します。意味をなさないこれに新しいので、私をよろこんでください。 –