实现ECharts双Y轴左右刻度线一致的例子


Posted in Python onMay 16, 2020

不一致的情况如下图:

实现ECharts双Y轴左右刻度线一致的例子

修改成一致的情况如下图:

实现ECharts双Y轴左右刻度线一致的例子

代码如下:

yAxis : [
          {
            type : 'value',
            name : '人数',
            //splitLine:{show:false},
            axisLabel : {
              formatter: '{value} 个',
              textStyle:{color: '#A23400'}//#A23400 purple
            },
            axisLine:{
               lineStyle:{color:'#A23400',width:'1'} //y轴坐标轴颜色 #A23400 black
            }
          },
          {
            type : 'value',
            name : '人次',
            //splitLine:{show:false},
            axisLabel : {
              formatter: qfamtter,
              textStyle:{color: '#00AEAE'}//#00AEAE blue
            },
            axisLine:{
               lineStyle:{color:'#00AEAE',width:'1'} //y轴坐标轴颜色 #00AEAE black
            },
            min: 0,
            max: Max2*2,
            splitNumber: 6,
            interval: (Max2*2 - 0) / 6
          }

其中需要加:

min: 0,
            max: Max2*2,
            splitNumber: 6,
            interval: (Max2*2 - 0) / 6

左边Y轴默认了分成6段,所以要把右边Y轴也分成6段。

附加:jquery 数组获取最大值和最值的方法,仅供参考

//计算最大值
 function cal_Max(a) {
    //debugger
    a=$.grep(a,function(n,i){return i>0;});
    var maxval = Math.max.apply(null, a);
    return maxval;
   }
 
 //计算最小值
 function calMin(a) {
  a=$.grep(a,function(n,i){return i>0;});
  var minval = Math.min.apply(null, a)
  return minval;
 }

补充知识:echarts 两个y轴展示折线图,并使两个y轴刻度线重合

效果如图:

实现ECharts双Y轴左右刻度线一致的例子

y轴刻度不重合情况:

实现ECharts双Y轴左右刻度线一致的例子

代码如下,具体的数据处理就不再一一展示,只看画图部分:

drawGraphChart() {
   // 具体的数据格式可以参考: https://echarts.baidu.com/examples/editor.html?c=multiple-y-axis
   // 处理两个y轴的最大值 => 为使两个y轴的标度线完全重合
   // 拿到左右两个y轴的最大数据之后 给他们分别取整成为最终 y轴上展示的值 也是为了能够确保两个值都能整除10
   const maxY1 = parseInt((Math.max(...maxData1) + 2000) / 1000) * 1000
   const maxY2 = parseInt((Math.max(...maxData2) + 10) / 10) * 10
   this.myChart = this.$echarts.init(document.getElementById('drawChart'))
   // var color = ['#d14a61', '#5793f3'], // 这个颜色和y轴的颜色对应,如果画的曲线较少,可以直接用两种颜色区分线是按照哪个坐标轴的刻度画的
   const option = {
    title: {
     left: 20,
     text: '趋势图'
    },
    xAxis: {
     type: 'category',
     // boundaryGap: false, // 数据完全填充x轴
     data: this.toRepeatTimeArr // x轴时间
    },
    legend: {
     type: 'scroll',
     right: 120,
     top: 0,
     left: '65%',
     bottom: 0,
     data: legendTankNum // 图例
    },
    grid: {
     left: '6%',
     right: '6%',
     top: '14%'
    },
    tooltip: {
     trigger: 'axis',
     axisPointer: {
      type: 'cross'
     }
    },
    yAxis: [
     {
      type: 'value',
      name: '体积',
      min: 0,
      max: maxY1, // 左侧y轴最大值
      // 两个y轴的刻度必须整除一个相同的数才能重合
      interval: Math.ceil(maxY1 / 10), // 间距等分为10等分 
      position: 'left', // y轴在左侧
      // y轴的颜色和按y轴刻度画的曲线的颜色
      // axisLine: {
      //  lineStyle: {
      //   color: color[0]
      //  }
      // },
      axisLabel: {
       formatter: '{value} L'
      }
     },
     {
      type: 'value',
      name: '温度',
      min: 0,
      max: maxY2, // 右侧y轴最大值
      interval: Math.ceil(maxY2 / 10), // 间距等分为10等分
      position: 'right', // y轴在右侧
      // axisLine: {
      //  lineStyle: {
      //   color: color[1]
      //  }
      // },
      axisLabel: {
       formatter: '{value} °C'
      }
     }
    ],
    toolbox: {
     right: 80,
     top: -5,
     feature: {
      saveAsImage: {}
     }
    },
    // {name: '--',type: 'line',data:[0,0,0···]}
    series: allRealData
   }
   // true 图数据不叠加
   this.myChart.setOption(option, true)
  }

以上这篇实现ECharts双Y轴左右刻度线一致的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现CET查分的方法
Mar 10 Python
Python错误: SyntaxError: Non-ASCII character解决办法
Jun 08 Python
python2 与python3的print区别小结
Jan 16 Python
Python中max函数用于二维列表的实例
Apr 03 Python
pygame游戏之旅 添加icon和bgm音效的方法
Nov 21 Python
Python正则表达式匹配日期与时间的方法
Jul 07 Python
Python上下文管理器用法及实例解析
Nov 11 Python
win10系统下python3安装及pip换源和使用教程
Jan 06 Python
opencv python如何实现图像二值化
Feb 03 Python
Python多线程threading join和守护线程setDeamon原理详解
Mar 18 Python
Django Admin设置应用程序及模型顺序方法详解
Apr 01 Python
读取nii或nii.gz文件中的信息即输出图像操作
Jul 01 Python
在echarts中图例legend和坐标系grid实现左右布局实例
May 16 #Python
Python如何使用PIL Image制作GIF图片
May 16 #Python
pyecharts调整图例与各板块的位置间距实例
May 16 #Python
通过Python实现一个简单的html页面
May 16 #Python
Python批量处理csv并保存过程解析
May 16 #Python
基于Python测试程序是否有错误
May 16 #Python
关于matplotlib-legend 位置属性 loc 使用说明
May 16 #Python
You might like
Terran兵种对照表
2020/03/14 星际争霸
用PHP实现读取和编写XML DOM代码
2010/04/07 PHP
php笔记之常用文件操作
2010/10/12 PHP
php中使用parse_url()对网址进行解析的实现代码(parse_url详解)
2012/01/03 PHP
PHP join()函数用法与实例讲解
2019/03/11 PHP
PHP实现将上传图片自动缩放到指定分辨率,并保持清晰度封装类示例
2019/06/17 PHP
php 多个变量指向同一个引用($b = &$a)用法分析
2019/11/13 PHP
javascript 循环读取JSON数据的代码
2010/07/17 Javascript
javaScript 删除字符串空格多种方法小结
2012/10/24 Javascript
深入理解javascript中return的作用
2013/12/30 Javascript
javascript中clone对象详解
2014/12/03 Javascript
javascript字符串替换函数如何一次性全部替换掉
2015/10/30 Javascript
js实现对ajax请求面向对象的封装
2016/01/08 Javascript
基于jquery实现智能表单验证操作
2016/05/09 Javascript
javascript 将共享属性迁移到原型中去的实现方法
2016/08/31 Javascript
用jquery快速解决IE输入框不能输入的问题
2016/10/04 Javascript
Bootstrap按钮组简单实现代码
2017/03/06 Javascript
ES6正则表达式的一些新功能总结
2017/05/09 Javascript
vue基于mint-ui的城市选择3级联动的示例
2017/10/25 Javascript
Node.js实现发送邮件功能
2017/11/06 Javascript
微信小程序登录session的使用
2019/03/17 Javascript
微信小程序以ssm做后台开发的实现示例
2020/04/08 Javascript
es6数组的flat(),flatMap()函数用法实例分析
2020/04/18 Javascript
用Python制作在地图上模拟瘟疫扩散的Gif图
2015/03/31 Python
Python中的面向对象编程详解(上)
2015/04/13 Python
Python实现带参数与不带参数的多重继承示例
2018/01/30 Python
Python实现输入二叉树的先序和中序遍历,再输出后序遍历操作示例
2018/07/27 Python
Python爬虫框架scrapy实现downloader_middleware设置proxy代理功能示例
2018/08/04 Python
vue学习笔记之动态组件和v-once指令简单示例
2020/02/29 Python
python 多进程和协程配合使用写入数据
2020/10/30 Python
CSS3属性选择符介绍
2008/10/17 HTML / CSS
美国轮胎网站:Priority Tire
2018/11/28 全球购物
SOKOLOV官网:俄罗斯珠宝首饰品牌
2021/01/02 全球购物
专升本自我鉴定
2013/10/10 职场文书
2015年人事科工作总结
2015/04/28 职场文书
大学学生会竞选稿
2015/11/19 职场文书