如何保存Pywedge生成的交互式图表并保留交互性用于网站
完全可以保存并完整保留所有交互特性用于网站嵌入。Pywedge的交互式图表底层基于Plotly实现,你提到的点选图例激活/隐藏日期数据、悬停看数值、缩放这类交互能力,都是Plotly原生支持的前端功能,直接通过Plotly自带的导出接口就能导出可直接嵌入网页的文件,不需要额外做功能开发。
具体操作步骤
- 你原有的绘图逻辑不需要做任何修改,只需要在生成charts对象后,追加几行导出代码即可,完整示例代码如下:
# 原有Pywedge绘图代码保持不变 x = pw.Pywedge_Charts(df, c=None, y='Number_Trips') charts = x.make_charts() # 导出带完整交互能力的HTML文件 charts.write_html( "trips_interactive_chart.html", include_plotlyjs=True, full_html=True, config={"responsive": True} )
- 参数说明:
include_plotlyjs=True:会把Plotly运行需要的前端依赖全部打包进生成的单个HTML文件里,不需要联网加载额外资源,本地双击打开就能使用全部交互功能,所有原有交互逻辑100%保留。- 如果你要把图表嵌入到已经引入过Plotly JS依赖的现有网站中,可以把这个参数改成
include_plotlyjs=False,导出的文件体积会大幅缩小,你只需要把文件中包裹图表的<div>代码块复制到网页的对应位置,就能正常显示交互图表。 config={"responsive": True}是可选配置,开启后图表会自动适配网页容器的宽度,不会出现尺寸溢出、显示错位的问题。
注意:不要用导出PNG、JPG这类静态图片的方式保存,会完全丢失交互能力。导出完成后可以先在本地双击打开HTML文件,验证点选图例、缩放等交互功能是否正常,确认无误后再上传到网站服务器使用。
内容的提问来源于stack exchange,提问作者Hermion
相关产品推荐
相关产品推荐

