news 2026/3/1 5:39:48

创建自定义 Highcharts 包使用文档说明

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
创建自定义 Highcharts 包使用文档说明

由于使用 ES 模块,您可以创建自己的定制 Highcharts 包。 使用自定义文件的一个好处是可以优化浏览器加载速度, 因为文件体积更小,请求的文件也更少。

按照以下步骤开始操作。

安装 Highcharts

访问highcharts/highcharts
仓库,点击“代码”并选择“下载 ZIP”。下载完成后,将压缩包解压到想要的位置。

以下步骤需要 Node.js,您可以从
Node.js 官网 下载并安装。Highcharts 支持长期支持(LTS)版本。

安装好 Node.js 后,打开你的命令行、终端或控制台,然后进入解压后的文件夹highcharts-master。在这里,你需要运行npm install来安装构建自定义 Highcharts 文件所需的依赖项。

创建一个自定义主文件

在你的编辑器中,进入解压后的文件夹highcharts-master/ts/masters/,并创建一个新文件,例如命名为custom.src.ts。在这个例子中,我们需要一个基本的折线图。为了实现这一点,我们需要一个列出所有必要 ES 模块的设置,如下所示:

/** * @license Highcharts JS v@product.version@ (@product.date@) * @module highcharts/highcharts * * (c) 2009-2024 Highcharts AS * * License: www.highcharts.com/license */'use strict';importHighchartsfrom'../Core/Globals.js';importSVGRendererfrom'../Core/Renderer/SVG/SVGRenderer.js';importChartfrom'../Core/Chart/Chart.js';importLineSeriesfrom'../Series/Line/LineSeries.js';constexports:Record<string,any>=Highcharts;exports.Renderer=SVGRenderer;exports.SVGRenderer=SVGRenderer;exports.Chart=Chart;exports.chart=Chart.chart;exports.LineSeries=LineSeries;exportdefaultHighcharts;

根据你的需求修改设置,然后继续下一步。请注意,导入的 ES 模块的顺序有时必须与每个文件的依赖关系相匹配。因此,额外的可选内容应放在最后。有关顺序信息,请参阅其他示例。

查看现有的主文件,获取类似的示例。

创建自定义包文件

运行npx gulp scripts --force来将所有包文件从主文件构建出来。也可以选择额外运行npx gulp scripts-compile,以获得压缩版本。

在我们的示例中,新的文件ts/masters/custom.src.ts变成了新的包文件code/custom.src.js。压缩版可以在
code/custom.js找到。你可以从code/文件夹中取出这些包文件,并在你的项目中使用它们。

对于兼容ESM的文件,你需要复制code/es-modules/文件夹。可以根据需要重命名这个文件夹。这个文件夹可能很大,但ESM只会从中挑选必要的文件用于你的项目。像parcelwebpack这样的打包工具可以帮助你在项目的最后阶段进一步优化加载时间。

如果你想在新包文件code/custom.src.js之外添加声明,请运行npx gulp jsdoc-dts --custom.

使用你的自定义包文件

根据我们的安装指南 installation ,你可以将自定义包文件作为ES6模块引用……

<html><body><divid="container"></div><scripttype="module">importHighchartsfrom'./esm/custom.js';Highcharts.chart('container',{series:[{type:'line',data:[1,32,42]}]});</script></body></html>

或者用传统方式,带有一个 script 标签:

<html><head><scriptsrc="custom.src.js"></script></head><body><divid="container"></div><script>Highcharts.chart('container',{series:[{type:'line',data:[1,32,42]}]});</script></body></html>
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/21 12:13:55

大数据领域数据编目:保障数据质量的关键

大数据领域数据编目&#xff1a;保障数据质量的关键 关键词&#xff1a;大数据、数据编目、数据质量、元数据管理、数据治理、数据标准化、数据溯源 摘要&#xff1a;在大数据时代&#xff0c;数据量呈指数级增长&#xff0c;数据的复杂性也日益提高。数据编目作为数据治理的…

作者头像 李华
网站建设 2026/2/27 19:00:10

SeedVR视频修复工具:AI智能画质增强全面指南

SeedVR视频修复工具&#xff1a;AI智能画质增强全面指南 【免费下载链接】SeedVR-7B 项目地址: https://ai.gitcode.com/hf_mirrors/ByteDance-Seed/SeedVR-7B 还在为那些模糊不清的珍贵视频而困扰吗&#xff1f;那些承载着美好回忆的家庭录像、毕业典礼记录和旅行片段…

作者头像 李华
网站建设 2026/2/21 20:15:43

REE白皮书发布:比特币如何突破可编程性瓶颈?

一、REE的技术定位与核心目标 REE&#xff08;Runes Exchange Environment&#xff09;是一个比特币原生执行层&#xff0c;旨在不依赖跨链桥或分叉的情况下&#xff0c;为比特币L1实现图灵完备的智能合约功能。其核心目标是通过以下设计解决比特币的可编程性瓶颈&#xff1a; …

作者头像 李华
网站建设 2026/2/26 23:33:15

USB磁盘安全弹出终极解决方案:告别数据丢失的烦恼

USB磁盘安全弹出终极解决方案&#xff1a;告别数据丢失的烦恼 【免费下载链接】USB-Disk-Ejector A program that allows you to quickly remove drives in Windows. It can eject USB disks, Firewire disks and memory cards. It is a quick, flexible, portable alternative…

作者头像 李华
网站建设 2026/2/23 16:03:09

DT_digital_twin_ROS+Grazebo仿真

在 ROS 2 Humble&#xff08;对应Ubuntu 22.04&#xff09;环境下&#xff0c;推荐安装Gazebo 版本是 Gazebo Fortress &#xff08;也称为Gazebo Classic 的继任者&#xff0c;属于 Ignition Gazebo / Gazebo Sim 系列&#xff09;。注意&#xff1a;自ROS 2 Humble起&#xf…

作者头像 李华
网站建设 2026/2/28 6:32:58

毕业设计项目 stm32与深度学习口罩佩戴检测系统(源码+硬件+论文)

文章目录 0 前言1 主要功能2 硬件设计(原理图)3 核心软件设计4 实现效果5 最后 0 前言 &#x1f525; 这两年开始毕业设计和毕业答辩的要求和难度不断提升&#xff0c;传统的毕设题目缺少创新和亮点&#xff0c;往往达不到毕业答辩的要求&#xff0c;这两年不断有学弟学妹告诉…

作者头像 李华