如何将Databricks生成的KeplerGl地图嵌入SharePoint并实现交互?
解决方案
一、使用keplergl 0.2.0的嵌入功能
- 安装指定版本
在Databricks笔记本中运行安装命令:!pip install keplergl==0.2.0 - 生成带嵌入支持的HTML
创建地图实例后,用save_html方法直接生成可嵌入文件,替代_repr_html_():
其中from keplergl import KeplerGl # 基于已创建并配置好的map_1实例 map_1.save_html(file_name='kepler_embed_map.html', read_only=False)read_only=False会保留地图的拖拽、缩放等交互功能,匹配你需要的效果。 - 嵌入SharePoint
将生成的HTML文件上传到SharePoint文档库,在SharePoint页面添加嵌入web部件,选择引用文档库中该HTML文件的链接,即可完成交互嵌入。
二、导入Mapbox再嵌入的步骤
- 导出KeplerGl地图配置
在Databricks中导出地图的JSON配置文件:map_config = map_1.config import json with open('kepler_map_config.json', 'w') as f: json.dump(map_config, f) - 导入到Mapbox Studio
打开Mapbox Studio创建新样式,在编辑器中点击“添加层”→“从文件导入”,上传导出的JSON配置,调整样式和交互参数(如缩放、弹窗)后发布样式。 - 生成嵌入代码
发布后进入“分享”选项,选择“嵌入”复制生成的iframe代码。 - 嵌入SharePoint
在SharePoint页面添加嵌入web部件,粘贴复制的iframe代码即可实现交互嵌入。
三、无需降级版本的替代方案
直接将KeplerGl生成的HTML内容包裹进iframe标签:
- 用
map_1._repr_html_().decode("utf-8")获取HTML内容,将其替换到以下代码的srcdoc属性中:<iframe srcdoc="替换为获取到的HTML内容" width="100%" height="600px" frameborder="0"></iframe> - 若HTML内容过长,可先将其保存为文件上传到SharePoint文档库,再将iframe的
src指向该文件的链接,最后把iframe代码粘贴到SharePoint的嵌入web部件中。
内容的提问来源于stack exchange,提问作者cacopmo
相关产品推荐
相关产品推荐

