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

关于AnyChart Stock中X轴使用Julian date(儒略日期)的技术咨询

在AnyChart Stock中使用儒略日期(Julian Date)

完全可以在AnyChart Stock中实现X轴的儒略日期格式显示,核心是两步:将儒略日期转换为图表可识别的Date对象,再自定义X轴格式化函数将Date转回儒略日期展示。

步骤1:实现儒略日期与Date对象的互转函数

首先需要编写两个工具函数,分别用于把儒略日期转换为JavaScript的Date对象,以及把Date对象转回儒略日期:

// 儒略日期转Date对象
function julianToDate(jd) {
  const a = Math.floor(jd + 0.5);
  const b = a + 1537;
  const c = Math.floor((b - 122.1) / 365.25);
  const d = Math.floor(365.25 * c);
  const e = Math.floor((b - d) / 30.6001);
  const day = b - d - Math.floor(30.6001 * e);
  const month = e < 14 ? e - 1 : e - 13;
  const year = month > 2 ? c - 4716 : c - 4715;
  return new Date(year, month - 1, day);
}

// Date对象转儒略日期
function dateToJulian(date) {
  const year = date.getFullYear();
  const month = date.getMonth() + 1;
  const day = date.getDate();
  if (month < 3) {
    year--;
    month += 12;
  }
  const a = Math.floor(year / 100);
  const b = 2 - a + Math.floor(a / 4);
  return Math.floor(365.25 * (year + 4716)) + Math.floor(30.6001 * (month + 1)) + day + b - 1524.5;
}

步骤2:处理图表数据

把你的儒略日期数据通过julianToDate转换为Date对象,供AnyChart Stock识别:

// 示例数据:[儒略日期, 股价]
const rawData = [
  [2459900.5, 150],
  [2459901.5, 152],
  [2459902.5, 148],
  // 更多数据...
];

// 转换为图表可接受的格式:[Date, 数值]
const chartData = rawData.map(item => [julianToDate(item[0]), item[1]]);

步骤3:配置X轴的儒略日期格式化

在图表配置中,指定X轴的标签格式化函数,调用dateToJulian把Date对象转回儒略日期显示:

// 初始化股票图表
anychart.onDocumentReady(function() {
  const chart = anychart.stock();
  const plot = chart.plot(0);
  
  // 添加数据系列
  const series = plot.line(chartData);
  series.name('股票价格');
  
  // 配置X轴标签格式
  chart.xAxis().labels().format(function() {
    // 将当前轴的Date值转为儒略日期,保留1位小数
    return dateToJulian(this.value).toFixed(1);
  });
  
  // 渲染图表
  chart.container('container');
  chart.draw();
});

常见问题排查

如果之前自定义格式化失败,大概率是这两个原因:

  • 没有先把儒略日期转换为Date对象,图表无法识别原始儒略数值为时间轴数据
  • 格式化函数中没有正确处理this.value(AnyChart格式化函数中this.value对应轴的原始值,这里是Date对象)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 20:43:52