我正在关注使用 Panel 和 Altair 的本教程[ github ]。
返回我的情节的函数如下:
@pn.depends(ticker.param.value, date_range_slider.param.value)
def get_plot(ticker, date_range):
df = data.stocks()
df['date'] = pd.to_datetime(df['date'])
start_date, end_date = date_range
mask = (df['date'] > start_date) & (df['date'] <= end_date)
dfm = df.loc[mask]
chart = (alt.Chart(dfm)
.mark_line()
.encode(
x='date', y='price',
tooltip=alt.Tooltip(['date', 'price']))
.transform_filter((datum.symbol == ticker))
)
return chart
我遇到了一个问题,如果直接执行,图表会正常显示:
但不是在使用 Panel 运行时:
似乎当我将工作chart
放入 apanel
时,它会丢失与数据的链接:
服务仪表板也有同样的问题,所以在我看来,Panel 和 Altair 之间存在兼容性问题。
有谁知道出了什么问题以及如何解决?
版本:
- 面板 - v0.6.0
- Altair - v3.2.0
- 熊猫 - v0.25.1
- JupyterLab - v1.0.2
- Python - v3.7.4