建立分类,标准的分类总情况

描述:当前是关于Echarts图表中的 饼图 示例。
 
            let color = ['#ff4343', '#f69846', '#f6d54a', '#45dbf7', '#f69846', '#44aff0', '#4777f5', '#5045f6', '#ad46f3', '#f845f1'];
let names = ["宝安区", "南山区", "龙华区", "福田区", "坪山区", "龙岗区"];
let data = [1114, 444, 501, 468, 478, 431]
let list = []
let total = 0
for (let i in data) {
    total += data[i]
}

let placeHolderStyle = {
    normal: {
        label: {
            show: false
        },
        labelLine: {
            show: false
        },
        color: 'rgba(0, 0, 0, 0)',
        borderColor: 'rgba(0, 0, 0, 0)',
        borderWidth: 0
    }
};

let rich = {
    white: {
        align: 'center',
        padding: [3, 0]
    }
};

for (let i in data) {
    list.push({
        value: data[i],
        name: names[i],
        itemStyle: {
            normal: {
                borderWidth: 5,
                shadowBlur: 20,
                borderColor: color[i],
                shadowColor: color[i],
                color: color[i]
            }
        }
    }, {
        value: total / 30,
        name: '',
        itemStyle: placeHolderStyle
    })
}

let func = (params) => {
    let percent = ((params.value / total) * 100).toFixed(1)
    let name = params.name.replace(/\n/g, '')
    if (params.name !== '') {
        return name + '\n{white|' + percent + '%}'
    } else {
        return ''
    }
}



option = {
    backgroundColor: '#04243E',
    title: {
        show:true,
        text: '深圳企业标准各区参与情况',
        textStyle: {
                    color: '#ccc',
                    fontSize: 25
                },
                x: 'center',
                top: 20
    },
    tooltip: {
        show: false
    },
    legend: {
        orient: 'vertical',
        data: names,
        icon: 'circle',
        right: '5px',
        top: '10px',
        textStyle: {
            color: '#fff',
            fontSize: 20
        }
    },
    series: [{
            name: '',
            type: 'pie',
            clockWise: false,
            startAngle: '90',
            center: ['50%', '50%'],
            radius: ['50%', '51%'],
            hoverAnimation: false,
            itemStyle: {
                normal: {
                    label: {
                        show: true,
                        position: 'outside',
                        formatter: func,
                        rich: rich
                    },
                    labelLine: {
                        length: 40,
                        length2: 100,
                        show: true,
                        color: '#00ffff'
                    }
                }
            },
            data: list,
            animationType: 'scale',
            animationEasing: 'elasticOut',
            animationDelay: function(idx) {
                return idx * 50;
            }
        },
        {
            name: '',
            type: 'pie',
            center: ['50%', '50%'],
            radius: ['50%', '49%'],
            itemStyle: {
                color: 'transparant'
            },
            startAngle: '90',
            data: [{
                value: total,
                name: '',
                label: {
                    normal: {
                        show: true,
                        formatter: '{c|{c}} {b|条记录}',
                        rich: {
                            c: {
                                color: 'rgb(98,137,169)',
                                fontSize: 50,
                                fontWeight: 'bold',
                                lineHeight: 5
                            },
                            b: {
                                color: 'rgb(98,137,169)',
                                fontSize: 40,
                                lineHeight: 5
                            }
                        },
                        textStyle: {
                            fontSize: 20,
                            fontWeight: 'bold'
                        },
                        position: 'center'
                    }
                }
            }]
        }
    ]
};