【发布时间】:2017-10-21 04:37:18
【问题描述】:
当我将图表放在我的 tkinter 窗口上时,它会显示所有图表,而不仅仅是一个。我想要的方式是你按下一个按钮,相应的图表就会显示出来(连同其他一些数据)。我相信这是我的按钮的问题,因为它试图一次调用所有股票的功能,而不是根据你按下的按钮一次只调用一个。
import numpy as np
import datetime as dt
import yahoo_finance as yf
import matplotlib.pyplot as plt
from Tkinter import *
import quandl
from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg
root=Tk()
root.geometry('800x800')
root.title("Stock Information")
f1=Frame(root, width=100, height=100)
f1.pack()
today=dt.date.today()
thirty_days=dt.timedelta(days=43)
thirty_days_ago=today-thirty_days
def stock_info(stock_name):
stock=yf.Share(stock_name)
stock_price=stock.get_price()
name_price_label=Label(f1, text=(stock_name,':', stock_price),font=("Times New Roman",23))
name_price_label.grid(row=1, column=3)
data = quandl.get("WIKI/"+str(stock_name), start_date=str(thirty_days_ago), end_date=str(today),column_index=4)
fig = plt.figure(1)
t = np.arange(0.0,3.0,0.01)
s = np.sin(np.pi*t)
plt.plot(data)
canvas = FigureCanvasTkAgg(fig, master=f1)
plot_widget = canvas.get_tk_widget()
plot_widget.grid()
apple_button=Button(root,text='AAPL', command=stock_info('AAPL'))
tesla_button=Button(root,text='TSLA', command=stock_info('TSLA'))
google_button=Button(root,text='GOOG', command=stock_info('GOOG'))
apple_button.pack(anchor='w')
tesla_button.pack(anchor='w')
google_button.pack(anchor='w')
root.mainloop()
【问题讨论】:
标签: python-2.7 matplotlib tkinter