用Highcharts如何动态向一个序列添加点-示列讲解

动态向 Highcharts 序列添加点通常用 series.addPoint()

最常见写法是:

javascript 复制代码
Highcharts.chart('container', {
  chart: {
    type: 'line'
  },
  title: {
    text: '动态添加点'
  },
  xAxis: {
    type: 'datetime'
  },
  series: [{
    name: '随机数据',
    data: [
      [Date.UTC(2026, 7, 5, 10, 0, 0), 10],
      [Date.UTC(2026, 7, 5, 10, 1, 0), 12]
    ]
  }]
});

setInterval(function () {
  const chart = Highcharts.charts[0];
  const series = chart.series[0];
  const x = (new Date()).getTime();
  const y = Math.round(Math.random() * 100);

  series.addPoint([x, y], true, false);
}, 1000);

参数说明

series.addPoint(point, redraw, shift, animation)

  • point:要添加的数据点,例如 12[x, y],或对象 { x, y }
  • redraw:是否立即重绘,通常设为 true
  • shift:是否移除最早的一个点,适合实时曲线
  • animation:是否动画更新

实时折线常见用法

如果你希望图表像监控面板一样持续滚动,可以用:

javascript 复制代码
series.addPoint([x, y], true, true);

这样每添加一个新点,就会移除最旧的点。

官方文档

相关推荐
计算机魔术师6 小时前
德国Wiki被黑后两周,OpenAI终于把模型失控的账本摊开了
前端
kyriewen7 小时前
我让 AI 当面试官面了我一轮:第 3 个追问我就卡住了(附 10 道追问清单)
前端·面试·ai编程
IT_陈寒7 小时前
Python的GIL把我坑惨了,多线程跑得比单线程还慢
前端·人工智能·后端
前端snow7 小时前
ai agent --- 多agent框架之图编排引擎-langgraph
前端
竹林8187 小时前
OmniPic Studio v3.2.1 核心技术架构与全平台发版解析文档
前端·浏览器
JamesZhang800787 小时前
页面内存只涨不跌? 一次泄漏排查, 牵出 WeakMap 的诞生
前端
Z小明7 小时前
第 6 章 组件进阶
前端·vue.js
江华森7 小时前
HTTP请求的完整过程详解:从DNS解析到TCP挥手的微秒级实战分析
前端
南青7 小时前
Vue 3 中后台实战:我踩过的 10 个坑和最佳实践
前端
江华森7 小时前
HTTPS协议详解——SSL/TLS握手、证书与加密通信
前端