我想创建一个python的股票价值图,其中的滚动条基于一个下拉菜单。下拉菜单基于我的pandas数据框的列标题,其中包含每家公司调整后的收盘价。dataframe data_df包含我的数据以及下拉菜单中我想要的列标题。如果我在运行plot_w时没有将其定义为需要两个参数,则它可以运行。当我将dataframe, ticker传入定义时,它不能运行。我的目标是当我在下拉列表中更改滚动条时,它应该改变绘图。我当前的代码:
import matplotlib.pyplot as plt
import ipywidgets as widgets
import pandas as pd
def plot_w(dataframe,ticker):
I = data_df.columns == ticker
print(data_df.loc[:, I].head(10))
#Code fails in the line below.
df = dataframe.loc[:, I].plot(x=dataframe.index, y=dataframe[ticker], style=['-bo'], figsize=(8, 5), fontsize=11, legend='False')
plt.plot(df[ticker], label = ticker)
#plt.plot(df["AMZN"], label = "Amazon")
plt.legend(loc = "upper center", shadow = True, fontsize = "small", facecolor = "black")
plt.show()
widgets.interact(plot_w,
dataframe = widgets.fixed(data_df),
ticker = widgets.Dropdown(
options=data_df.columns,
value='ATVI',
description='Company ticker:',
disabled=False,
)
)前面在代码中定义了dataframe。数据帧的片段

。和我的错误的一小段

发布于 2019-05-21 19:45:49
我通过重置我的数据框的索引并将发生错误的行更改为
plt = dataframe.loc[:, ['Date',ticker]].plot(x='Date', y=ticker, style=['-bo'], figsize=(8, 5), fontsize=11, legend='False')https://stackoverflow.com/questions/56234947
复制相似问题