首页 > 解决方案 > 使用 Holoviews 在同一轴上绘制两组数据

问题描述

我创建了一个数据框,如下所示:

Waves1        Waves2       Data1     Data2_1     Data2_2
100           100          0.05      0.10       0.20
101           110          0.075     0.50       0.75
102           125          0.10      0.75       0.96
 .             .            .         .          . 
 .             .            .         .          .

我想使用 Holoviews 绘制 x 轴为 Waves 的叠加图(1 和 2,因为它们是相同类型的数据,只是对应不同的数据集)。

我到目前为止的代码:

vdims = [('Data1', 'Data1'),('Data2_1','Data2.1'),('Data2_2','Data2.2')]
ds = hv.Dataset(new_df, ['Waves1', 'Waves2'], vdims)

curve_opts = dict(height=300, width = 600, tools=['hover'], xrotation=90, color=hv.Cycle(['lightseagreen','blue','indianred','coral']),  line_width=0.5)

curve = hv.Curve(new_df, 'Waves1','Data1')*hv.Curve(new_df, 'Waves2','Data2_1')
layout = curve.options({'Curve':curve_opts})

plot = hv.renderer('bokeh').get_plot(layout)
hv.ipython.display(plot)

我得到下图,其中一个轴结束,另一个轴在此之后开始(请忽略标签/值的差异)。此外,x 轴被弄乱了——它显示了每个值而不是正确的比例。

在此处输入图像描述

标签: pythonpython-3.xpandasholoviews

解决方案


推荐阅读