测试

描述:当前是关于Echarts图表中的 饼图 示例。
 
            let bgColor = '#fff';
let fontColor = "#333";
let titleColor = '#666';
let scale = 1;
let title = '案情总数';
let echartData = [{
        name: "行政案件",
        value: "362",
        // unit: "元"
    },
    {
        name: "刑事案件",
        value: "179",
        // unit: "元"
    }
];
let formatNumber = function(num) {
    let reg = /(?=(\B)(\d{3})+$)/g;
    return num.toString().replace(reg, ',');
}
let total = echartData.reduce((a, b) => {
    return a + b.value * 1
}, 0);
option = {
    backgroundColor: bgColor,
    color: ['#0E7CE2', '#FF8352', '#E271DE', '#F8456B', '#00FFFF', '#4AEAB0'],
    tooltip: {
        trigger: 'item'
    },
    title: {
        text: '{name|' + title + '}\n{val|' + total + '}',
        top: 'center',
        left: 'center',
        textStyle: {
            rich: {
                name: {
                    fontSize: 22 * scale,
                    fontWeight: 'bold',
                    color: titleColor,
                    padding: [10, 0]
                },
                val: {
                    fontSize: 22* scale,
                    fontWeight: 'bold',
                    color: titleColor,
                }
            }
        }
    },
    grid:{
        width:100,
        height:100
    },
    legend: {
       // orient: 'vertical',
        icon: 'rect',
        //x: '80%',
        y: '80%',
     
        itemWidth: 12 * scale,
        itemHeight: 12 * scale,
        align: 'left',
        textStyle: {
            rich: {
                name: {
                    fontSize: 12 * scale
                },
                value: {
                    fontSize: 16 * scale,
                    padding: [0, 5, 0, 15]
                },
                unit: {
                    fontSize: 12 * scale
                }
            }
        },
        formatter: function(name) {
            let res = echartData.filter(v => v.name === name);
            res = res[0] || {};
            let unit = res.unit || '';
            return '{name|' + name + '}  {value|' + res.value + '}{unit|' + unit + '}'
        }
        // data: legendName
    },
    series: [{
        type: 'pie',
        radius: ['30%', '60%'],
        center: ['50%', '50%'],
        data: echartData,
        // itemStyle: {
        //     normal: {
        //         borderColor: bgColor,
        //         borderWidth: 1
        //     }
        // },
        labelLine: {
            normal: {
                length: 20,
                length2: 20
            }
        },
        label: {
            normal: {
                formatter: params => {
                    console.log(params)
                    return (
                        "{value|" +
                        params.percent.toFixed(2) +
                        "}" +
                        "{unit|%}"
                    );
                },
                rich: {
                    value: {
                        fontSize: 16 * scale,
                        lineHeight: 16 * scale
                    },
                    unit: {
                        fontSize: 12 * scale,
                        lineHeight: 12 * scale,
                        padding: [0, 0, 2 * scale, 0]
                    }
                }
            }
        },
    }]
};