From 5708afb816fde8fc71e891cbbe317dc44d4c34bb Mon Sep 17 00:00:00 2001 From: sjl <1716605279@qq.com> Date: Wed, 10 Dec 2025 16:21:51 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B0=83=E6=95=B4Y=E8=BD=B4=E5=88=BB=E5=BA=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../home/components/compareDataCheckChart.vue | 49 ++++++++++++++++--- 1 file changed, 41 insertions(+), 8 deletions(-) diff --git a/frontend/src/views/home/components/compareDataCheckChart.vue b/frontend/src/views/home/components/compareDataCheckChart.vue index 77de2c0..4023dbf 100644 --- a/frontend/src/views/home/components/compareDataCheckChart.vue +++ b/frontend/src/views/home/components/compareDataCheckChart.vue @@ -111,8 +111,11 @@ const setEchart = () => { marker = `` } let unit = el.value[2] ? el.value[2] : '' - str += `${marker}${el.seriesName.split('(')[0]}:${el.value[1]}${unit} -
` + // 格式化数值显示为4位小数 + const value = parseFloat(el.value[1]); + const formattedValue = value.toFixed(4); + + str += `${marker}${el.seriesName.split('(')[0]}:${formattedValue}${unit}
` }) return str } @@ -157,10 +160,16 @@ const setEchart = () => { name: item, yAxisIndex: index, splitNumber: 5, - minInterval: 1, + minInterval: 0, splitLine: { show: false }, + axisLabel: { + // 添加标签格式化,支持小数显示 + formatter: function(value) { + return value.toFixed(5); + } + }, ...(index > 0 ? right : null) }) }) @@ -213,7 +222,7 @@ const setEchart = () => { let seriesList: any = [] kk.forEach((cc: any) => { if (cc.statisticalData !== null) { - yData[setList.indexOf(kk[0].unit)].push(cc.statisticalData?.toFixed(2)) + yData[setList.indexOf(kk[0].unit)].push(cc.statisticalData?.toFixed(4)) } seriesList.push([cc.time, cc.statisticalData, cc.unit, lineStyle[lineS].type]) @@ -233,11 +242,35 @@ const setEchart = () => { }) }) }) + // yData.forEach((item: any, index: any) => { + // let [min, max] = yMethod(item) + // echartsData.value.yAxis[index].min = min + // echartsData.value.yAxis[index].max = max + // }) + let allValues: number[] = []; + yData.forEach(item => { + item.forEach((val: string) => { + allValues.push(val); + + }); + }); + + // 计算全局最大最小值 + let globalMin = Math.min(...allValues) - 0.0001; + let globalMax = Math.max(...allValues) +0.0001 + + // 确保最小值不小于0 + globalMin = Math.max(0, globalMin); + + // 特殊情况:如果所有值都是0 + if (globalMin === 0 && globalMax === 0) { + globalMax = 1; + } + // 为所有Y轴应用相同的范围 yData.forEach((item: any, index: any) => { - let [min, max] = yMethod(item) - echartsData.value.yAxis[index].min = min - echartsData.value.yAxis[index].max = max - }) + echartsData.value.yAxis[index].min = globalMin ; + echartsData.value.yAxis[index].max = globalMax; + }); } }