let datas = { value: 50, name: '完成率', }; option = { backgroundColor: '#04243E', title: { text: datas.value + '%', x: '49%', y: '48%', textAlign: 'center', textStyle: { fontWeight: 'bold', fontSize: 40, color: '#fff', }, }, // legend: { // bottom: 100, // itemWidth: 0, // itemHeight: 0, // formatter: '{a|{name}}', // textStyle: { // color: '#ffffff', // backgroundColor: { // image: `data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGkAAAAaCAYAAAC0NHJVAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTExIDc5LjE1ODMyNSwgMjAxNS8wOS8xMC0wMToxMDoyMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTUgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjg2RTUzOEVDRTg5QTExRThBMDFCRTJFMEFBRTVCMDNEIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjg2RTUzOEVERTg5QTExRThBMDFCRTJFMEFBRTVCMDNEIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6ODZFNTM4RUFFODlBMTFFOEEwMUJFMkUwQUFFNUIwM0QiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6ODZFNTM4RUJFODlBMTFFOEEwMUJFMkUwQUFFNUIwM0QiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz7kNvmhAAADkklEQVR42uxZz4vNURQ/5/sm8itJQ1OTibKQFDuFUiQSzdJeKUrZUP4CGxulZGHL1k6ysbCxsJGVLITCQgqFMt/j3LpPt+Oce873zZt5b/G99ZmZ93333u+993N+fM4dJCLo23Q37EnqSepbT1JPUt96kvoWJmnhyJn+FKa8zYxhjoYxz9jESG6J+Xd63haf/xmGGE/iOeZx5fiyLyrvKeegSn/tnWjMW/ZtxDNQ5iyf/2B8yOufOElp/O5MkLd4b2MYGN+1jXMuMMjW5t+Y8ZrxZ5IkrWXsy4shwyJrm414lfRAac2oeBEG5oLAeqnyDgh8XsfYwHjJ+D0JkhIxB/NCvE2CcljYIRxZf1tWToEQZpFa6x8hXLbNGc8Z31eTpK2Mo4w1RayubcwiybJ0q1/NWyA4dpQQaBlgzdDKZ8mgTzCeMr6shrrbwTjJGDgH3DXRkyNMQOknDwYVg8FCiETDnOxTihgwvM0Kz6UQSrnpMePdSpK0l3G62HhUCEAgNI1i1VRRfhBM8OMQCeSQXI5bYjxivFoJkg4zThkhTYY8ENYnPUfKait0SULKeawDxMp46Jg/qeIhbdATrT0mop6NKyelyRcZx4pDaosDwUD8L0nTDpUqdZQnNkAYRnmIA7FWrX+jzEfGWlsljIJidJbhle85x5hlPHRCvUtS2uR5xqHKROiosVFDGAWKWHTEhmdA4KjK2vdRhVk7m8VM1L0cBjuTlGqga4wDitWjYqGkWKwVm1slscrvrAq/MUIXKYfUCEsnJZ+ScaNQu+3QjLTmTWD0abMI28a4yfjVhaR0e3CDsUdZpBYeBtkSNA+QuWm40DJ0WqSU72jEoaKS34bzLlWsn8RcYBCHTg7VPI4MgstzIuWMjjPmGNcZ3yLCYTvjFmNnJbFaXiPjuRaStNzk1SFezpRrtCze8hotGkRuO0gpD1DxSHDy3vDZW8YVxqcaSbsYdzJRNTkJgctSCCger9iNFKWR9yynAIagvKYO/Wv9PjMuMd5oJO1n3M1XGMttkY32zW4p5F1kvChJSvL6NmN9B+v0Lj296x/P2r3qPeJR0PGyVuvfwP//bpDzyfotUiuhc530k3GZ8WRI0vssIOT/gNBQJtqVCRmXoXIjlrjAiuT2bqot5anlG0smo6HQZB9rfGsU27LmagOSf/g5CaCrsGXuwQz/mO8jzNS2+/D14ywunL3Q54/pbvhXgAEA1WGvIVWG+pAAAAAASUVORK5CYII=` // }, // rich: { // a: { // align: 'center', // width: 200, // height: 32, // padding: [20, 0, 0, 0], // fontSize: 32 // } // } // } // }, data: [ { name: datas.name, }, ], series: [ { // 主圆环 name: datas.name, type: 'pie', radius: ['40%', '70%'], startAngle: 225, color: [ { type: 'linear', x: 1, y: 0, x2: 0, y2: 0, colorStops: [ { offset: 0, color: 'rgba(47,172,234,1)', // 0% 处的颜色 }, { offset: 1, color: 'rgba(47,172,234,.1)', // 100% 处的颜色 }, ], }, 'transparent', ], hoverAnimation: true, legendHoverLink: false, z: 10, labelLine: { normal: { show: false, }, }, data: [ { value: (75 * datas.value) / 100, }, { value: 100 - (75 * datas.value) / 100, }, ], }, { // 背景圆环 name: '', type: 'pie', radius: ['40%', '70%'], silent: true, startAngle: 225, labelLine: { normal: { show: false, }, }, z: 5, data: [ { value: 75, itemStyle: { color: '#1A3B4C', borderWidth: 2, borderColor: '#1c516b', }, }, { value: 25, itemStyle: { color: 'transparent', }, }, ], }, { // 底部 name: '', type: 'pie', radius: ['40%', '70%'], startAngle: 230, labelLine: { show: false, }, z: 15, silent: true, label: { show: true, rich: { a: { color: '#fff', fontSize: 32, padding: [0, -50, -180, 0], }, b: { color: '#fff', fontSize: 32, padding: [0, 0, -180, -50], }, }, formatter: function (val) { // 底部0和100 if (val.dataIndex === 0) { return '{a|0}'; } if (val.dataIndex === 2) { return '{b|100}'; } }, }, data: [ { // 底部两条线 value: 1, itemStyle: { color: '#0096e0', }, }, { value: 800, itemStyle: { color: 'transparent', }, }, { value: 1, itemStyle: { color: '#0096e0', }, }, { value: 230, itemStyle: { color: 'transparent', }, }, ], }, { // 背景 name: '', type: 'pie', cursor: 'default', radius: ['0', '80%'], hoverAnimation: false, legendHoverLink: false, itemStyle: { color: { type: 'linear', x: 0, y: 0, x2: 0, y2: 1, colorStops: [ { offset: 0, color: 'rgba(38,64,76,0.8)', // 0% 处的颜色 }, { offset: 1, color: 'rgba(38,64,76,0)', // 100% 处的颜色 }, ], }, }, labelLine: { normal: { show: false, }, }, data: [ { value: 1, }, ], }, { // 中间圈 name: '', z: 5, type: 'pie', cursor: 'default', radius: ['32%', '32%'], hoverAnimation: false, legendHoverLink: false, labelLine: { normal: { show: false, }, }, data: [ { value: 1, itemStyle: { normal: { borderWidth: 2, borderColor: { type: 'linear', x: 0, y: 0, x2: 0, y2: 1, colorStops: [ { offset: 0, color: 'rgba(2,144,214,0.8)', // 0% 处的颜色 }, { offset: 1, color: 'rgba(2,144,214,0)', // 100% 处的颜色 }, ], }, }, }, }, ], }, ], };