diff --git a/nezha-fronted/src/components/common/project/popData/lineChart.vue b/nezha-fronted/src/components/common/project/popData/lineChart.vue index fa0e7ca51..f49302cd7 100644 --- a/nezha-fronted/src/components/common/project/popData/lineChart.vue +++ b/nezha-fronted/src/components/common/project/popData/lineChart.vue @@ -445,13 +445,13 @@ let stackIconChooseBorderColor = (chartInfo.type==='stackArea'?'#7e7e7e':'#53a3cb'); let maxValue=0; let minValue=0; - if(chartInfo.type==='line' && chartInfo.unit &&dataArg.length>0){ + if(chartInfo.unit &&dataArg.length>0){ maxValue=dataArg[0].data[0][1]; minValue=dataArg[0].data[0][1]; for(let j = 0; j < dataArg.length ; j++){ for (let i = 0; i < dataArg[j].data.length - 1; i++) { - maxValue = (maxValue < dataArg[j].data[i+1][1] ? dataArg[j].data[i+1][1] : maxValue); - minValue = (minValue > dataArg[j].data[i+1][1] ? dataArg[j].data[i+1][1] : minValue); + maxValue = (maxValue < Number(dataArg[j].data[i+1][1]) ? Number(dataArg[j].data[i+1][1]) : maxValue); + minValue = (minValue > Number(dataArg[j].data[i+1][1]) ? Number(dataArg[j].data[i+1][1]) : minValue); } } } @@ -460,7 +460,6 @@ maxValue=chartDataFormat.formatDatas(maxValue,unit.type,'ceil',unit.ascii); minValue=chartDataFormat.formatDatas(minValue,unit.type,'floor',unit.ascii); let oldValue=maxValue; - console.log(maxValue,'123123'); let dot=0; if(maxValue==1){ dot++; @@ -477,8 +476,7 @@ maxValue=Math.ceil(oldValue)/Math.pow(10,dot); dot++; } - let copies=chartDataFormat.copies(oldValue); - console.log(oldValue,copies,maxValue); + let copies=chartDataFormat.copies(oldValue,unit.type); let oldDot=2; if(maxValue<=1){ oldDot=dot>6?6:dot; @@ -559,8 +557,16 @@ } return [x,y]; }else {//preview page - x = pointX - boxWidth; - y = pointY+10; + if(pointX<(viewWidth/2)){//说明鼠标在左边放不下提示框 + x=pointX+10; + }else{ + x = pointX - boxWidth; + } + if(pointY<(viewHeight/2)){//说明鼠标上面放不下提示框 + y = pointY+10; + }else { + y = pointY-boxHeight; + } return [x,y]; } }else { @@ -745,7 +751,8 @@ axisLine:{ show:false }, - minInterval: chartDataFormat.Interval(maxValue,copies,unit.type), + minInterval: chartDataFormat.Interval(maxValue,copies,unit.type,'min'), + maxInterval: chartDataFormat.Interval(maxValue,copies,unit.type,'max'), axisTick: { show: false, },