diff --git a/src/components/sensorFusion/echartsBar.vue b/src/components/sensorFusion/echartsBar.vue
index 43d0df4..1b21441 100644
--- a/src/components/sensorFusion/echartsBar.vue
+++ b/src/components/sensorFusion/echartsBar.vue
@@ -56,7 +56,7 @@ export default {
// this.chartData.xData.push(this.dataList[0].type_data[i].name);
// }
// }
-
+ if(this.dataList.length>0&&this.dataList[0].type_data){
for (let j = 0; j < this.dataList[0].type_data.length; j++) {
if (this.dataList[0].type_data[j].value == undefined) {
this.chartData.yData.push(this.dataList[0].type_data[j].quantity);
@@ -66,6 +66,7 @@ export default {
this.chartData.xData.push(this.dataList[0].type_data[j].name);
}
}
+ }
} else if (this.timeMode == "固定时刻") {
// for (let i = 0; i < this.dataList.length; i++) {
// this.chartData.xData = [];
@@ -82,6 +83,7 @@ export default {
// }
this.chartData.xData = [];
this.chartData.yData = [];
+ if(this.dataList.length>0&&this.dataList[0].type_data){
for (let j = 0; j < this.dataList[0].type_data.length; j++) {
if (this.dataList[0].type_data[j].value == undefined) {
this.chartData.yData.push(this.dataList[0].type_data[j].quantity);
@@ -91,6 +93,7 @@ export default {
this.chartData.xData.push(this.dataList[0].type_data[j].name);
}
}
+ }
} else if (this.timeMode == "固定间隔") {
// for (let i = 0; i < this.dataList.length; i++) {
// this.chartData.xData = [];
@@ -107,6 +110,7 @@ export default {
// }
this.chartData.xData = [];
this.chartData.yData = [];
+ if(this.dataList.length>0&&this.dataList[0].type_data){
for (let j = 0; j < this.dataList[0].type_data.length; j++) {
if (this.dataList[0].type_data[j].value == undefined) {
this.chartData.yData.push(this.dataList[0].type_data[j].quantity);
@@ -116,6 +120,7 @@ export default {
this.chartData.xData.push(this.dataList[0].type_data[j].name);
}
}
+ }
}
let myChart = this.chart;
let option = {
diff --git a/src/components/sensorFusion/echartsLine.vue b/src/components/sensorFusion/echartsLine.vue
index 644d545..d40e40f 100644
--- a/src/components/sensorFusion/echartsLine.vue
+++ b/src/components/sensorFusion/echartsLine.vue
@@ -68,7 +68,7 @@ export default {
},
//数据判断处理
dataProcessing(val) {
- if (val.length > 10) {
+ if (val && val.length > 10) {
val = val.slice(-10);
// this.typeData = this.typeData.slice(-10);
}
@@ -92,23 +92,29 @@ export default {
this.chartData.xData = this.extractKeyValues(val, 'time').reverse();
let seriesArr = this.extractKeyValues(val, 'type_data');
const transformedData = [];
- for (let i = 0; i < seriesArr[0].length; i++) {
- const item = seriesArr[0][i]; //quantity
- const valueList = seriesArr.map((arr) => {
- let t = arr[i].value;
- if (arr[i].quantity || arr[i].quantity === 0) {
- t = arr[i].quantity;
- }
- return t;
- });
- transformedData.push({
- name: item.name,
- value: valueList
+ if (seriesArr && seriesArr.length > 0) {
+ for (let i = 0; i < seriesArr[0].length; i++) {
+ const item = seriesArr[0][i]; //quantity
+ const valueList = seriesArr.map((arr) => {
+ let t = arr[i].value;
+ if (arr[i].quantity || arr[i].quantity === 0) {
+ t = arr[i].quantity;
+ }
+ return t;
+ });
+ transformedData.push({
+ name: item.name,
+ value: valueList
+ });
+ }
+ }
+ let totalCountList = 0;
+ if (transformedData.length > 0 && transformedData[0].value) {
+ totalCountList = transformedData[0].value.map((_, i) => {
+ return transformedData.reduce((sum, curr) => sum + curr.value[i], 0);
});
}
- const totalCountList = transformedData[0].value.map((_, i) => {
- return transformedData.reduce((sum, curr) => sum + curr.value[i], 0);
- });
+
transformedData.push({
name: '总数',
value: totalCountList
@@ -141,21 +147,23 @@ export default {
let seriesArr = this.extractKeyValues(val, 'type_data');
// console.log('seriesArr-固定时刻', seriesArr);
const transformedData = [];
- for (let i = 0; i < seriesArr[0].length; i++) {
- const item = seriesArr[0][i];
- //固定间隔主题-类型组件type_data取value字段和历史数据接口不一样,历史数据接口取quantity字段
- // const valueList = seriesArr.map((arr) => arr[i].quantity);
- const valueList = seriesArr.map((arr) => {
- let t = arr[i].value;
- if (arr[i].quantity || arr[i].quantity === 0) {
- t = arr[i].quantity;
- }
- return t;
- });
- transformedData.push({
- name: item.name,
- value: valueList
- });
+ if (seriesArr && seriesArr.length > 0) {
+ for (let i = 0; i < seriesArr[0].length; i++) {
+ const item = seriesArr[0][i];
+ //固定间隔主题-类型组件type_data取value字段和历史数据接口不一样,历史数据接口取quantity字段
+ // const valueList = seriesArr.map((arr) => arr[i].quantity);
+ const valueList = seriesArr.map((arr) => {
+ let t = arr[i].value;
+ if (arr[i].quantity || arr[i].quantity === 0) {
+ t = arr[i].quantity;
+ }
+ return t;
+ });
+ transformedData.push({
+ name: item.name,
+ value: valueList
+ });
+ }
}
// console.log('transformedData-1',transformedData)
const totalCountList = transformedData[0].value.map((_, i) => {
@@ -194,26 +202,32 @@ export default {
// console.log('固定间隔-类型-seriesArr-', seriesArr);
// console.log('固定间隔-类型-xData-', this.chartData.xData);
const transformedData = [];
- for (let i = 0; i < seriesArr[0].length; i++) {
- const item = seriesArr[0][i];
- //固定间隔主题-类型组件type_data取value字段和历史数据接口不一样,历史数据接口取quantity字段
- // const valueList = seriesArr.map((arr) => arr[i].value);
- const valueList = seriesArr.map((arr) => {
- let t = arr[i].value;
- if (arr[i].quantity || arr[i].quantity === 0) {
- t = arr[i].quantity;
- }
- return t;
- });
- transformedData.push({
- name: item.name,
- value: valueList
+ if (seriesArr && seriesArr.length > 0) {
+ for (let i = 0; i < seriesArr[0].length; i++) {
+ const item = seriesArr[0][i];
+ //固定间隔主题-类型组件type_data取value字段和历史数据接口不一样,历史数据接口取quantity字段
+ // const valueList = seriesArr.map((arr) => arr[i].value);
+ const valueList = seriesArr.map((arr) => {
+ let t = arr[i].value;
+ if (arr[i].quantity || arr[i].quantity === 0) {
+ t = arr[i].quantity;
+ }
+ return t;
+ });
+ transformedData.push({
+ name: item.name,
+ value: valueList
+ });
+ }
+ }
+
+ // console.log('固定间隔-类型-transformedData-1', transformedData);
+ let totalCountList = 0;
+ if (transformedData.length > 0 && transformedData[0].value) {
+ totalCountList = transformedData[0].value.map((_, i) => {
+ return transformedData.reduce((sum, curr) => sum + curr.value[i], 0);
});
}
- // console.log('固定间隔-类型-transformedData-1', transformedData);
- const totalCountList = transformedData[0].value.map((_, i) => {
- return transformedData.reduce((sum, curr) => sum + curr.value[i], 0);
- });
transformedData.push({
name: '总数',
value: totalCountList
@@ -245,7 +259,7 @@ export default {
} else if (this.componentType == '速度') {
if (this.dataList.length > 0) {
// console.log(this.dataList[0].originalSpeed,'速度速度速度速度')
- if (this.dataList[0].originalSpeed >= 0) {
+ if (this.dataList[0].originalSpeed && this.dataList[0].originalSpeed >= 0) {
this.title = 'km/h';
} else {
this.title = 'pix/s';
@@ -308,30 +322,32 @@ export default {
var color = ['#0CD2E6', '#3751E6', '#FFC722', 'rgb(255,115,38)'];
if (this.componentType == '类型') {
// console.log('类型-seriesList', this.seriesList);
- for (let i = 0; i < this.seriesList.length; i++) {
- seriesList.push({
- name: this.seriesList[i].name,
- type: 'line',
- data: this.seriesList[i].value,
- symbolSize: 8, //标记的大小
- lineStyle: {
- color: color[i],
- width: 3,
- shadowColor: 'rgba(255,115,38,0.17)', //设置折线阴影
- shadowBlur: 5,
- shadowOffsetY: 9
- },
- itemStyle: {
- //折线拐点标志的样式
- color: color[i],
- borderColor: color[i],
- borderWidth: 2
- },
- smooth: 0.4,
- emphasis: {
- scale: 1.5
- }
- });
+ if (this.seriesList.length > 0) {
+ for (let i = 0; i < this.seriesList.length; i++) {
+ seriesList.push({
+ name: this.seriesList[i].name,
+ type: 'line',
+ data: this.seriesList[i].value,
+ symbolSize: 8, //标记的大小
+ lineStyle: {
+ color: color[i],
+ width: 3,
+ shadowColor: 'rgba(255,115,38,0.17)', //设置折线阴影
+ shadowBlur: 5,
+ shadowOffsetY: 9
+ },
+ itemStyle: {
+ //折线拐点标志的样式
+ color: color[i],
+ borderColor: color[i],
+ borderWidth: 2
+ },
+ smooth: 0.4,
+ emphasis: {
+ scale: 1.5
+ }
+ });
+ }
}
} else {
seriesList = [
diff --git a/src/components/sensorFusion/echartsPie.vue b/src/components/sensorFusion/echartsPie.vue
index dc47f8c..b6a5df1 100644
--- a/src/components/sensorFusion/echartsPie.vue
+++ b/src/components/sensorFusion/echartsPie.vue
@@ -1,257 +1,257 @@
-
+
diff --git a/src/components/sensorFusion/thermalOD.vue b/src/components/sensorFusion/thermalOD.vue
index 3f283ea..8646c99 100644
--- a/src/components/sensorFusion/thermalOD.vue
+++ b/src/components/sensorFusion/thermalOD.vue
@@ -1,291 +1,288 @@
-
+