echarts时间段折线图,横坐标偏移

实现的效果如图

1777是3点到6点的值,横坐标往左移动就好了

 悬浮的标记是自定义的

 贴一下整个代码吧

setChart() {
      let max = 0;
      max = Math.max(...this.data.data) + 800; //y轴最大值
      let option = {
        grid: {
          top: " 0%",
          left: "5%",
          right: "5%",
          bottom: "8%",
          containLabel: true,
        },
        tooltip: {
          trigger: "axis",
          axisPointer: {
            type: "none",
          },
          showDelay: 20, // 显示延迟,添加显示延迟可以避免频繁切换,单位ms
          hideDelay: 100, // 隐藏延迟,单位ms
          transitionDuration: 0.4, // 动画变换时间,单位s
          backgroundColor: "rgba(0,0,0,0.7)", // 提示背景颜色,默认为透明度为0.7的黑色
          borderColor: "#333", // 提示边框颜色
          borderRadius: 4, // 提示边框圆角,单位px,默认为4
          borderWidth: 0, // 提示边框线宽,单位px,默认为0(无边框)
          padding: 5,
          textStyle: {
            color: "#FFFFFF",
            fontSize: 16,
            fontFamily: "DIN-Medium",
          },
          formatter: function (params) {
            let oneData = params[0].name; //前一个时间  03:00
            if (oneData == "") {
              oneData = "00:00";
            }
            let one = params[0].name.substring(0, 2).replace(/\b(0+)/gi, ""); //03:00  ->  3
            let two = (Number(one) + 3).toString(); //加上时间间隔3  -> 6
            let twoData = two + ":00"; //后一个时间 6:00
            if (two.length == 1) {
              twoData = "0" + two + ":00";
            }
            console.log(twoData);
            return oneData + "-" + twoData + " : " + params[0].value + "人";
          },
        },
        xAxis: [
          {
            boundaryGap: ["0", "0"],
            type: "category",
            axisLine: {
              show: false, //是否显示坐标轴轴线。
            },
            axisTick: { show: false }, //是否显示坐标轴刻度。
            axisLabel: {
              color: "#FFFFFF",
              fontSize: 16,
              fontFamily: "DIN-Medium",
              interval: 0, //强制显示所有标签。
              padding: [0, 0, 0, -60],
            },
            data: this.dataX,
          },
        ],
        yAxis: [
          {
            type: "value",
            max: max,
            min: 0,
            // interval: 5, //分隔
            axisLine: {
              show: false, //y轴竖线不显示
            },
            axisTick: { show: false }, //是否显示坐标轴刻度线条。
            axisLabel: {
              color: "#FFFFFFFF",
              showMaxLabel: false,
              fontSize: 16,
              fontFamily: "DIN-Medium",
            },
            splitLine: {
              show: false,
            },
          },
        ],
        series: [
          {
            name: "",
            type: "line",
            areaStyle: {
              color: {
                //背景渐变色
                type: "linear",
                x: 0,
                y: 0,
                x2: 1, //从左到右,但不能从上到下,需要借助辅助系列
                y2: 0,
                colorStops: [
                  {
                    offset: 0,
                    color: "#98F8D3", // 0% 处的颜色
                  },
                  {
                    offset: 0.3,
                    color: "#02BFF1", // 100% 处的颜色
                  },
                  {
                    offset: 0.5,
                    color: "#339CFF", // 100% 处的颜色
                  },
                  {
                    offset: 1,
                    color: "#917FFF", // 100% 处的颜色
                  },
                ],
                globalCoord: false, // 缺省为 false
              },
            },

            label: {
              show: true,
              color: "#23DCFD",
              fontSize: 18,
              fontFamily: "DIN-Medium",
            },
            color: {
              //线条渐变色
              type: "linear",
              x: 0,
              y: 0,
              x2: 1, //从左到右,但不能从上到下,需要借助辅助系列
              y2: 0,
              colorStops: [
                {
                  offset: 0,
                  color: "#98F8D3", // 0% 处的颜色
                },
                {
                  offset: 0.3,
                  color: "#02BFF1", // 100% 处的颜色
                },
                {
                  offset: 0.5,
                  color: "#339CFF", // 100% 处的颜色
                },
                {
                  offset: 1,
                  color: "#917FFF", // 100% 处的颜色
                },
              ],
              global: false, // 缺省为 false
            }, //背景渐变色
            //折点显示数值
            barWidth: 10,
            barCategoryGap: 10,
            data: this.data.data,
            smooth: true,
          },
        ],
      };
      let myChart = this.$echarts(this.$el);

      myChart.clear();
      myChart.resize();
      myChart.setOption(option);
    },

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值