如何更改全息视图数据集的kdims列表

时间:2017-08-08 20:39:22

标签: holoviews

我有一个表格数据集,它有多个列可能是某些图的关键维度。

ds = hv.Dataset(data_df, kdims=['time', 'forecasttime', 'group'], vdims=['speed'])

我可以初步使用曲线图:

ds.to(hv.Curve, kdims=['time'], vdims=['speed'])

这将在'forecasttime','group'上提供带有选择器小部件的时间序列曲线。

我想要实现的是绘制一条忽略关键尺寸'forecasttime','group'的曲线。虽然我可以通过以不同的方式定义我的数据集对象来实现相同的目标,如下所示:

ds = hv.Dataset(data_df, kdims=['time'], vdims=['speed'])
ds.to(hv.Curve, kdims=['time'], vdims=['speed'])

我希望在定义后,我可以从ds 的kdims中删除一个关键维度。我该怎么办?

我是holoviews的新手。也许我没有以正确的方式使用holoviews的Dataset对象。我也很感激任何建议。

1 个答案:

答案 0 :(得分:4)

您可以通过在groupby的调用中声明.to关键字为空来轻松忽略其他尺寸,例如

ds.to(hv.Curve, kdims=['time'], vdims=['speed'], groupby=[])

那说在曲线的情况下,忽略一个维度有点奇怪,你最终可能会在曲线上形成锯齿形曲线。由于我不知道您的数据结构,因此这可能是一件有效的事情。如果你想要覆盖每个曲线,那么这可能是你想要的东西:

ds.to(hv.Curve, kdims=['time'], vdims=['speed'], groupby=['group']).overlay()

或写得更简单:

ds.to(hv.Curve, 'time', 'speed', 'group').overlay()