设置双Y轴左右刻度线一致

1、产生的原因

splitNumber:需要注意的是这个分割段数只是个预估值,最后实际显示的段数会在这个基础上根据分割后坐标轴刻度显示的易读程度作调整。

2、解决方法

①求出一组数据的最大值max,这里设置最大值为10的倍数

②根据最大值,设置interval

3、源码

app.title = '折柱混合';

function calMax(arr) {
    var max = arr[0];
    for (var i = 1; i < arr.length; i++) { // 求出一组数组中的最大值
        if (max < arr[i]) {
            max = arr[i];
        }
    }
    var maxint = Math.ceil(max / 10); // 向上取整
    var maxval = maxint * 10; // 最终设置的最大值
    return maxval; // 输出最大值
}
var appregnum = [10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120, 130];
var activenum = [1.1, 2.2, 3.3, 4.4, 5.5, 6.6, 7.7, 8.8, 9.9, 10.1, 20.4, 30.5];
var maxappreg = calMax(appregnum); //注册Y轴值
var maxactive = calMax(activenum); //活跃Y轴值
var interval_left = maxappreg / 5; //左轴间隔
var interval_right = maxactive / 5; //右轴间隔

option = {
    //1、 格式化提示信息
    tooltip: {
        trigger: 'axis',
        formatter: function(params) {
            var name = params[0].name + "<br/>"; //x轴名称
            var str = ''; //辅助变量,存储要展示的提示信息
            // 循环存储
            for (var i = 0; i < params.length; i++) {
                str = str + params[i].marker + params[i].seriesName + ":" + params[i].value + "人<br/>";
            }
            // 返回结果值
            return name + str;
        },
    },
    toolbox: {
        feature: {
            dataView: {
                show: true,
                readOnly: false
            },
            magicType: {
                show: true,
                type: ['line', 'bar']
            },
            restore: {
                show: true
            },
            saveAsImage: {
                show: true
            }
        }
    },
    legend: {
        data: ['注册', '活跃']
    },
    grid:{
        width:'50%',
        height:'50%'
    },
    xAxis: [{
        type: 'category',
        data: ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'],
        axisPointer: {
            type: 'shadow'
        }
    }],
    yAxis: [{
            type: 'value',
            name: '注册',
            min: 0,
            max: maxappreg,
            splitNumber: 5,
            interval: interval_left,
        },
        {
            type: 'value',
            name: '活跃',
            min: 0,
            max: maxactive,
            splitNumber: 5,
            interval: interval_right,
        }
    ],
    series: [{
            name: '注册',
            type: 'line',
            data: appregnum
        },
        {
            name: '活跃',
            type: 'line',
            yAxisIndex: 1,
            data: activenum
        }
    ]
};

4、效果图

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

佛佛ง

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值