首页 > 其他分享 >Echarts鼠标控制滚动以及自动滚动

Echarts鼠标控制滚动以及自动滚动

时间:2024-08-20 13:23:17浏览次数:8  
标签:false option dataZoom 组件 滚动 Echarts 鼠标

Echarts提供了鼠标控制滚动以及自动滚动的功能。

对于鼠标控制滚动,可以使用Echarts的toolbox组件来实现。首先需要在option中配置toolbox组件:

option = {
    toolbox: {
        feature: {
            dataZoom: {
                yAxisIndex: 'none' // 鼠标控制滚动时只控制x轴
            }
        }
    },
    dataZoom: [
          //滑动条
          {
            xAxisIndex: 0, //这里是从X轴的0刻度开始
            type: "slider", // 这个 dataZoom 组件是 slider 型 dataZoom 组件
            startValue: 0, // 从头开始。
            endValue: 2, // 一次性展示几个。
            show: false, //是否显示滑动条,不影响使用
            brushSelect: false, //刷选功能,设为false可以防止拖动条长度改变 ************(这是一个坑)
          },
          {
            type: "inside",
            xAxisIndex: 0,
            zoomOnMouseWheel: false, //滚轮是否触发缩放
            moveOnMouseMove: true, //鼠标滚轮触发滚动
            moveOnMouseWheel: true,
          },
        ],
    ...
};

在上述配置中,我们将toolbox的feature配置中的dataZoom的yAxisIndex设置为'none',表示鼠标控制滚动只控制x轴。然后通过dataZoom配置中的type:'slider'来显示滚动条,设置xAxisIndex为[0]表示只控制第一个x轴,zoomLock设置为true表示禁止通过鼠标拖拽来缩放。

对于自动滚动,可以使用Echarts的dataZoom组件和定时器来实现。首先需要在option中配置dataZoom组件:

option = {
    ...,
   dataZoom: [
          //滑动条
          {
            xAxisIndex: 0, //这里是从X轴的0刻度开始
            type: "slider", // 这个 dataZoom 组件是 slider 型 dataZoom 组件
            startValue: 0, // 从头开始。
            endValue: 2, // 一次性展示几个。
            show: false, //是否显示滑动条,不影响使用
            brushSelect: false, //刷选功能,设为false可以防止拖动条长度改变 ************(这是一个坑)
          },
          {
            type: "inside",
            xAxisIndex: 0,
            zoomOnMouseWheel: false, //滚轮是否触发缩放
            moveOnMouseMove: true, //鼠标滚轮触发滚动
            moveOnMouseWheel: true,
          },
        ],
    ...
};

然后,在代码中使用定时器来控制滚动:

 //定时器
 setInterval() {
      if (this.timeout) {
        clearInterval(this.timeout)
        this.timeout = null
      }
      //自动滚动
      this.timeout = setInterval(() => {
        if (this.option.dataZoom[0].endValue == this.yName.length - 1) {
          this.option.dataZoom[0].endValue = 5
          this.option.dataZoom[0].startValue = 0
        } else {
          this.option.dataZoom[0].endValue = this.option.dataZoom[0].endValue + 1
          this.option.dataZoom[0].startValue = this.option.dataZoom[0].startValue + 1
        }
        this.myChart.setOption(this.option)
      }, 4000)
    }

以上代码将会每4秒滚动一次

标签:false,option,dataZoom,组件,滚动,Echarts,鼠标
From: https://blog.csdn.net/qq_53616906/article/details/141252369

