echarts柱状图和折线图滑动条 自动变更

本文介绍了如何在ECharts柱状图中使用dataZoom组件实现滑动条控制数据展示,并通过事件监听实现图表区域点击导航。通过设置dataZoom的startValue和endValue动态调整视图范围,配合定时器实现自动滚动效果。
摘要由CSDN通过智能技术生成
 dataZoom: [
            // 滑动条
            {
              xAxisIndex: 0, // 这里是从X轴的0刻度开始
              show: true, // 是否显示滑动条,不影响使用
              type: 'slider', // 这个 dataZoom 组件是 slider 型 dataZoom 组件
              startValue: 0, // 从头开始。
              endValue: 4, // 一次性展示6个。
              moveHandleSize: 6, // 高度
              fillerColor: '#023661', // 选中范围的填充颜色
              borderColor: '#023661', // 边框颜色。
              backgroundColor: '#023661', // 组件的背景颜色
              left: '10%', // 左边的距离
              right: '10%', // 右边的距离
              textStyle: {
                color: '#fff' // 滚动条两边字体样式
              },
              height: '1%'
            },
            {
              type: 'inside',
              show: true,
              xAxisIndex: [0],
              start: 0, // 默认为1
              end: 100, // 默认为100
              moveOnMouseWheel: false,
              preventDefaultMouseMove: false
            }
          ],....

     const that = this
        const myChartCategory = echarts.init(this.$refs.category1) // 柱状图
        myChartCategory.getZr().on('click', params => { // 点击柱状图事件
          const pointInPixel = [params.offsetX, params.offsetY]
          if (myChartCategory.containPixel('grid', pointInPixel)) {
            const xIndex = myChartCategory.convertFromPixel({ seriesIndex: 0 }, [params.offsetX, params.offsetY])[0]
           
            this.$router.push(/xxx’)
          }
        })
        myChartCategory.setOption(option)
        setInterval(() => { // 自动跳
          // 每次向后滚动一个,最后一个从头开始。
          if (option.dataZoom[0].endValue == data.length + 1) {
            option.dataZoom[0].endValue = 4
            option.dataZoom[0].startValue = 0
          } else {
            option.dataZoom[0].endValue = option.dataZoom[0].endValue + 1
            option.dataZoom[0].startValue = option.dataZoom[0].startValue + 1
          }
          myChartCategory.setOption(option)
        }, 5000)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值