Echarts toolbox相关配置 dataZoom缩放

前言:最近开发遇到一个echarts相关问题,需要实现用户鼠标滚动实现图表缩放,或者实现选中某一段区域进行缩放,放大效果;

1.第一个需求就是区域缩放按钮要隐藏掉,用户鼠标放在图表内就默认实现选择效果,并且区域缩放还原按钮不能隐藏,需要在初始化配置这三个属性.

javascript 复制代码
// 假设你已经在某处创建了 ECharts 实例
var myChart = echarts.init(document.getElementById('main'));

// 图表配置
var option = {
  toolbox: {
    feature: {
      dataZoom: {
        show: true,
        yAxisIndex: 'none'
      }
    }
  },
  dataZoom: [
    {
      type: 'inside',
      start: 0,
      end: 100,
    }
  ],
  // 其余配置
};

// 设置图表选项
myChart.setOption(option);

// 一旦图表加载完毕,立即触发区域缩放功能
setTimeout(function() {
    myChart.dispatchAction({
        type: 'takeGlobalCursor',
        key: 'dataZoomSelect',
        dataZoomSelectActive: true
    });
}, 0);

2.区域缩放按钮隐藏,区域缩放还原显示

javascript 复制代码
toolbox: {
  feature: {
    dataZoom: {
      show: true,
      yAxisIndex: 'none',
      // 修改图标样式,主要是有zoom 和 back 2个属性
      icon:{

        zoom:'image://http://example.website/a/b.png', //改成不存在路径即可 就不显示
        back:'',// 需要显示就默认不管即可  (而且想换图标样式的也是改这2个属性)
    }
    }
  },
  right: 60,
  top: -5
}

3.关于toolbox 一些详细配置属性

javascript 复制代码
option = {
    toolbox: {
        show: true, // 是否显示工具箱
        orient: 'horizontal', // 工具箱的布局方向,可选值为'horizontal'和'vertical'
        left: 'right', // 当 orient 为 'horizontal' 时,工具箱的左右位置。可选值:'left', 'center', 'right' 或者相应的百分比
        top: 'top', // 当 orient 为 'vertical' 时,工具箱的上下位置。可选值:'top', 'middle', 'bottom' 或者相应的百分比
        feature: {
            mark: {show: true}, // 显示标记点工具,可以通过点击标记点对应的图标进行标记点的选中
            dataView: {show: true, readOnly: false}, // 显示数据视图工具,可以展示当前图表的数据
            magicType: {show: true, type: ['line', 'bar', 'stack', 'tiled']}, // 显示动态类型切换工具,可以切换图表的类型
            restore: {show: true}, // 显示还原工具,可以还原到初始状态
            saveAsImage: {show: true} // 显示保存为图片工具,可以将当前图表保存为图片
            dataZoom:{
            
            title: {
            zoom: '区域缩放' ,
            back: '区域缩放还原' ,
                    }
            icon: {
            zoom ... ,
            back ... ,
                }
            show: true ,
            }
        }
        },
        series: [
        // ... 系列列表
        ]
        // ... 其他配置项
        };
相关推荐
Jmyd01234 小时前
用 Web VR 引擎搭建 3D 虚拟展厅:从素材上云到多端实时渲染的完整数据链路
前端·3d·vr·三维数字化
刘天远5 小时前
Agent成本核算实现:事件表、状态分布与Python归集
前端·数据库·人工智能·python
欣欣之王来了5 小时前
开发环境准备:Node.js、npm、VS Code安装配置
前端·学习·架构·项目·vue3教程
xiaolinudao1235 小时前
将多个 Excel 表格中的数据合并到单个表中|6 种实现方案全解析
java·前端·excel
LRL_5 小时前
跨平台 Node 模块安装指南:如何利用 pnpm/npm 配置`supportedArchitectures` 锁定平台依赖
前端·npm·node.js
EatFan6 小时前
React 项目踩坑实录:useEffect 闭包陷阱、Context 性能陷阱与 React 18 升级避坑排查手册
前端·javascript·react.js·react·react hooks·useeffect·闭包陷阱
风骏时光牛马6 小时前
企业业务运营信息数据库
前端
IT_陈寒7 小时前
Vue的数组更新把我坑惨了
前端·人工智能·后端
于航7 小时前
分层上下文压缩,幻觉检测,错误累积概要
前端
数据掘金7 小时前
鸿蒙统计的权限弹窗怎么适配?
前端