Echarts图表设置x轴y轴均随滚轮滚动缩+放 区域缩放

简介: Echarts图表设置x轴y轴均随滚轮滚动缩+放 区域缩放

@[toc]

echarts中设置x轴和y轴均随滚轮进行缩放

dataZoom 组件 用于区域缩放,从而能自由关注细节的数据信息,或者概览数据整体,或者去除离群点的影响。

  •   option: {
         
         
          xAxis: [
              {
         
         ...}, // 第一个 xAxis
              {
         
         ...}, // 第二个 xAxis
              {
         
         ...}, // 第三个 xAxis
              {
         
         ...}  // 第四个 xAxis
          ],
          dataZoom: [
              {
         
         
                  type: 'inside',
                  show: true,
                  // 数据窗口范围的起始百分比。范围是:0 ~ 100。表示 0% ~ 100%。
                  start: 0,
                  // 数据窗口范围的结束百分比。范围是:0 ~ 100。
                  end: 100,
                  zoomOnMouseWheel: 'ctrl',
                  // 第一个 dataZoom 组件
                  xAxisIndex: [0, 2] // 表示这个 dataZoom 组件控制 第一个 和 第三个 xAxis
              },
    
          ]
      }
    
  • type: 'inside' : 内置型数据区域缩放组件
  • start: 0, :数据窗口范围的起始百分比。范围是:0 ~ 100。表示 0% ~ 100%。
  • end: 100,数据窗口范围的结束百分比。范围是:0 ~ 100。
  • zoomOnMouseWheel: 'ctrl' 表示按住 ctrl 和鼠标滚轮能触发缩放
    在这里插入图片描述

当数据实时渲染时,也可进行区域缩放

当我们 echarts 图表中的数据是通过websocket或其他方式实时渲染的【多用于折线图绘制】,那此刻需要对图表进行区域缩放时,就会失败,因为当新的数据传过来,echarts会重新根据点来实时绘制,从而无法保留上次的缩放结果

针对以上问题,在与师父研究之后得出如下结论
echartInstance.setOption(newValue,true)改为echartInstance.setOption(newValue)

  • 更改前
    <script setup lang="ts">
      let echartInstance;
      // option 是数据data中的option
      watch(option,(newValue)=>{
          
          
          echartInstance.setOption(newValue,true)
      },{
          
          deep:true});
      onMounted(()=>{
          
          
          echartInsance = echart.init(echartRef.value,'macarons');
          echartInstance.setOption(option.value,true)
      })
    </script>
    
  • 更改后
    <script setup lang="ts">
      let echartInstance;
      // option 是数据data中的option
      watch(option,(newValue)=>{
          
          
          echartInstance.setOption(newValue)
      },{
          
          deep:true});
      onMounted(()=>{
          
          
          echartInsance = echart.init(echartRef.value,'macarons');
          echartInstance.setOption(option.value)
      })
    </script>
    
相关文章
|
1月前
|
JavaScript API
Echarts中单独为每个legend图例设置样式-根据数据正负显示不同样式
通过上述方法,我们便能够在ECharts中根据数据的正负为每个图例项设置不同的样式,增强了图表的可读性和表现力。这种方法虽然略显间接,但不失为一种灵活的解决方案。
54 2
|
1月前
|
小程序 前端开发 JavaScript
微信小程序图表制作利器:ECharts组件的使用与技巧
微信小程序图表制作利器:ECharts组件的使用与技巧
51 1
|
28天前
|
JavaScript
vue中使用echarts绘制双Y轴图表时,刻度没有对齐的两种解决方法
vue中使用echarts绘制双Y轴图表时,刻度没有对齐的两种解决方法
184 0
|
2月前
|
Web App开发 数据可视化 前端开发
Echart的使用初体验,Echarts的基本使用及语法格式,简单图表绘制和使用及图例添加【学习笔记】
本文介绍了ECharts的基本使用和语法格式,包括如何引入ECharts、创建容器、初始化echarts实例对象、配置option参数和一些基础图表的绘制方法。文章还提供了简单图表绘制和使用图例添加的示例代码,以及对ECharts特性和优势的概述。
Echart的使用初体验,Echarts的基本使用及语法格式,简单图表绘制和使用及图例添加【学习笔记】
|
3月前
|
小程序 JavaScript
微信小程序使用echarts图表(ec-canvas)
这篇文章介绍了在微信小程序中使用`ec-canvas`集成echarts图表的方法,包括解决加载时报错的问题、配置图表组件、以及在小程序页面中引入和使用这些图表组件的步骤。
456 1
微信小程序使用echarts图表(ec-canvas)
|
3月前
|
前端开发 数据可视化 JavaScript
Echarts如何实现多图表缩放和自适应?附源码
Echarts如何实现多图表缩放和自适应?附源码
Echarts如何实现多图表缩放和自适应?附源码
|
3月前
|
XML SQL JavaScript
在vue页面引入echarts,图表的数据来自数据库 springboot+mybatis+vue+elementui+echarts实现图表的制作
这篇文章介绍了如何在Vue页面中结合SpringBoot、MyBatis、ElementUI和ECharts,实现从数据库获取数据并展示为图表的过程,包括前端和后端的代码实现以及遇到的问题和解决方法。
在vue页面引入echarts,图表的数据来自数据库 springboot+mybatis+vue+elementui+echarts实现图表的制作
|
3月前
Echarts——如何默认选中图表并显示tooltip
Echarts——如何默认选中图表并显示tooltip
59 1
|
3月前
|
JavaScript
Echarts——VUE中非根节点时不显示图表也无报错
Echarts——VUE中非根节点时不显示图表也无报错
38 1
|
4月前
|
开发框架 前端开发 JavaScript
循序渐进VUE+Element 前端应用开发(10)--- 基于vue-echarts处理各种图表展示
循序渐进VUE+Element 前端应用开发(10)--- 基于vue-echarts处理各种图表展示