我想与ipywidgets Dropdown进行交互,继续创建条形图。条形图的条形可以以不同的方式订购。
我有一个我希望提供的排序类型的枚举作为选项:
class SORT_TYPE(Enum):
ALPHABETICAL = 1
ASCENDING = 2
DESCENDING = 3
UNSORTED = 4
我有一个下拉小部件,其值使用上面的枚举
ordering_dropdown = widgets.Dropdown(
options={'Alphabetical': SORT_TYPE.ALPHABETICAL, \
'Ascending': SORT_TYPE.ASCENDING, \
'Descending': SORT_TYPE.DESCENDING, \
'Unsorted': SORT_TYPE.UNSORTED},
value=SORT_TYPE.ALPHABETICAL,
description='Ordering: ',
)
但是当我在互动中使用它时
interactive(my_func, p1=p1, p2=p2, ordering=ordering_dropdown)
我明白了
ValueError: <SORT_TYPE.ALPHABETICAL: 1> cannot be transformed to a widget
你知道我做错了什么吗?
提前致谢。
回答自己。图中的错误是因为枚举不是固定类型。把枚举改成了
SORT_TYPE={'ALPHABETICAL': 1,\
'ASCENDING': 2,\
'DESCENDING': 3,\
'UNSORTED': 4}
和下拉到
ordering_dropdown = widgets.Dropdown(
options={'Alphabetical': SORT_TYPE['ALPHABETICAL'], \
'Ascending': SORT_TYPE['ASCENDING'], \
'Descending': SORT_TYPE['DESCENDING'], \
'Unsorted': SORT_TYPE['UNSORTED']},
value=SORT_TYPE['ALPHABETICAL'],
description='Ordering: ',
)
它现在表现得好一些。