圆环饼图

描述:当前是关于Echarts图表中的 示例。
 
            let maxRadius = 100,
    pieWidth = 22,
    splitNumber = 12;
let angle = ['-180', '-145', '-90', '-45'];
let datas = [
    {
        name: '海军',
        value: 1200,
    },
    {
        name: '空军',
        value: 2400,
    },
    {
        name: '火箭军',
        value: 700,
    },
    {
        name: '陆军',
        value: 200,
    },
];
const color = [
    '#04BFFC',
    '#048AFC',
    '#FDDF03',
    '#F98519',
    '#FFFEFF',
    '#89A6FF',
    '#FF8181',
    'orange',
    '#FBBC05',
    '#EA4335',
];
let series = [
    // 外圈白点
    {
        name: '外圈白点',
        type: 'gauge',
        radius: `${maxRadius}%`,
        center: ['50%', '50%'],
        startAngle: 90,
        splitNumber: 24,
        endAngle: -269.9999,
        axisLine: {
            show: false,
            lineStyle: {
                color: [[1, '#FFF']],
            },
        },
        axisTick: {
            show: false,
        },
        splitLine: {
            show: true,
            length: 2,
            lineStyle: {
                color: 'auto',
                width: 2,
            },
        },
        axisLabel: {
            show: false,
        },
        detail: {
            show: false,
        },
    },
    // 内圈
    {
        type: 'pie',
        radius: '40%',
        hoverAnimation: false,
        clockWise: false,
        itemStyle: {
            normal: {
                shadowBlur: 18,
                shadowColor: 'rgba(124, 187, 235, 0.6)',
                color: 'rgba(221, 240, 249, 0.6)',
            },
        },
        label: {
            show: false,
        },
        data: [100],
    },
];
for (let i = 0; i < datas.length; i++) {
    series.push({
        type: 'gauge',
        radius: `${maxRadius - (i + 1) * 11}%`,
        center: ['50%', '50%'],
        clockwise: false,
        startAngle: '90',
        endAngle: angle[i],
        splitNumber: splitNumber * (datas.length - i),
        borderColor: 'rgba(0,0,0,0)',
        detail: {
            show: false,
        },
        pointer: {
            show: false,
        },
        textStyle: {
            shadowColor: '#000', //默认透明
            shadowBlur: 0,
        },
        axisLine: {
            show: true,
            lineStyle: {
                color: [
                    [0, '#A1D2EE'],
                    [0.0001, color[i]],
                    [1, '#A1D2EE'],
                ],
                width: pieWidth,
                shadowColor: '#000', //默认透明
                shadowBlur: 0,
            },
        },
        axisTick: {
            show: false,
        },
        splitLine: {
            show: true,
            length: pieWidth,
            lineStyle: {
                color: '#A1D2EE',
                width: 2,
            },
        },
        axisLabel: {
            show: false,
        },
    });
}
option = {
    backgroundColor:'#CBE9EE',
    title: {
        text: '外部\n数据',
        left: 'center',
        top: 'middle',
        textStyle: {
            color: '#222',
            fontSize: 20,
            fontWeight: 600,
        },
        textAlign: 'auto',
    },
    series: series,
};