You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Highcharts中如何将分类与日期关联(附示例代码)

如何在Highcharts中实现分类与日期的关联?

我来给你拆解下具体的实现思路和代码示例——核心是通过时间戳映射分类时段,把不同的分类和对应的日期区间绑定,再结合Highcharts的时间轴配置来实现关联展示。

实现步骤说明

  1. 先定义起始时间戳,然后生成不同分类对应的时段时间戳数组,用来划分不同的分类区间;
  2. 构造关联数据:把每个分类对应的时间范围和数值绑定;
  3. 在Highcharts配置中把x轴设置为时间类型,让图表自动解析时间戳为日期,同时配置对应的系列数据。

完整示例代码

// 定义起始时间戳(对应某一具体日期的毫秒数)
const current = 1246406400000;
const arrayShifts = [];
const arrayTimestampActual = [];

// 生成6个分类时段的起始时间戳(每个分类时段持续6小时)
for (let i = 0; i < 6; i++) { 
  arrayShifts[i] = current + (i * 6 * 3600 * 1000); 
}

// 生成更细粒度的时间戳(每小时一个,用于辅助时间轴刻度)
for (let i = 0; i <= 18; i++) { 
  arrayTimestampActual[i] = current + (i * 1 * 3600 * 1000); 
}

// 构造分类与日期关联的数值区间数据
// 格式:[时段结束时间戳, 最小值, 最大值],每个分类对应一个时间范围的数值
const color3 = [ 
  [arrayShifts[0], 27, 40], 
  [arrayShifts[1] - 60000, 27, 40], 
  [arrayShifts[1], 30, 50], 
  [arrayShifts[2] - 60000, 30, 50], 
  [arrayShifts[2], 40, 60], 
  [arrayShifts[3] - 60000, 40, 60], 
  [arrayShifts[3], 35, 55], 
  [arrayShifts[4] - 60000, 35, 55], 
  [arrayShifts[4], 28, 42], 
  [arrayShifts[5] - 60000, 28, 42], 
  [arrayShifts[5], 25, 38], 
  [arrayShifts[5] + 6 * 3600 * 1000 - 60000, 25, 38]
];

// 初始化Highcharts图表
Highcharts.chart('container', {
  xAxis: {
    type: 'datetime', // 将x轴设置为时间轴类型
    labels: {
      format: '{value:%H:%M}' // 自定义时间显示格式,这里显示小时和分钟
    }
  },
  yAxis: {
    title: {
      text: '数值范围'
    }
  },
  tooltip: {
    formatter: function() {
      // 自定义提示框,显示日期和数值范围
      return `<b>${Highcharts.dateFormat('%Y-%m-%d %H:%M', this.x)}</b><br/>
              数值范围: ${this.y[0]} - ${this.y[1]}`;
    }
  },
  series: [{
    name: '分类时段数据',
    type: 'arearange', // 使用面积范围图展示分类对应的数值区间
    data: color3.map(item => [item[0], item[1], item[2]])
  }]
});

关键细节解释

  • 用时间戳来划分分类的时间区间,每个分类对应一个连续的日期范围,比如示例中每个分类占6小时;
  • arearange类型的系列可以直观展示每个分类时段的数值区间,你也可以根据需求换成其他类型(如columnrange);
  • x轴设置为datetime后,Highcharts会自动把时间戳转换成可读性强的日期格式,也可以通过labels.format自定义显示样式。

内容的提问来源于stack exchange,提问作者Soni007

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 11:17:19