echarts特殊处理(滚动条、legend分页、tooltip滚动)

当图表数据量过大时,为了使用者能够有更好的体验,对于大数据量的图表处理:

1、当x轴数据过多不能完全展示时,需要添加滚动条:option设置dataZoom字段

javascript 复制代码
dataZoom: [{ // 这部分是关键,设置滚动条
   type: 'slider', // 使用 'slider' 类型的 dataZoom 组件
   start: 0, // 左侧在数据窗口范围的起始百分比, 0 表示从头开始
    end: 50, // 右侧在数据窗口范围的结束百分比, 100 表示到尾部结束
    // 滚轮是否触发缩放
    zoomOnMouseWheel: false,
    // 鼠标滚轮触发滚动
    moveOnMouseMove: true,
    moveOnMouseWheel: true,
    // 是否显示detail,即拖拽时候显示详细数值信息
    showDetail: false,
}]

2、数据量过大时会造成legend很多,可能会折叠数据,页面样式也不好看,从而进行legend分页:option设置legend字段

javascript 复制代码
legend: {
    type: 'scroll', // 设置图例为滚动类型
    orient: 'horizontal', // 横向显示图例
    height: 50, // 设置图例高度
    pageIconColor: '#ff781f', // 设置翻页箭头颜色
    pageTextStyle: {
      color: '#999' // 设置翻页数字颜色
    },
    pageIconSize: 11, // 设置翻页箭头大小
    textStyle: { // 设置图例文字的样式
      color: '#999',
      fontSize: 12
    },
    itemHeight: 10, // 设置图例项的高度
    itemWidth: 15, // 设置图例项的宽度
    left: '1%', // 设置图例左边距
    top: '1%' ,// 设置图例上边距
}

3、数据量过大时,tooltip会很长,可能会占据整个页面,考虑给tooltip添加滚动条:option设置tooltip字段

javascript 复制代码
tooltip: {
   trigger: 'axis',
   axisPointer:{
     type:'shadow',
   },
   confine:true,
   enterable:true,
   extraCssText:"max-width:90%;max-height:83%;overflow:auto;"
 }
相关推荐
Mintopia2 分钟前
🚀 Next.js 企业级文件上传方案全解
前端·javascript·全栈
光影少年4 分钟前
Promise状态和方法都有哪些,以及实现原理
javascript·promise·掘金·金石计划
雾岛听风来4 分钟前
k9s监控k8s集群工具
前端
用户87261342418514 分钟前
封装组件库并上传npm源
前端
Mintopia5 分钟前
🌐 Web3.0 时代:AIGC 如何赋能去中心化内容生态?
前端·javascript·aigc
鹏多多6 分钟前
前端项目eslint配置选项详细解析
前端·vue.js·react.js
然我7 分钟前
面试官:这道 Promise 输出题你都错?别再踩 pending 和状态凝固的坑了!(附超全解析)
前端·javascript·面试
bug_kada9 分钟前
让你彻底明白什么是闭包(附常见坑点)
前端·javascript
吴楷鹏9 分钟前
TypeScript 为什么要增加一个 satisfies?
前端·typescript
光影少年9 分钟前
js异步解决方案以及实现原理
前端·javascript·掘金·金石计划