如何使用 Holoviews 将多个绘图保存到一个 .HTML 页面?

How can I save multiple plots to one .HTML page using Holoviews?

我构建了以下图形生成器,将点图导出到“scatter.html”:

import sys
import csv
import webbrowser
import pandas as pd
import holoviews as hv
from holoviews import opts
hv.extension("bokeh", "matplotlib")

SOURCE_FILE = "..\..\..\Assets\task_log.csv"
df = pd.read_csv(SOURCE_FILE, quoting=csv.QUOTE_ALL)
df["DATE"] = df["TIME"].str[:10]
key_dimensions = [("DATE", "Date"), ("HOST PROGRAM", "Host Program")]
value_dimensions = [("STATUS", "Status"), ("WORKING DIRECTORY")]

scatter_plot = hv.Points(df, key_dimensions, value_dimensions, label = "Script Overview")
scatter_plot.opts(size=8, cmap="prism_r", color="Status", width=900, xrotation=90,     
legend_position="bottom_left")

hv.save(scatter_plot, "scatter.html", backend="bokeh")

我想创建另一个 hv.Points() 对象并将其保存到同一个输出文件“scatter.html”。有没有办法在没有 Jupyter 笔记本的情况下显示多个图?

在 HoloViews 中组合两个图的一种方法是创建布局。
然后将组合图写入 html 文件。

关于 hv.Layout() 的文档:
http://holoviews.org/reference/containers/bokeh/Layout.html#containers-bokeh-gallery-layout

您可以简单地使用 + 符号来合并 2 个地块。那么您的代码将如下所示:

plot1 = hv.Points(df, key_dimensions, value_dimensions, label = "Script Overview")
plot2 = hv.Points(df, key_dimensions, value_dimensions, label = "Other plot")

combined_plot = plot1 + plot2

hv.save(combined_plot, "scatter.html", backend="bokeh")