ECharts柱状图横向展示与DataZoom滑动查看实现

横向柱状图基础配置

介绍ECharts中横向柱状图的基本配置方法,包括xAxisyAxis的调换、数据格式要求。示例代码片段:

javascript 复制代码
option = {
    xAxis: { type: 'value' }, // 数值轴横向显示
    yAxis: { type: 'category', data: ['A', 'B', 'C'] }, // 类目轴纵向显示
    series: [{ type: 'bar', data: [10, 20, 30] }]
};
处理数据量过大的场景

分析横向柱状图数据过多时的常见问题(如重叠、渲染性能下降)。通过调整barWidthgrid布局或分页加载优化显示。

DataZoom组件集成

详细说明DataZoom的配置参数,包括滑动条模式(slider)和内置缩放(inside)。关键配置示例:

javascript 复制代码
dataZoom: [{
    type: 'slider',
    yAxisIndex: 0, // 控制y轴(横向柱状图的类目轴)
    filterMode: 'filter', // 过滤数据模式
    start: 0, // 初始范围
    end: 50   // 显示50%的数据
}]

DataZoom完整示例

复制代码
dataZoom: [
      {
        id: "dataZoomY",
        yAxisIndex: [0],
        type: "slider",
        show: data.length > 10,
        startValue: Math.max(data.length - 10, 0),
        endValue: data.length - 1,
        width: 6,
        borderColor: "transparent",
        fillerColor: "#dfdfdf",
        zoomLock: true, //禁止缩放
        showDataShadow: false, //是否显示阴影,默认true
        backgroundColor: "#fff",
        showDetail: false, //是否显示详情,默认true
        realtime: true, //实时更新
        zoomOnMouseWheel: false, //鼠标滚轮缩放
        filterMode: "filter", //过滤模式,默认值:'filter'。可选值为:'empty', 'filter'
        handleIcon: "circle", //视觉圆角
        handleStyle: {
          color: "#dfdfdf",
          borderColor: "#dfdfdf"
        },
        handleSize: "100%",
        moveHandleSize: 0,//手柄大小
        brushSelect: false//是否启用框选择,默认开启

      },
      {
        type: "inside",
        yAxisIndex: 0,
        zoomOnMouseWheel: false,//鼠标滚轮缩放
        moveOnMouseMove: true,//是否移动鼠标触发选择框位移,默认开启
        moveOnMouseWheel: true//鼠标滚轮缩放
      }
    ]
相关推荐
子兮曰2 天前
jev-ultrafast 深度解析:7 秒订机票的浏览器 Agent 是如何炼成的
前端·后端·agent
子兮曰2 天前
Jev 爆发一周:7 秒 Agent 背后的 System One 生态与三场争议
前端·后端·ai编程
小羊没烦恼!2 天前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
前端小万2 天前
写公众号赚了 3000 块后,我做了一款叫 "一键成稿" 的软件
前端·微信小程序
爱勇宝2 天前
ZCode 开源 24 小时:一份没有历史的账本,回答不了"有没有偷代码"
前端·后端·chatglm (智谱)
三十而立洋2 天前
Cookie 详解:从产生到安全,一次讲透
前端·javascript
伞伞悦读2 天前
【第38期】Python 模块与包详解:import、from、模块搜索路径、包结构和 __init__
开发语言·python
卡布鲁2 天前
把一个 Vite + Vue3 应用塞进 qiankun (React + Umi3) 主站:十个坑的复盘
前端·javascript·react.js
C语言小火车2 天前
C/C++ 为什么需要编译器?
开发语言·c++
李少兄2 天前
JavaScript 隐式全局变量解析
javascript