From 87e19b5a396ac8fed6a551828b87d263f6425c31 Mon Sep 17 00:00:00 2001
From: riku <risaku@163.com>
Date: 星期四, 16 十月 2025 10:26:12 +0800
Subject: [PATCH] 2025.10.16 修改季度报告生成逻辑
---
src/utils/chart/chart-option.js | 129 +++++++++++++++++++++++++++++++++----------
1 files changed, 99 insertions(+), 30 deletions(-)
diff --git a/src/utils/chart/chart-option.js b/src/utils/chart/chart-option.js
index 06357e1..89a9380 100644
--- a/src/utils/chart/chart-option.js
+++ b/src/utils/chart/chart-option.js
@@ -14,6 +14,38 @@
return fontSize;
}
+function baseVisualMap(area) {
+ const _pieces = [];
+ area.forEach((v, i) => {
+ // if (i == 0) {
+ // _pieces.push({
+ // lt: v[0],
+ // color: 'green'
+ // });
+ // }
+ _pieces.push({
+ gte: v[0],
+ lte: v[1],
+ color: 'red'
+ });
+ });
+ // const lastOne = area[area.length - 1];
+ // _pieces.push({
+ // gt: lastOne[1],
+ // color: 'green'
+ // });
+ return {
+ type: 'piecewise',
+ // type: 'continuous',
+ show: false,
+ dimension: 0,
+ pieces: _pieces,
+ outOfRange: {
+ color: ['#5470c6']
+ }
+ };
+}
+
// 鎶樼嚎鍥�
function factorLineOption(_xAxis, _series) {
var fontSize = fGetChartFontSize();
@@ -22,16 +54,27 @@
animationDelayUpdate: function (idx) {
return idx * 5;
},
- // toolbox: {
- // bottom: 0,
- // feature: {
- // dataZoom: {},
- // magicType: {
- // type: ['line', 'bar']
- // },
- // restore: {}
- // }
- // },
+ toolbox: {
+ // bottom: 0,
+ feature: {
+ // dataZoom: {},
+ // magicType: {
+ // type: ['line', 'bar']
+ // },
+ // restore: {
+ // title: '鍒锋柊'
+ // },
+ saveAsImage: {
+ show: true,
+ backgroundColor: '#122b54a9',
+ name: '璧拌埅鐩戞祴鍥�',
+ title: '淇濆瓨涓哄浘鐗�',
+ iconStyle: {
+ borderColor: '#fff'
+ }
+ }
+ }
+ },
tooltip: {
textStyle: {
fontSize: fontSize
@@ -48,6 +91,8 @@
},
xAxis: {
name: '鏃堕棿',
+ nameLocation: 'middle',
+ nameGap: 30,
data: _xAxis,
axisLabel: {
textStyle: {
@@ -74,7 +119,16 @@
}
},
yAxis: {
- name: '娴撳害(渭g/m鲁)',
+ name: '娴撳害(渭g/m鲁)/娓╁害(鈩�)/閫熷害(m/s)',
+ nameLocation: 'middle',
+ nameGap: 30,
+ // nameTruncate: {
+ // maxWidth: 100,
+ // ellipsis: '...'
+ // },
+ // nameTextStyle: {
+ // color: 'red'
+ // },
axisLabel: {
textStyle: {
fontSize: fontSize
@@ -99,9 +153,29 @@
}
// 鎶樼嚎鍥�
-function smallLineOption(_xAxis, _series) {
+function smallLineOption(
+ _xAxis,
+ _series,
+ yMinInterval,
+ mode = 'dark',
+ tag,
+ animation = true,
+ defaultGrid,
+ title
+) {
var fontSize = fGetChartFontSize();
+ const _grid = defaultGrid
+ ? defaultGrid
+ : { left: '12%', right: '2%', top: '7%', bottom: '30%' };
return {
+ title: {
+ text: title,
+ textStyle: {
+ color: mode == 'dark' ? '#ffffff' : '#000000'
+ },
+ left: 'center'
+ },
+ animation: animation,
animationEasing: 'elasticOut',
animationDelayUpdate: function (idx) {
return idx * 5;
@@ -111,42 +185,37 @@
fontSize: fontSize
}
},
- grid: {
- left: '11%',
- right: '2%',
- top: '7%',
- bottom: '20%'
- },
+ grid: _grid,
legend: {
show: false
},
xAxis: [
{
show: true,
- // name: '鏃堕棿',
+ name: tag ? '鏃堕棿' : '',
// type: 'time',
data: _xAxis,
axisLabel: {
textStyle: {
fontSize: fontSize
},
- color: '#ffffff',
- textBorderColor: '#fff'
+ color: mode == 'dark' ? '#ffffff' : '#000000',
+ textBorderColor: mode == 'dark' ? '#fff' : '#000000'
},
axisTick: {
lineStyle: {
- color: 'white'
+ color: mode == 'dark' ? '#ffffff' : '#000000'
},
intervel: 0,
inside: false
},
nameTextStyle: {
- color: '#ffffff'
+ color: mode == 'dark' ? '#ffffff' : '#000000'
},
axisLine: {
lineStyle: {
- color: '#ffffff'
+ color: mode == 'dark' ? '#ffffff' : '#000000'
}
}
},
@@ -154,7 +223,7 @@
],
yAxis: [
{
- // name: '娴撳害(渭g/m鲁)',
+ name: tag ? '娴撳害(渭g/m鲁)' : '',
// type: 'time',
axisLabel: {
textStyle: {
@@ -164,19 +233,19 @@
axisLine: {
show: true,
lineStyle: {
- color: 'white'
+ color: mode == 'dark' ? '#ffffff' : '#000000'
}
},
axisTick: {
show: false,
lineStyle: {
- color: 'white'
+ color: mode == 'dark' ? '#ffffff' : '#000000'
}
},
splitLine: {
show: false
},
- minInterval: 1,
+ minInterval: yMinInterval ? yMinInterval : 1,
intervel: 1,
min: function (value) {
return Math.floor(value.min);
@@ -189,7 +258,7 @@
axisLine: {
show: true,
lineStyle: {
- color: 'white'
+ color: mode == 'dark' ? '#ffffff' : '#000000'
}
}
}
@@ -279,4 +348,4 @@
return option;
}
-export { factorLineOption, smallLineOption, gaugeOption };
+export { factorLineOption, smallLineOption, gaugeOption, baseVisualMap };
--
Gitblit v1.9.3