fix pieRow

This commit is contained in:
duanliang
2025-12-11 14:00:06 +08:00
parent b459464052
commit 937ab3a230

View File

@@ -74,15 +74,17 @@
}, },
{ immediate: true } { immediate: true }
) )
var echartsArr = [];
const init = ()=>{ const init = ()=>{
echartsArr = []
if(condShow.value===2){ if(condShow.value===2){
return; return;
} }
clearOption() clearOption()
colorList = []; colorList = [];
condShow.value = 2 condShow.value = 2
const validDataList = props.dataList.filter(item => {
return item && item.name && (item.value || item.value === 0);
});
props.dataList.forEach((item,index)=>{ props.dataList.forEach((item,index)=>{
if(item.name=='负面'){ if(item.name=='负面'){
@@ -114,7 +116,7 @@
}, },
formatter: (name) => { formatter: (name) => {
// let percent = props.dataList.find((item) => item.name == name).value // let percent = props.dataList.find((item) => item.name == name).value
const item = props.dataList.find((item) => item.name === name); const item = validDataList.find((item) => item.name === name);
const percent = item ? item.value : 0; const percent = item ? item.value : 0;
@@ -155,11 +157,11 @@
labelLine: { labelLine: {
show: false show: false
}, },
data: [] data: validDataList
} }
] ]
} }
defaultCofig.series[0].data = props.dataList // defaultCofig.series[0].data = props.dataList
// defaultCofig.legend.formatter = (name) => { // defaultCofig.legend.formatter = (name) => {
// let percent = props.dataList.find((item) => item.name == name).value // let percent = props.dataList.find((item) => item.name == name).value
// if(name){ // if(name){
@@ -175,12 +177,12 @@
const changeChart = setOption({ const changeChart = setOption({
...defaultCofig, ...defaultCofig,
...props.config ...props.config
},true) })
changeChart.off('legendselectchanged'); changeChart.off('legendselectchanged');
changeChart.on('legendselectchanged', function (e) { changeChart.on('legendselectchanged', function (e) {
console.log(e,'e') console.log(e,'e')
var echartsArr = [];
for (let key in e.selected) { for (let key in e.selected) {
if (e.selected[key]) { if (e.selected[key]) {
echartsArr.push(key) echartsArr.push(key)
@@ -192,14 +194,7 @@
echartsNum += parseFloat(item.value) echartsNum += parseFloat(item.value)
} }
}) })
defaultCofig.legend.formatter = (name) => {
const item = props.dataList.find((item) => item.name === name);
const percent = item ? item.value : 0;
const displayName = name || '';
return `${displayName}\u3000${percent}%`;
}
defaultCofig.series[0].label.formatter = `{value|${parseInt(echartsNum/100*props.total)}}` + '\n' + `{name|${props.label}}`; defaultCofig.series[0].label.formatter = `{value|${parseInt(echartsNum/100*props.total)}}` + '\n' + `{name|${props.label}}`;
setOption({ setOption({
...defaultCofig, ...defaultCofig,