hvplot seems to work:
import numpy as np
import holoviews as hv
import panel as pn
import pandas as pd
hv.extension('bokeh')
xs = np.linspace(0, np.pi*4, 40)
ys = np.sin(xs)
zs = ys > 0
df = pd.DataFrame({"x": xs, "y": ys, "z": zs})
ds = hv.Dataset(df)
ds.to.area("x", "y", "z").overlay()
import hvplot.pandas
df.hvplot.area('x', 'y', by='z')
