我正在使用python Dash创建仪表板,并试图将六个组件(下拉和范围滑块)链接到单个图形。但是,每当尝试引用此行代码将范围滑块链接到图形时,都会遇到上述错误
columns=list(range(year_name[0], year_name[1]+1, 1))
我意识到他们说的是上面的代码行产生0或没有产生错误的值。但是我不明白怎么可能,因为列表值是通过函数中的变量year_name传递的。以下是完整的回调
def update_graph(country_name,category_name,brand_name,year_name,time_name,measure_name):
Total1=Total[Total['Country_Name'] == country_name]
Total2=Total1[Total1['Equipment_Category'] ==category_name]
Total3=Total2[Total2['Manufacturer_Name'] ==brand_name]
columns=list(range(year_name[0], year_name[1]+1, 1))
Total4=pd.DataFrame()
for i in Total3.columns:
if i in columns:
Total4[i]=Total3[i]
x=Total4[time_name]
y=Total4[measure_name]
trace1=go.Bar(x=x,y=y,marker=dict(
color='rgb(0,191,255)', # code for sky blue 0,191,255
line=dict(
color='rgb(8,48,107)',
width=1.5,
)),opacity=0.6,name='Units')
layout=go.Layout(xaxis={'title': 'Time Frame'},
title= 'Shipment',
hovermode='closest',
margin={"t": 25, "l": 25, "r": 25},
height=225)
return {'data':[trace1],
'layout':[layout]}
我是否需要更改此行:
columns=list(range(year_name[0], year_name[1]+1, 1))
也许会摆脱列表功能,因为从技术上来说year_name是已经通过的列表值?