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都可用。

相关推荐
光影少年3 分钟前
rn如何和原生进行通信,是单线程还是多线程,通信方式都有哪些
前端·react native·react.js·taro
好大哥呀23 分钟前
Java Web的学习路径
java·前端·学习
HashTang30 分钟前
【AI 编程实战】第 7 篇:登录流程设计 - 多场景、多步骤的优雅实现
前端·uni-app·ai编程
cos1 小时前
Fork 主题如何更新?基于 Ink 构建主题更新 CLI 工具
前端·javascript·git
小满zs1 小时前
Next.js第二十一章(环境变量)
前端·next.js
C***11501 小时前
Spring aop 五种通知类型
java·前端·spring
朝阳392 小时前
前端项目的【package-lock.json】详解
前端
摸鱼的春哥2 小时前
AI编排实战:用 n8n + DeepSeek + Groq 打造全自动视频洗稿流水线
前端·javascript·后端
nece0013 小时前
vue3杂记
前端·vue