相关文章

  • Android开发 - HorizontalScrollView 类水平滚动超长视图使用解析
    基本概念HorizontalScrollView是一个容器,它允许包含的内容在水平方向上滚动。如果你有一块内容(比如一张宽大的图片或一个长长的水平列表),HorizontalScrollView能让用户通过左右滑动来查看超出屏幕的部分基本使用在布局文件(如activity_main.xml)中定义一个HorizontalScrol......
  • osk.exe 是“屏幕键盘”(On-Screen Keyboard)的可执行文件名,这是一种虚拟键盘应用程序,用
     osk.exe(屏幕键盘)的公开漏洞一般涉及以下几个方面:1. 安全性漏洞信息泄露:某些版本的osk.exe可能会在特定条件下泄露用户输入的信息,尤其是在使用输入法或进行敏感数据输入时。攻击者可能利用这些信息进行进一步的攻击或窃取数据。漏洞利用:有些恶意软件可能利用屏幕键盘......
  • 在Echarts中的图表中添加水印
    在Echarts中添加水印可以帮助你保护你的图表不被非法复制。水印可以是一个文本字符串、图像或两者的组合,它可以添加到图表的背景、标题或其他可见元素上。以下是如何在Echarts中添加水印的步骤:1创建水印首先,你需要创建一个水印。这可以是文本、图像或其他任何你想要的形状......
  • 鼠标键盘控制c++
     感觉鼠标控制挺好玩的 要想完成鼠标的一系列控制,首先你需要一个头文件:#include<windows.h> 以下是鼠标单击左键的代码,可以做成子程序(我是背下来的):mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);//按下左键Sleep(10);//要给一些应用反应时间mouse_event(MOUSEEVENTF_L......
  • Echarts
    echarts是一款基于JavaScript的数据可视化图表库,提供直观,生动,可交互,可个性化定制的数据可视化图表。ECharts最初由百度团队开源,并于2018年初捐赠给Apache基金会,成为ASF孵化级项目。1.echarts语法title:标题组件title:{text:'标题信息'}tooltip:提示框组件//图表......
  • 关于鸿蒙开发中滚动容器Scroll的介绍
    当子组件的布局尺寸超过Scroll的尺寸时,内容可以滚动。Scroll的核心用法用法说明:Scroll设置尺寸设置溢出的子组件【只支持一个子组件】滚动方向:支持横向和纵向,默认纵向Scroll(){//只支持一个子组件Column(){//内容放在内部//尺寸超过Scrol......
  • 滚动条属性overflow
    overflow:visible;-内容超出容器边界,无滚动条。overflow:hidden;-内容被截断,不显示超出部分,无滚动条。overflow:scroll;-内容超出容器,显示滚动条,无论是否需要滚动。overflow:auto;-内容超出容器时,自动出现滚动条。overflow-x和overflow-y;-分别用于控制水平方向和垂......
  • 【视频讲解】Python用LSTM长短期记忆网络GARCH对SPX指数金融时间序列波动率滚动预测
    全文链接:https://tecdat.cn/?p=37371 原文出处:拓端数据部落公众号本文融合了多种技术,其中LSTM(长短期记忆网络)和GARCH(广义自回归条件异方差)模型尤为关键。LSTM在处理时间序列数据方面独具优势,能够捕捉长期依赖关系,为金融预测提供强大支持。GARCH模型则能有效捕捉金融时间序......
  • Python数据分析项目实战01_票房榜单分析和pyecharts大屏可视化
    一:最终大屏效果展示由于生成了html网页只能在本地上显示,这个大屏是动态的,只能显示其中的图片。如果要分享给他人使用,就需要将html源码转为网页。生成的html源码入口:‬​‍​‌‌​⁠​​​‌‍​​​​​‬​​​​​‬​​​​‌​​​‌‍​​​​​⁠‌‬‌​​‌Python数......
  • [已解决] 使用向日葵远程控制在Ubuntu系统上控制Minecraft存在鼠标移动视角异常
    省流:使用Ctrl+Alt+Enter将当前鼠标指针切换到被控鼠标方指针。问题描述在使用向日葵远程控制连接到我的远程Ubuntu系统中游玩Minecraft时,发现鼠标视角的移动有问题。具体表现为,鼠标可以点击菜单、按钮等,也可以点击选择物品、左键摧毁物品、右键使用物品,然而移动鼠标......