在holoviews(或hvplot)中带有标记的线图

时间:2019-11-30 17:41:43

标签: python holoviews hvplot holoviz

我知道如何使用holoviews / hvplot制作线图。
但是如何将数据点的标记添加到线图中?

情节应该看起来像这样:

markers added to lineplot

下面是一些示例代码:

# import libraries
import numpy as np
import pandas as pd

import hvplot.pandas
import holoviews as hv

# create sample data
df = pd.DataFrame({
    'date_col': pd.date_range(start='1-1-2020', freq='m', periods=12),
    'value_col': np.random.normal(size=12),
})

1 个答案:

答案 0 :(得分:0)

您可以将标记与散点图结合起来,将其添加到折线图中。

在Holoviews中,这称为overlay,并且可以使用*符号来完成此覆盖。

Hvplot解决方案

# create a line plot
line_plot = df.hvplot.line(
    x='date_col', 
    y='value_col',
)

# scatter plot with some extra styling options just for fun
scatter_plot = df.hvplot.scatter(
    x='date_col',
    y='value_col',
).opts(color='black', size=20, marker='o')

# overlay the scatterplot on the lineplot to get markers added to your lineplot
line_plot * scatter_plot

Holoviews解决方案

# overlay the scatter plot on the curve by using the * symbol
hv.Curve(df) * hv.Scatter(df).opts(color='black', size=20, marker='o')