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

Antd折线图为何出现多余X轴宽度?如何移除18:30-18:47冗余轴段

解决Antd Charts时序图X轴多余宽度问题

要移除18:30之后的多余X轴部分,核心是手动指定X轴的时间范围,不让图表自动扩展超出数据的区间。可以按以下方式修改配置:

  • 先从数据res中提取时间边界:

    • 取数据里最早的时间作为X轴起始(可选,不需要限制左边界可忽略)
    • 取数据里最晚的时间(即18:30对应的时间值)作为X轴终点
  • 在xAxis配置中添加min和max属性,强制限定X轴的显示范围:

修改后的完整配置代码:

// 从数据中提取最大时间(即最后一条数据的time字段)
const maxTime = res.length > 0 ? res[res.length - 1].time : null;
// 可选:提取最小时间
const minTime = res.length > 0 ? res[0].time : null;

const config = {
    width: window.innerWidth - 100,
    data: res,
    xField: 'time',
    yField: 'value',
    seriesField: 'key',
    yAxis: {
      title: { position: 'center', text: labelText, autoRotate: true },
      grid: {
        line: {
          style: {
            stroke: '#ddd',
          },
        },
      },
    },
    xAxis: {
      type: 'time',
      mask: 'HH:mm Z',
      // 新增min和max限定X轴范围
      min: minTime,
      max: maxTime,
      label: {
        formatter: (value) => {
          if (timezone === 'utc') {
            return moment(value, 'HH:mm ZZ').utc().format('HH:mm Z');
          }
          return moment(value, 'HH:mm').format('HH:mm Z');
        },
      },
      grid: {
        line: {
          style: {
            stroke: '#ddd',
          },
        },
      },
    },
    tooltip: {
      customItems: (originalItems) => {
        return originalItems.sort(function (a, b) {
          return b.value - a.value;
        });
      },
    },
  };

配置完成后,图表X轴会严格匹配数据实际覆盖的时间区间,不会再出现多余的空白部分。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.21 15:57:15