如何用pyecharts创建的多个可视化html集成到一个html里
时间: 2024-02-23 12:26:59 浏览: 181
可以使用Pyecharts的Page类来创建多个可视化图表并将它们集成到一个HTML文件中。
以下是一个示例代码:
```python
from pyecharts.charts import Bar, Line, Pie
from pyecharts import options as opts
from pyecharts.globals import ThemeType
from pyecharts.render import make_snapshot
# 创建一个 Bar 图表
bar_chart = Bar(init_opts=opts.InitOpts(theme=ThemeType.LIGHT))
bar_chart.add_xaxis(["A", "B", "C", "D", "E"])
bar_chart.add_yaxis("Series 1", [10, 20, 30, 40, 50])
bar_chart.set_global_opts(title_opts=opts.TitleOpts(title="Bar Chart"))
# 创建一个 Line 图表
line_chart = Line(init_opts=opts.InitOpts(theme=ThemeType.LIGHT))
line_chart.add_xaxis(["A", "B", "C", "D", "E"])
line_chart.add_yaxis("Series 1", [50, 40, 30, 20, 10])
line_chart.set_global_opts(title_opts=opts.TitleOpts(title="Line Chart"))
# 创建一个 Pie 图表
pie_chart = Pie(init_opts=opts.InitOpts(theme=ThemeType.LIGHT))
pie_chart.add("Series 1", [("A", 10), ("B", 20), ("C", 30), ("D", 40), ("E", 50)])
pie_chart.set_global_opts(title_opts=opts.TitleOpts(title="Pie Chart"))
# 将多个图表集成到一个 HTML 文件中
from pyecharts.components import Table
from pyecharts.options import ComponentTitleOpts
table = Table()
headers = ['Chart Name', 'Chart Preview']
rows = [
['Bar Chart', make_snapshot(bar_chart.render(), 'bar_chart.png')],
['Line Chart', make_snapshot(line_chart.render(), 'line_chart.png')],
['Pie Chart', make_snapshot(pie_chart.render(), 'pie_chart.png')],
]
table.add(headers, rows)
# 创建一个 Page 对象
from pyecharts.components import Page
page = Page(layout=Page.SimplePageLayout)
page.add(table)
# 保存为 HTML 文件
page.render("multi_chart.html")
```
在这个示例中,我们首先创建了三个不同类型的图表(柱状图、折线图和饼图),然后通过 make_snapshot 函数将它们的预览图像加入到一个 Table 组件中。
接着,我们使用 Page 类来创建一个页面对象,并将 Table 组件添加到该页面中。最后,我们将整个页面保存为一个 HTML 文件。
运行该代码后,会生成一个名为 multi_chart.html 的文件,其中包含了三个图表的预览图像和表格。
阅读全文