0

0

交互图表如何设置离线查看_交互图表离线使用配置【技巧】

絕刀狂花

絕刀狂花

发布时间:2026-02-11 16:19:02

|

738人浏览过

|

来源于php中文网

原创

离线查看交互式图表需避免依赖在线CDN:一、用plotly.io.to_html导出含内嵌JS的HTML;二、预下载Plotly.js并本地引用;三、PyWebIO中集成离线Plotly片段;四、GChart加载本地JSON;五、Highcharts本地化部署。

交互图表如何设置离线查看_交互图表离线使用配置【技巧】

如果您希望在无网络连接的环境中查看交互式图表,则可能因图表库默认依赖在线CDN加载JavaScript资源而失败。以下是实现交互图表离线查看的多种配置方法:

一、使用plotly.io.to_html导出含内嵌JS的HTML文件

该方法将Plotly图表及其全部JavaScript依赖打包进单个HTML文件,确保完全离线可运行。

1、创建Plotly图表对象,例如使用plotly.express或plotly.graph_objects构建图形。

2、调用plotly.io.to_html函数,设置参数include_plotlyjs=True,确保Plotly.js代码被完整嵌入HTML中。

3、将返回的HTML字符串写入本地文件,例如使用open("chart.html", "w", encoding="utf-8").write(html_str)。

4、双击生成的chart.html文件,即可在任意浏览器中离线打开并操作缩放、悬停、图例切换等交互功能。

二、预下载Plotly.js并本地引用

避免重复嵌入大体积JS代码,适用于需批量生成多个离线图表的场景;通过统一引入本地Plotly.js提升加载效率与一致性。

1、从Plotly官方GitHub Release页面下载最新plotly-latest.min.js文件,保存至项目本地static/js/目录下。

2、使用plotly.io.to_html时,设置include_plotlyjs='directory',并指定directory参数为本地路径(如'./static/js')。

3、确保生成的HTML文件与该JS目录结构保持相对路径一致,否则图表无法初始化。

4、关键提示:必须保证HTML中script标签实际加载的是本地JS文件,可通过浏览器开发者工具Network面板验证无外部域名请求

三、在PyWebIO中集成离线Plotly图表

适用于构建轻量级离线数据看板应用,利用PyWebIO作为前端容器,规避传统Web服务器依赖。

1、在Python脚本中创建Plotly图表对象fig。

2、调用plotly.io.to_html(fig, include_plotlyjs=True, full_html=False)获取仅含div和内联JS的HTML片段。

Hot Tattoo AI
Hot Tattoo AI

人工智能纹身生成器,提供独特的纹身创意

下载

3、使用PyWebIO的put_html()函数直接输出该HTML片段。

4、注意:full_html=False是必需设置,否则会生成重复的html/body标签,导致PyWebIO渲染异常

四、基于GChart的JSON数据源离线方案

适用于已存在结构化数据文件的场景,通过纯前端方式加载本地JSON并驱动GChart渲染,全程不触网。

1、准备data.json文件,内容为符合Google Charts数据格式的二维数组或DataTable JSON序列化结果。

2、在index.html中引入本地存储的google-charts-loader.js(可从官方离线包提取)。

3、使用XMLHttpRequest或fetch API读取同目录下的data.json文件,禁用CORS检查(需通过file://协议外的本地服务器访问,或启用浏览器--unsafely-treat-insecure-origin-as-secure标记)。

4、解析JSON后调用google.visualization.arrayToDataTable()构造数据表,并绑定至ColumnChart或LineChart实例。

五、Highcharts本地化部署方案

利用Highcharts官方提供的离线发行包,消除对code.highcharts.com等CDN的运行时依赖。

1、下载Highcharts完整压缩包(包含highcharts.js、modules/exporting.js等所有必要模块)。

2、解压后将js文件统一存放于项目本地lib/highcharts/路径下。

3、在HTML中按需顺序引入:
– 先引入highcharts.js
– 再引入所需扩展模块,如exporting.js、accessibility.js

4、初始化图表时,确保options中不设置任何远程资源路径,例如exporting.sourceWidth等参数仅影响导出行为,不触发网络请求。

5、验证要点:打开浏览器开发者工具,在Offline模式下刷新页面,确认Console无报错、Network无红色失败请求

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
json数据格式
json数据格式

JSON是一种轻量级的数据交换格式。本专题为大家带来json数据格式相关文章,帮助大家解决问题。

436

2023.08.07

json是什么
json是什么

JSON是一种轻量级的数据交换格式,具有简洁、易读、跨平台和语言的特点,JSON数据是通过键值对的方式进行组织,其中键是字符串,值可以是字符串、数值、布尔值、数组、对象或者null,在Web开发、数据交换和配置文件等方面得到广泛应用。本专题为大家提供json相关的文章、下载、课程内容,供大家免费下载体验。

544

2023.08.23

jquery怎么操作json
jquery怎么操作json

操作的方法有:1、“$.parseJSON(jsonString)”2、“$.getJSON(url, data, success)”;3、“$.each(obj, callback)”;4、“$.ajax()”。更多jquery怎么操作json的详细内容,可以访问本专题下面的文章。

317

2023.10.13

go语言处理json数据方法
go语言处理json数据方法

本专题整合了go语言中处理json数据方法,阅读专题下面的文章了解更多详细内容。

81

2025.09.10

Node.js后端开发与Express框架实践
Node.js后端开发与Express框架实践

本专题针对初中级 Node.js 开发者,系统讲解如何使用 Express 框架搭建高性能后端服务。内容包括路由设计、中间件开发、数据库集成、API 安全与异常处理,以及 RESTful API 的设计与优化。通过实际项目演示,帮助开发者快速掌握 Node.js 后端开发流程。

5

2026.02.10

js 字符串转数组
js 字符串转数组

js字符串转数组的方法:1、使用“split()”方法;2、使用“Array.from()”方法;3、使用for循环遍历;4、使用“Array.split()”方法。本专题为大家提供js字符串转数组的相关的文章、下载、课程内容,供大家免费下载体验。

488

2023.08.03

js截取字符串的方法
js截取字符串的方法

js截取字符串的方法有substring()方法、substr()方法、slice()方法、split()方法和slice()方法。本专题为大家提供字符串相关的文章、下载、课程内容,供大家免费下载体验。

214

2023.09.04

java基础知识汇总
java基础知识汇总

java基础知识有Java的历史和特点、Java的开发环境、Java的基本数据类型、变量和常量、运算符和表达式、控制语句、数组和字符串等等知识点。想要知道更多关于java基础知识的朋友,请阅读本专题下面的的有关文章,欢迎大家来php中文网学习。

1547

2023.10.24

2026春节习俗大全
2026春节习俗大全

本专题整合了2026春节习俗大全,阅读专题下面的文章了解更多详细内容。

68

2026.02.11

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
R 教程
R 教程

共45课时 | 6.5万人学习

Bootstrap 5教程
Bootstrap 5教程

共46课时 | 3.3万人学习

ASP 教程
ASP 教程

共34课时 | 4.8万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号