Highcharts时间线图(Timeline Chart)完全指南:事件序列的可视化叙事图表

在数据可视化世界里,有一种图表专门用来回答一个问题:"事情是按什么顺序发生的?"

很多数据不是简单的数值对比,而是一连串事件。产品发布、项目里程碑、公司发展史、历史事件------这些数据天然带有时间维度。

------这正是 Timeline Chart(时间线图) 的舞台。

在 Highcharts 中,Timeline 是一个专门用于展示**事件序列(Event Sequence)**的图表类型,它将关键节点沿时间轴排列,并通过视觉连接形成一条清晰的"事件轨迹"。

一句话理解:Timeline = 时间轴 + 关键事件节点。

它不是统计图,而是一种数据叙事工具(Data Storytelling)。

Highcharts Timeline chart 时间线图

时间线图表可视化了重要事件在一段时间内的变化。带有时间线系列的图表会将每个数据点显示为沿水平或垂直线的单独事件。时间线系列也被称为时间线示意图。

对于时间线系列中定义的每个点,都会放置一个带有描述性文本的标记。建议将较长的事件描述放在工具提示中。这样,在悬停在数据点上时,描述信息就会显示出来。默认情况下,工具提示会显示数据系列点的description属性所指定的文本。

开始使用Highcharts Timeline chart 时间线图

时间线系列需要同时加载 Highcharts 和 timeline.js 模块。

以下是将时间线加载到网页的示例:

html 复制代码
<script src="https://code.highcharts.com/highcharts.js"></script>
<script src="https://code.highcharts.com/modules/timeline.js"></script>

数据格式

时间线图中的事件可以通过两种方式进行可视化:

  1. 将时间线划分为与系列数据中指定的数据点数量相等的时间段。

  2. 将事件放置在与日期时间轴相关联的位置。这样就可以显示所有点之间的确切时间间隔。

上述两种可视化时间线的方式,其时间线系列数据的结构是不同的。

Highcharts时间线图的系列数据,包含时间段

该系列数据没有设置x属性:

js 复制代码
 data: [{
    name: 'Some date',
    label: 'Event label',
    description: 'Description of this event.'
}, {
    name: 'Another date',
    label: 'Another event label',
    description: 'Description of second event'
}]

与日期时间轴相关联的事件

要在日期时间轴上放置事件,可以将 x 属性设置为自 1970 年以来的时间戳(以毫秒为单位)。

系列数据示例:

js 复制代码
data: [{
    x: 1514764800000,
    name: 'Event name',
    label: 'Event label',
    description: 'Description of this event.'
}, {
    x: 1526774400000,
    name: 'Event name',
    label: 'Another event label',
    description: 'Description of second event'
}]

下方的演示展示了太空探索的时间线。演示中显示了均匀的时间间隔

下方的演示还展示了太空探索的关键时刻,但它扩展了更多事件,并在datetime轴上显示了实时日期。

竖直方向的时间线

若要显示垂直时间线,将chart.inverted设置为true。

交替显示标签

在dataLabels配置中使用alternate属性,以交替放置数据标签(在点的两侧)。

其他配置选项

自定义时间线图表,提供大多数Highcharts图表的标准选项,如数据标签的宽度、距离或使用点属性、颜色、x、标记或连接器。在下面的演示中,数据点属性中的颜色属性用于设置时间线中某一部分的颜色。

下方的演示展示了时间线系列图中不同元素的样式。

相关推荐
ZC跨境爬虫5 小时前
跟着MDN学HTML_day_48:(Node接口)
前端·javascript·ui·html·音视频
kyriewen8 小时前
半夜三点线上崩了,AI替我背了锅——用AI排错,五分钟定位三年老bug
前端·javascript·ai编程
Cloud_Shy6189 小时前
Python 数据分析基础入门:《Excel Python:飞速搞定数据分析与处理》学习笔记系列(第八章 使用读写包操作 Excel 文件 上篇)
python·数据分析·excel·pandas
AI_paid_community9 小时前
98.5k Star!GitHub官方开源的这个工具,正在把"vibe coding"扫进历史的垃圾桶
javascript·claude
AI_paid_community9 小时前
用 Claude Code 写了一年代码,装了这 18 个 Skills 之后,我才知道自己一直在"氛围编程"
javascript·面试
小白学大数据10 小时前
基于大模型的Python智能爬虫:语义识别与数据清洗实践
开发语言·爬虫·python·数据分析
Cloud_Shy61810 小时前
Python 数据分析基础入门:《Excel Python:飞速搞定数据分析与处理》学习笔记系列(附录 B 高级 VS Code 功能)
vscode·python·jupyter·数据分析·excel
隔壁老王111110 小时前
浅谈JavaScript内存管理
javascript
吹牛不交税10 小时前
tree-transfer-vue3 前端插件安装问题解决(--legacy-peer-deps)(其他插件可考虑)适用
前端·javascript·vue.js