/**特别声明**/ /**灵感来自开源 176******95 on 2 年前 的花瓣**/ /**感谢前面的引路人**/ let scaleData = [{ 'name': '花瓣1', 'value': 10 }, { 'name': '花瓣2', 'value': 10 }, { 'name': '花瓣3', 'value': 30 }, { 'name': '花瓣4', 'value': 10 }, { 'name': '花瓣5', 'value': 10 }, ]; // 随机颜色 let rich = { white: { color: '#ddd', align: 'center', padding: [3, 0] } }; let placeHolderStyle = { normal: { label: { show: false }, labelLine: { show: false }, color: 'rgba(0, 0, 0, 0)', borderColor: 'rgba(0, 0, 0, 0)', borderWidth: 0 } }; function bg2() { return '#' + Math.floor(Math.random() * 0xffffff).toString(16); } function rancolors(len) { let color = []; for (let i = 0; i <= len; i++) { let sjys = bg2(); color.push(sjys); for (let i = 0; i < color.length; i++) { if (color[i] = sjys) { color[i] = bg2(); } } } return color; } let data = []; let color = rancolors(7) for (let i = 0; i < scaleData.length; i++) { data.push({ value: scaleData[i].value, name: scaleData[i].name, itemStyle: { normal: { borderWidth: 40, shadowBlur: 20, borderColor: color[i], shadowColor: color[i] } } }, { value: 80, name: '', itemStyle: placeHolderStyle }); } let seriesObj = [{ name: '', type: 'pie', clockWise: false, radius: [30, 60], hoverAnimation: false, itemStyle: { normal: { label: { show: false, position: 'outside', color: '#ddd', formatter: function (params) { let percent = 0; let total = 0; for (let i = 0; i < scaleData.length; i++) { total += scaleData[i].value; } percent = (params.value / total * 100).toFixed(0); if (params.name !== '') { return params.name + '\n{white|' + '占比' + percent + '%}'; } return ''; }, rich: rich }, labelLine: { length: 6, length2: 3, show: false, color: '#00ffff' } } }, data: data }]; option = { grid: { left: 0, }, backgroundColor: 'rgba(0,0,0,0)', title: { text: '77.65%', subtext: '优良率', x: 'center', y: 'center', textStyle: { fontSize: 20, color: "rgba(255, 240, 0, 1)", fontStyle: "italic", }, subtextStyle: { fontSize: 16, color: "rgba(255, 240, 255, 1)", } }, xAxis: { show: false, }, yAxis: { show: false, }, tooltip: { show: false }, legend: { show: false }, toolbox: { show: false }, series: seriesObj }