实现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中的实例方法、静态方法、类方法、类变量和实例变量浅析
Apr 26 Python
Python中使用PIPE操作Linux管道
Feb 04 Python
对于Python装饰器使用的一些建议
Jun 03 Python
Python中标准模块importlib详解
Apr 16 Python
django启动uwsgi报错的解决方法
Apr 08 Python
python3之模块psutil系统性能信息使用
May 30 Python
python处理csv中的空值方法
Jun 22 Python
python 列表,数组和矩阵sum的用法及区别介绍
Jun 28 Python
python读取图片的方式,以及将图片以三维数组的形式输出方法
Jul 03 Python
解决Python正则表达式匹配反斜杠''\''问题
Jul 17 Python
python模块如何查看
Jun 16 Python
python中执行smtplib失败的处理方法
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
php 模拟post_验证页面的返回状态(实例讲解)
2013/10/28 PHP
使用Composer安装Yii框架的方法
2016/03/15 PHP
TP5框架页面跳转样式操作示例
2020/04/05 PHP
[原创]站长必须要知道的javascript广告代码
2007/05/30 Javascript
基于jquery的表头固定的若干方法
2011/01/27 Javascript
javascript 使td内容不换行不撑开
2012/11/29 Javascript
jquery 判断滚动条到达了底部和顶端的方法
2014/04/02 Javascript
jQuery 删除/替换DOM元素的几种方式
2014/05/20 Javascript
z-blog SyntaxHighlighter 长代码无法换行解决办法(jquery)
2014/11/16 Javascript
四种参数传递的形式——URL,超链接,js,form表单
2015/07/24 Javascript
H5图片压缩与上传实例
2017/04/21 Javascript
Vue.js构建你的第一个包并在NPM上发布的方法步骤
2019/05/01 Javascript
jQuery+PHP+Ajax实现动态数字统计展示功能
2019/12/25 jQuery
JavaScript布尔运算符原理使用解析
2020/05/06 Javascript
Python获取文件ssdeep值的方法
2014/10/05 Python
python使用正则表达式提取网页URL的方法
2015/05/26 Python
Python 正则表达式入门(初级篇)
2016/12/07 Python
Python入门之三角函数tan()函数实例详解
2017/11/08 Python
PyQt5每天必学之拖放事件
2020/08/27 Python
PyTorch快速搭建神经网络及其保存提取方法详解
2018/04/28 Python
Sanic框架安装与简单入门示例
2018/07/16 Python
使用Python实现一个栈判断括号是否平衡
2018/08/23 Python
python在回调函数中获取返回值的方法
2019/02/22 Python
对Django项目中的ORM映射与模糊查询的使用详解
2019/07/18 Python
python 多进程共享全局变量之Manager()详解
2019/08/15 Python
Python实现基于socket的udp传输与接收功能详解
2019/11/15 Python
Python装饰器用法与知识点小结
2020/03/09 Python
在echarts中图例legend和坐标系grid实现左右布局实例
2020/05/16 Python
Html5 Canvas 实现一个“刮刮乐”游戏
2019/09/05 HTML / CSS
如何判断一段程序是由C 编译程序还是由C++编译程序编译的
2013/08/04 面试题
初中校园广播稿
2014/02/02 职场文书
大学老师推荐信
2014/02/25 职场文书
珍爱生命演讲稿
2014/05/10 职场文书
公司副总经理岗位职责
2014/10/01 职场文书
2015年度党风廉政建设工作情况汇报
2015/01/02 职场文书
网吧温馨提示
2015/07/17 职场文书