首页 > 解决方案 > 更改 holoviewplot (hv.BoxWhisker) 上的 x 或 y 轴

问题描述

我正在玩一个包含一些全息图的散景应用程序。我现在有一个显示 x=k1 和 y=v1 的 BoxWhisker 图,其中提供给 BoxWhisker-plot 的 DataFrame 也包含 k2 和 v2。

现在,当我通过下拉选择小部件 k2 或 v2 进行选择时,我想更新 BoxWhisker-plot 以使用 k2 而不是 k1 和 v2 而不是 v1 来显示箱形图。我将如何实现这一目标?

这是设置的一些代码

src = get_data_frame() # contains 4 cols: k1,k2,v1,v2

k_select = Select(value='k1',options=['k1','k2'])
v_select = Select(value='v1',options=['v1','v2'])

k_select.on_change('value', update)
v_select.on_change('value', update)

renderer = hv.renderer('bokeh').instance(mode='server')
plot = hv.BoxWhisker(src, k_select.value, v_select.value)
plot_render = renderer.get_plot(plot, curdoc())

def update(attr, old, new):
   # HOW TO CHANGE THE AXIS IN THE PLOT?

controls = WidgetBox(k_select, v_select)

# Create a row layout
layout_design = row(controls, plot_render.state)

标签: pythonbokehholoviews

解决方案


这对于Panel来说应该是微不足道的,它基于 Bokeh,但可以更简单地设置由小部件控制的绘图。


推荐阅读