echarts-在X轴上标注特殊区域

复制代码
const box = document.querySelector('.box');
const e = echarts.init(box);
const arr1 = [300, 1280, 250, 260, 270, 300, 1050, 500, 120, 390, 380, 390, 400];
const arr2 = [12, 20, 30, 40, 50, 10, 4, 10, 5, 10, 20, 40, 10, 11, 20, 10, 12];
const option = {
  title: {
    text: '一天用电量分布',
    subtext: '纯属虚构'
  },
  tooltip: {
    trigger: 'axis',
    axisPointer: {
      type: 'cross'
    }
  },
  legend: {
    data: ['用电量', '用电率']
  },
  xAxis: {
    type: 'category',
    boundaryGap: false,
    data: ['07:30', '08:45', '10:00', '11:15', '12:30', '13:45', '15:00', '16:15', '17:30', '18:45', '20:00', '21:15', '22:30']
  },
  yAxis: [
    {
      type: 'value',
      axisLabel: {
        formatter: '{value} W'
      },
      splitLine: {
        show: true
      },
      axisPointer: {
        snap: true
      }
    },
    {
      type: 'value',
      axisLabel: {
        formatter: '{value} %'
      },
      splitLine: {
        show: false
      },
      axisPointer: {
        snap: true
      }
    }
  ],

  series: [
    {
      name: '用电量',
      type: 'line',
      smooth: true,
      smoothMonotone: "x",
      animation: true,
      showSymbol: false,
      symbol: "circle",
      symbolSize: 10,
      data: arr1,
      markArea: {
        data: [
          [
            {
              name: '早高峰',
              xAxis: '08:45'
            },
            {
              xAxis: '10:00'
            }
          ],
          [
            {
              name: '晚高峰',
              xAxis: '17:30'
            },
            {
              xAxis: '18:45'
            }
          ]
        ]
      }
    },
    {
      name: '用电率',
      type: 'line',
      yAxisIndex: 1,
      smooth: true,
      smoothMonotone: "x",
      showSymbol: false,
      symbol: "circle",
      symbolSize: 10,
      data: arr2
    }
  ]
};
e.setOption(option);

在x轴上做一些特殊标注,以更好的让用户看到某些特殊时间段的数据,比如日期中的节假日、时间中的早晚高峰一类。代码直接可用,Echarts 4.0、5.0都可用。

相关推荐
云水一下6 小时前
从零开始!VMware安装Fedora Workstation 44桌面系统完整教程
前端
小码哥_常7 小时前
安卓黑科技:实现多平台商品详情页一键跳转APP
前端
killerbasd7 小时前
还是迷茫 5.3
前端·react.js·前端框架
不会敲代码18 小时前
TCP/IP 与前端性能:从数据包到首次渲染的底层逻辑
前端·tcp/ip
kyriewen8 小时前
奥特曼借GPT-5.5干杯,而你的Copilot正按Token收钱
前端·github·openai
AC赳赳老秦8 小时前
投标合规提效:用 OpenClaw 实现标书 / 合同自动审核、关键词校验、格式优化,降低废标风险
开发语言·前端·python·eclipse·emacs·deepseek·openclaw
kyriewen8 小时前
代码写成一锅粥?3个设计模式让你的项目“起死回生”
前端·javascript·设计模式
不会敲代码19 小时前
从零搭建 AI 日记助手:用 Milvus 向量数据库实现语义搜索
javascript·openai
千寻girling9 小时前
《 Git 详细教程 》
前端·后端·面试
threelab10 小时前
Three.js UV 图像变换效果 | 三维可视化 / AI 提示词
javascript·人工智能·uv