票面库存统计

描述:当前是关于Echarts图表中的 示例。
 
            var oldData = [{
        "DENOMINATION": "100",
        "COFFERS_NAME": "第一金库",
        "sumAmt": 243.35
    },
    {
        "DENOMINATION": "50",
        "COFFERS_NAME": "第一金库",
        "sumAmt": 40
    },
    {
        "DENOMINATION": "20",
        "COFFERS_NAME": "第一金库",
        "sumAmt": 300
    },
    {
        "DENOMINATION": "10",
        "COFFERS_NAME": "第一金库",
        "sumAmt": 40
    },
    {
        "DENOMINATION": "5",
        "COFFERS_NAME": "第一金库",
        "sumAmt": 100
    },
    {
        "DENOMINATION": "100",
        "COFFERS_NAME": "第二金库",
        "sumAmt": 100
    },
    {
        "DENOMINATION": "50",
        "COFFERS_NAME": "第二金库",
        "sumAmt": 341.4514
    },
    {
        "DENOMINATION": "20",
        "COFFERS_NAME": "第二金库",
        "sumAmt": 45.78
    },
    {
        "DENOMINATION": "10",
        "COFFERS_NAME": "第二金库",
        "sumAmt": 40
    },
    {
        "DENOMINATION": "5",
        "COFFERS_NAME": "第二金库",
        "sumAmt": 200
    },
    {
        "DENOMINATION": "100",
        "COFFERS_NAME": "第三金库",
        "sumAmt": 89.6
    },
    {
        "DENOMINATION": "50",
        "COFFERS_NAME": "第三金库",
        "sumAmt": 25.645
    },
    {
        "DENOMINATION": "20",
        "COFFERS_NAME": "第三金库",
        "sumAmt": 7.685
    },
    {
        "DENOMINATION": "10",
        "COFFERS_NAME": "第三金库",
        "sumAmt": 40
    },
    {
        "DENOMINATION": "5",
        "COFFERS_NAME": "第三金库",
        "sumAmt": 300
    },
];


var datavalue = {
    source: [
        ['product']
    ]
};

let coffersArr = [],
    denominationArr = [];
oldData.forEach((item) => {
    if (denominationArr.indexOf(item.DENOMINATION) < 0) {
        denominationArr.push(item.DENOMINATION);
    }
    if (coffersArr.indexOf(item.COFFERS_NAME) < 0) {
        coffersArr.push(item.COFFERS_NAME);
    }
});

for (var i = 0; i < denominationArr.length + 1; i++) {
    if (i === 0) {
        for (var j = 0; j < coffersArr.length; j++) {
            datavalue.source[i][j + 1] = coffersArr[j];
        }
    } else {
        datavalue.source[i] = [];
        datavalue.source[i][0] = denominationArr[i - 1];
    }
}

for (var i = 1; i < datavalue.source.length; i++) {
    for (var j = 1; j < datavalue.source[0].length; j++) {
        for (var k = 0; k < oldData.length; k++) {
            if (datavalue.source[i][0] == oldData[k].DENOMINATION &&
                datavalue.source[0][j] == oldData[k].COFFERS_NAME) {
                datavalue.source[i][j] = oldData[k].sumAmt;
            }
        }
    }
}
/*
var datavalue ={
    source: [
        ['product', '第一金库', '第二金库', '第三金库'],
        ['100', 41.1, 30.4, 65.1],
        ['50', 86.5, 92.1, 85.7],
        ['20', 24.1, 67.2, 79.5]
    ]
}
*/
setTimeout(function() {

    option = {
        title: {
            text: '票面库存统计',
            subtext: '单位:万元',
            left: 0
        },

        legend: {
          right: '0'
        },
        tooltip: {
            trigger: 'axis',
            showContent: true,
            position: 'outside'
        },
        dataset: datavalue,
        xAxis: {
            type: 'category'
        },
        yAxis: {
            gridIndex: 0
        },
        grid: {
            top: '55%'
        },
        series: [{
                type: 'line',
                smooth: true,
                seriesLayoutBy: 'row'
            },
            {
                type: 'line',
                smooth: true,
                seriesLayoutBy: 'row'
            },
            {
                type: 'line',
                smooth: true,
                seriesLayoutBy: 'row'
            },
            {
                type: 'line',
                smooth: true,
                seriesLayoutBy: 'row'
            },
            {
                type: 'line',
                smooth: true,
                seriesLayoutBy: 'row'
            },
            {
                type: 'pie',
                id: 'pie',
                radius: ['30%', '20%'],
                center: ['50%', '30%'],
                label: {
                    position: 'outside',
                    formatter: '{b}: ({d}%)'
                    //   formatter:function(data){
                    //         console.log(data);
                    //         return  data.name+":("+data.percent.toFixed(1)+"%)";
                    //     }
                },
                encode: {
                    itemName: 'product',
                    value: '第一金库',
                    tooltip: '第一金库',
                }
            }
            
            
        ]
    };

    myChart.on('updateAxisPointer', function(event) {
        var xAxisInfo = event.axesInfo[0];
        if (xAxisInfo) {
            var dimension = xAxisInfo.value + 1;
            myChart.setOption({
                series: {
                    id: 'pie',

                    label: {
                        formatter: '{b}: ({d}%)'
                    },
                    encode: {
                        value: dimension,
                        tooltip: dimension
                    }
                }
            });
        }
    });

    myChart.setOption(option);

});