Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
H
holo-web
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
xinkong
holo-web
Commits
3183856c
Commit
3183856c
authored
Jun 21, 2024
by
ninglx
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
wj-smartcity 济南反馈问题/展示内容统一修正提交,事件列表添加checkbox&展示逻辑修改,过长图表展示近六条等
parent
c3a14e9b
Changes
12
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
1036 additions
and
866 deletions
+1036
-866
cycleData.vue
wj-smartcity/src/views/dataQueries/rightForm/cycleData.vue
+1
-1
snapshotData.vue
...martcity/src/views/dataQueries/rightForm/snapshotData.vue
+1
-1
crossKipData.vue
...tcity/src/views/signal/dialogs/greenWave/crossKipData.vue
+0
-1
greenWaveDetail.vue
...ty/src/views/signal/dialogs/greenWave/greenWaveDetail.vue
+79
-68
eventComp.vue
...city/src/views/signal/msgs/bottomComponents/eventComp.vue
+136
-92
cross.vue
wj-smartcity/src/views/signal/msgs/left/cross.vue
+209
-150
queueLength.vue
.../views/signal/msgs/right/detailComponents/queueLength.vue
+6
-6
trafficFlow.vue
.../views/signal/msgs/right/detailComponents/trafficFlow.vue
+6
-6
keyCross.vue
wj-smartcity/src/views/signal/msgs/right/keyCross.vue
+2
-2
mutLineChart.vue
...rightIndex/crossComponents/sceComponents/mutLineChart.vue
+0
-11
index.vue
...iews/signalEvaluation/rightIndex/lineComponents/index.vue
+480
-395
mutLineChart.vue
...gnalEvaluation/rightIndex/lineComponents/mutLineChart.vue
+116
-133
No files found.
wj-smartcity/src/views/dataQueries/rightForm/cycleData.vue
View file @
3183856c
...
@@ -153,7 +153,7 @@ export default {
...
@@ -153,7 +153,7 @@ export default {
{
label
:
"
中车流量
"
,
prop
:
"
trafficFlowB
"
},
{
label
:
"
中车流量
"
,
prop
:
"
trafficFlowB
"
},
{
label
:
"
大车流量
"
,
prop
:
"
trafficFlowA
"
},
{
label
:
"
大车流量
"
,
prop
:
"
trafficFlowA
"
},
{
label
:
"
平均速度
"
,
prop
:
"
speed
"
},
{
label
:
"
平均速度
"
,
prop
:
"
speed
"
},
{
label
:
"
时间占有率
"
,
prop
:
"
timeOccupancy
"
},
{
label
:
"
平均
时间占有率
"
,
prop
:
"
timeOccupancy
"
},
{
label
:
"
平均车头时距
"
,
prop
:
"
vehheadTime
"
},
{
label
:
"
平均车头时距
"
,
prop
:
"
vehheadTime
"
},
{
label
:
"
平均车身间距
"
,
prop
:
"
vehheadDist
"
},
{
label
:
"
平均车身间距
"
,
prop
:
"
vehheadDist
"
},
{
label
:
"
85位速度
"
,
prop
:
"
v85
"
},
{
label
:
"
85位速度
"
,
prop
:
"
v85
"
},
...
...
wj-smartcity/src/views/dataQueries/rightForm/snapshotData.vue
View file @
3183856c
...
@@ -135,7 +135,7 @@ export default {
...
@@ -135,7 +135,7 @@ export default {
{
label
:
"
队尾距离
"
,
prop
:
"
teamTailDistance
"
},
{
label
:
"
队尾距离
"
,
prop
:
"
teamTailDistance
"
},
{
label
:
"
排队车辆数
"
,
prop
:
"
queueNums
"
},
{
label
:
"
排队车辆数
"
,
prop
:
"
queueNums
"
},
{
label
:
"
车道内车辆数
"
,
prop
:
"
carNums
"
},
{
label
:
"
车道内车辆数
"
,
prop
:
"
carNums
"
},
{
label
:
"
空间占有率
"
,
prop
:
"
vehicleLengthRatio
"
},
{
label
:
"
平均
空间占有率
"
,
prop
:
"
vehicleLengthRatio
"
},
{
label
:
"
平均速度
"
,
prop
:
"
speed
"
},
{
label
:
"
平均速度
"
,
prop
:
"
speed
"
},
{
label
:
"
车辆分布情况
"
,
prop
:
"
stdSpaceHeadway
"
},
{
label
:
"
车辆分布情况
"
,
prop
:
"
stdSpaceHeadway
"
},
{
label
:
"
头车速度
"
,
prop
:
"
headSpeed
"
},
{
label
:
"
头车速度
"
,
prop
:
"
headSpeed
"
},
...
...
wj-smartcity/src/views/signal/dialogs/greenWave/crossKipData.vue
View file @
3183856c
...
@@ -50,7 +50,6 @@ export default {
...
@@ -50,7 +50,6 @@ export default {
queue
:
"
25
"
,
queue
:
"
25
"
,
time
:
"
12
"
,
time
:
"
12
"
,
},
},
{
name
:
"
相城大道与南天成路
"
,
race
:
"
91
"
,
queue
:
"
25
"
,
time
:
"
12
"
},
{
{
name
:
"
相城大道与朱径支路
"
,
name
:
"
相城大道与朱径支路
"
,
race
:
"
91
"
,
race
:
"
91
"
,
...
...
wj-smartcity/src/views/signal/dialogs/greenWave/greenWaveDetail.vue
View file @
3183856c
...
@@ -5,7 +5,7 @@
...
@@ -5,7 +5,7 @@
class=
"wave-item"
class=
"wave-item"
v-for=
"item in waveData"
v-for=
"item in waveData"
:key=
"item.crossId"
:key=
"item.crossId"
style=
"width: 100%;
"
style=
"width: 100%
"
>
>
<i
class=
"item-icon"
></i>
<i
class=
"item-icon"
></i>
<div
class=
"item-title"
>
<div
class=
"item-title"
>
...
@@ -29,29 +29,33 @@
...
@@ -29,29 +29,33 @@
</div>
</div>
</div>
</div>
</div>
</div>
<div
class=
"time-run-dash"
v-if=
"contentData.areaDetailFlag"
:style=
"
{
<div
left:
class=
"time-run-dash"
(770 / contentData.cycle) * contentData.pointerSecond - 10 + 'px',
v-if=
"contentData.areaDetailFlag"
}">
:style=
"
{
<div
class=
"dash-line"
>
left: (770 / contentData.cycle) * contentData.pointerSecond - 10 + 'px',
}"
</div>
>
<div
class=
"dash-line"
></div>
<div
class=
"dash-secend"
>
{{
contentData
.
pointerSecond
}}
s
</div>
<div
class=
"dash-secend"
>
{{
contentData
.
pointerSecond
}}
s
</div>
</div>
</div>
<div
class=
"time-line"
v-if=
"contentData.areaDetailFlag"
>
<div
class=
"time-line"
v-if=
"contentData.areaDetailFlag"
>
<!--
<div-->
<!--
<div-->
<!-- class="line-pointer"-->
<!-- class="line-pointer"-->
<!-- :style="
{-->
<!-- :style="
{-->
<!-- left:-->
<!-- left:-->
<!-- (770 / contentData.cycle) * contentData.pointerSecond - 10 + 'px',-->
<!-- (770 / contentData.cycle) * contentData.pointerSecond - 10 + 'px',-->
<!-- }"-->
<!-- }"-->
<!-- >-->
<!-- >-->
<span
style=
"position:absolute"
:style=
"
{
<span
style=
"position: absolute"
:style=
"
{
left:
left:
(770 / contentData.cycle) * contentData.pointerSecond - 10 + 'px',
(770 / contentData.cycle) * contentData.pointerSecond - 10 + 'px',
}"
}"
class="pointer-second">
</span>
class="pointer-second"
<!--
</div>
-->
>
</span>
<!--
</div>
-->
<span
class=
"cycle-left"
>
0s
</span>
<span
class=
"cycle-left"
>
0s
</span>
<span
class=
"cycle"
>
{{
contentData
.
cycle
}}
s
</span>
<span
class=
"cycle"
>
{{
contentData
.
cycle
}}
s
</span>
</div>
</div>
...
@@ -59,7 +63,7 @@
...
@@ -59,7 +63,7 @@
</
template
>
</
template
>
<
script
>
<
script
>
import
{
api_phaseByTimeList
}
from
"
@/common/api/crossControl.js
"
;
import
{
api_phaseByTimeList
}
from
"
@/common/api/crossControl.js
"
;
import
wsMixins
from
"
@/common/mixin/wsMixins.js
"
;
import
wsMixins
from
"
@/common/mixin/wsMixins.js
"
;
export
default
{
export
default
{
...
@@ -77,8 +81,8 @@ export default {
...
@@ -77,8 +81,8 @@ export default {
"
redFlashTime
"
,
"
redFlashTime
"
,
],
],
waveCoordPhaseData
:
[
waveCoordPhaseData
:
[
{
second
:
85
,
forward
:
18
,
reverse
:
20
,
width
:
20
},
{
second
:
85
,
forward
:
18
,
reverse
:
20
,
width
:
20
},
{
second
:
85
,
forward
:
38
,
reverse
:
20
,
width
:
20
},
{
second
:
85
,
forward
:
38
,
reverse
:
20
,
width
:
20
},
],
],
waveData
:
[
waveData
:
[
// { title: "相城大道与朱径支路交叉口", phaseData: [], speed: 52 },
// { title: "相城大道与朱径支路交叉口", phaseData: [], speed: 52 },
...
@@ -104,7 +108,7 @@ export default {
...
@@ -104,7 +108,7 @@ export default {
},
},
},
},
mounted
()
{
mounted
()
{
console
.
log
(
'
contentData
'
,
this
.
contentData
)
console
.
log
(
"
contentData
"
,
this
.
contentData
);
this
.
getCrossWs
();
//赋值第一路口的crossId
this
.
getCrossWs
();
//赋值第一路口的crossId
// this.contentData.pointerSecond = 235;
// this.contentData.pointerSecond = 235;
this
.
timeInterval
=
setInterval
(()
=>
{
this
.
timeInterval
=
setInterval
(()
=>
{
...
@@ -143,14 +147,19 @@ export default {
...
@@ -143,14 +147,19 @@ export default {
// (item.distanceToNextCross / sum) * boxHeight + "px";
// (item.distanceToNextCross / sum) * boxHeight + "px";
// console.log((item.distanceToNextCross / sum) * boxHeight);
// console.log((item.distanceToNextCross / sum) * boxHeight);
});
});
console
.
log
(
this
.
contentData
.
forwardGreenwaveList
);
this
.
contentData
.
forwardGreenwaveList
.
forEach
((
item
)
=>
{
this
.
contentData
.
forwardGreenwaveList
.
forEach
((
item
)
=>
{
item
.
offsetToEnd
=
item
.
offsetToStart
+
this
.
contentData
.
forwardWidth
;
item
.
offsetToEnd
=
item
.
offsetToStart
+
this
.
contentData
.
forwardWidth
;
});
});
this
.
$nextTick
(()
=>
{
this
.
$nextTick
(()
=>
{
document
.
getElementById
(
"
waveCanvas
"
).
style
.
left
=
`
${
document
.
getElementById
(
'
greenWaveDialog
'
).
getBoundingClientRect
().
left
*-
1
}
px`
document
.
getElementById
(
"
waveCanvas
"
).
style
.
left
=
`
${
document
.
getElementById
(
"
waveCanvas
"
).
style
.
top
=
`
${
document
.
getElementById
(
'
greenWaveDialog
'
).
getBoundingClientRect
().
top
*-
1
}
px`
document
.
getElementById
(
"
greenWaveDialog
"
).
getBoundingClientRect
()
})
.
left
*
-
1
}
px`
;
document
.
getElementById
(
"
waveCanvas
"
).
style
.
top
=
`
${
document
.
getElementById
(
"
greenWaveDialog
"
).
getBoundingClientRect
()
.
top
*
-
1
}
px`
;
});
setTimeout
(()
=>
{
setTimeout
(()
=>
{
// this.draw();
// this.draw();
this
.
setGreenWaveLine
();
this
.
setGreenWaveLine
();
...
@@ -180,6 +189,7 @@ export default {
...
@@ -180,6 +189,7 @@ export default {
}
else
{
}
else
{
endDiv
=
divs
[
i
+
1
];
endDiv
=
divs
[
i
+
1
];
}
}
console
.
log
(
"
draw line...
"
,
startDiv
,
endDiv
);
// 获取 div 元素的位置和大小信息
// 获取 div 元素的位置和大小信息
const
startDivRect
=
startDiv
.
getBoundingClientRect
();
const
startDivRect
=
startDiv
.
getBoundingClientRect
();
const
endDivRect
=
endDiv
.
getBoundingClientRect
();
const
endDivRect
=
endDiv
.
getBoundingClientRect
();
...
@@ -197,7 +207,8 @@ export default {
...
@@ -197,7 +207,8 @@ export default {
const
endX
=
const
endX
=
endDivRect
.
left
+
endDivRect
.
left
+
endXEachSecondW
*
endXEachSecondW
*
data
[
i
===
divs
.
length
-
1
?
divs
.
length
-
1
:
i
+
1
].
offsetToStart
;
data
[
i
===
divs
.
length
-
1
?
divs
.
length
-
1
:
i
+
1
]
.
offsetToStart
;
const
endY
=
endDivRect
.
top
;
const
endY
=
endDivRect
.
top
;
if
(
type
===
"
f
"
||
type
===
"
r
"
)
{
if
(
type
===
"
f
"
||
type
===
"
r
"
)
{
ctx
.
moveTo
(
startX
,
startY
);
ctx
.
moveTo
(
startX
,
startY
);
...
@@ -358,18 +369,18 @@ export default {
...
@@ -358,18 +369,18 @@ export default {
//height: 100%;
//height: 100%;
pointer-events: none;
pointer-events: none;
}
}
.time-run-dash{
.time-run-dash
{
position: absolute;
position: absolute;
padding-left: 196px;
padding-left: 196px;
height: 100%;
height: 100%;
width: 206px;
width: 206px;
.dash-line{
.dash-line
{
height: calc(100% - 20px);
height: calc(100% - 20px);
width: 23px;
width: 23px;
background-image: url("../../../../assets/images/signal/line-pointer.png");
background-image: url("../../../../assets/images/signal/line-pointer.png");
background-size: 100% 100%;
background-size: 100% 100%;
}
}
.dash-secend{
.dash-secend
{
height: 20px;
height: 20px;
line-height: 20px;
line-height: 20px;
}
}
...
@@ -403,7 +414,6 @@ export default {
...
@@ -403,7 +414,6 @@ export default {
width: 24px;
width: 24px;
//height: 300px;
//height: 300px;
height: 240px;
height: 240px;
}
}
.pointer-second {
.pointer-second {
...
@@ -431,7 +441,8 @@ export default {
...
@@ -431,7 +441,8 @@ export default {
display: inline-block;
display: inline-block;
width: 18px;
width: 18px;
height: 17px;
height: 17px;
background: url("../../../../assets/images/dialogImg/wave-icon.png") no-repeat;
background: url("../../../../assets/images/dialogImg/wave-icon.png")
no-repeat;
background-size: 100% 100%;
background-size: 100% 100%;
}
}
...
...
wj-smartcity/src/views/signal/msgs/bottomComponents/eventComp.vue
View file @
3183856c
<
template
>
<
template
>
<div
class=
"full-w-h"
style=
"display: flex;
flex-direction: column;
"
>
<div
class=
"full-w-h"
style=
"display: flex;
flex-direction: column
"
>
<div
class=
"custom-form"
>
<div
class=
"custom-form"
>
<label
class=
"custom-form-label"
>
事件类型:
</label>
<label
class=
"custom-form-label"
>
事件类型:
</label>
<el-select
highlight-current-row
style=
"width: 120px;margin-right: 10px"
@
change=
"filterDataByType"
<el-select
highlight-current-row
style=
"width: 120px; margin-right: 10px"
@
change=
"filterDataByType"
v-model=
"value"
v-model=
"value"
placeholder=
"请选择"
>
placeholder=
"请选择"
>
<el-option
<el-option
v-for=
"item in options"
v-for=
"item in options"
:key=
"item"
:key=
"item"
:label=
"$store.state.dicts.EventType.find((it) =>
{
:label=
"
$store.state.dicts.EventType.find((it) =>
{
return it.code == item;
return it.code == item;
})?.name || item"
})?.name || item
:value="item">
"
:value="item"
>
</el-option>
</el-option>
</el-select>
</el-select>
<label
class=
"custom-form-label"
>
时段选择:
</label>
<label
class=
"custom-form-label"
>
时段选择:
</label>
...
@@ -21,7 +28,8 @@
...
@@ -21,7 +28,8 @@
type=
"datetimerange"
type=
"datetimerange"
range-separator=
"至"
range-separator=
"至"
start-placeholder=
"开始日期"
start-placeholder=
"开始日期"
end-placeholder=
"结束日期"
>
end-placeholder=
"结束日期"
>
</el-date-picker>
</el-date-picker>
</div>
</div>
<el-table
<el-table
...
@@ -34,42 +42,47 @@
...
@@ -34,42 +42,47 @@
header-cell-class-name=
"custom-table-header-cell"
header-cell-class-name=
"custom-table-header-cell"
@
row-click=
"rowClick"
@
row-click=
"rowClick"
:data=
"listDataCopy"
:data=
"listDataCopy"
ref=
"multipleTable"
:row-class-name=
"getRowClassName"
:row-class-name=
"getRowClassName"
style=
"width: 100%;flex:1"
style=
"width: 100%; flex: 1"
height=
"100%"
>
height=
"100%"
<!--
<el-table-column-->
@
selection-change=
"handleSelectionChange"
<!-- show-overflow-tooltip-->
>
<!-- align="center"-->
<!--
<el-table-column-->
<!-- label="事件编号">-->
<!-- show-overflow-tooltip-->
<!--
<template
slot-scope=
"scope"
>
{{
occupancyValue
(
scope
.
row
.
eventId
)
}}
</
template
>
-->
<!-- align="center"-->
<!-- </el-table-column>-->
<!-- label="事件编号">-->
<el-table-column
width=
"100"
align=
"center"
label=
"事件编号"
<!--
<template
slot-scope=
"scope"
>
{{
occupancyValue
(
scope
.
row
.
eventId
)
}}
</
template
>
-->
type=
"index"
>
<!-- </el-table-column>-->
<el-table-column
type=
"selection"
width=
"55"
>
</el-table-column>
<el-table-column
width=
"100"
align=
"center"
label=
"事件编号"
type=
"index"
>
</el-table-column>
</el-table-column>
<el-table-column
<el-table-column
prop=
"eventType"
prop=
"eventType"
align=
"center"
align=
"center"
label=
"事件类型"
label=
"事件类型"
show-overflow-tooltip
>
show-overflow-tooltip
<
template
slot-scope=
"scope"
>
{{
translateDict
(
scope
.
row
.
eventType
,
'
EventType
'
)
}}
</
template
>
>
<
template
slot-scope=
"scope"
>
{{
translateDict
(
scope
.
row
.
eventType
,
"
EventType
"
)
}}
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
<el-table-column
prop=
"startTime"
prop=
"startTime"
align=
"center"
align=
"center"
label=
"时间"
label=
"时间"
show-overflow-tooltip
>
show-overflow-tooltip
>
</el-table-column>
</el-table-column>
<el-table-column
<el-table-column
align=
"center"
label=
"位置"
show-overflow-tooltip
>
align=
"center"
<
template
slot-scope=
"scope"
>
{{
label=
"位置"
occupancyValue
(
scope
.
row
.
placeDesc
)
show-overflow-tooltip
>
}}
</
template
>
<
template
slot-scope=
"scope"
>
{{
occupancyValue
(
scope
.
row
.
placeDesc
)
}}
</
template
>
</el-table-column>
</el-table-column>
<el-table-column
<el-table-column
align=
"center"
label=
"备注"
show-overflow-tooltip
>
align=
"center"
<
template
slot-scope=
"scope"
>
{{
label=
"备注"
occupancyValue
(
scope
.
row
.
remark
)
show-overflow-tooltip
>
}}
</
template
>
<
template
slot-scope=
"scope"
>
{{
occupancyValue
(
scope
.
row
.
remark
)
}}
</
template
>
</el-table-column>
</el-table-column>
</el-table>
</el-table>
</div>
</div>
...
@@ -77,80 +90,110 @@
...
@@ -77,80 +90,110 @@
<
script
>
<
script
>
import
Vue
from
"
vue
"
;
import
Vue
from
"
vue
"
;
import
*
as
mapTool
from
'
@/utils/mapboxTools
'
import
*
as
mapTool
from
"
@/utils/mapboxTools
"
;
import
{
getHoloEventList
}
from
"
@/dao/optApi
"
;
import
{
getHoloEventList
}
from
"
@/dao/optApi
"
;
import
{
occupancyValue
}
from
"
@/utils
"
;
import
{
occupancyValue
}
from
"
@/utils
"
;
import
eventPopupVue
from
"
../../mapPopup/eventPopup.vue
"
;
import
eventPopupVue
from
"
../../mapPopup/eventPopup.vue
"
;
const
EventPopupVue
=
Vue
.
extend
(
eventPopupVue
);
const
EventPopupVue
=
Vue
.
extend
(
eventPopupVue
);
export
default
{
export
default
{
name
:
'
eventComp
'
,
name
:
"
eventComp
"
,
props
:
[
'
crossData
'
],
props
:
[
"
crossData
"
],
data
()
{
data
()
{
return
{
return
{
options
:
[],
options
:
[],
value
:
''
,
value
:
""
,
dateTimeRange
:
[],
dateTimeRange
:
[],
tableData
:
[],
tableData
:
[],
listDataCopy
:
[],
listDataCopy
:
[],
loading
:
true
,
loading
:
true
,
}
multipleSelection
:
[],
};
},
},
mounted
()
{
mounted
()
{
if
(
time_config
.
homepage_eventTime
)
{
if
(
time_config
.
homepage_eventTime
)
{
this
.
dateTimeRange
=
[
this
.
dateTimeRange
=
[
new
Date
(
time_config
.
homepage_eventTime
[
0
]),
new
Date
(
time_config
.
homepage_eventTime
[
0
]),
new
Date
(
time_config
.
homepage_eventTime
[
1
])
new
Date
(
time_config
.
homepage_eventTime
[
1
])
,
];
];
}
else
{
}
else
{
this
.
dateTimeRange
=
[
this
.
dateTimeRange
=
[
new
Date
(
new
Date
(
new
Date
().
setTime
(
new
Date
().
getTime
()
-
3600
*
1000
*
24
)),
new
Date
().
setTime
(
new
Date
().
getTime
()
-
3600
*
1000
*
24
)
new
Date
(),
),
new
Date
()
];
];
}
}
this
.
getData
()
this
.
getData
()
;
},
},
methods
:
{
methods
:
{
showEventPoint
(
events
){
let
features
=
[]
for
(
let
item
of
events
)
{
if
(
item
.
lng
&&
item
.
lat
)
{
features
.
push
(
turf
.
point
([
item
.
lng
,
item
.
lat
],
item
))
}
}
// features.push(turf.point([map.getCenter().lng,map.getCenter().lat],{a:1}))
let
geo
=
turf
.
featureCollection
(
features
)
mapTool
.
addOrUpdateEventPoint1
(
window
.
map
,
geo
)
window
.
map
.
off
(
'
click
'
,
'
eventPoint1
'
,
this
.
eventPointClick
)
window
.
map
.
on
(
'
click
'
,
'
eventPoint1
'
,
this
.
eventPointClick
)
},
eventPointClick
(
e
)
{
mapTool
.
addPopupEvent
(
window
.
map
,
e
.
features
[
0
].
properties
)
},
handleSelectionChange
(
val
)
{
this
.
multipleSelection
=
val
;
this
.
showEventPoint
(
this
.
multipleSelection
)
},
translateDict
(
value
,
type
)
{
translateDict
(
value
,
type
)
{
let
result
=
value
let
result
=
value
;
let
target
=
this
.
$store
.
state
.
dicts
[
type
].
find
((
dict
)
=>
{
let
target
=
this
.
$store
.
state
.
dicts
[
type
].
find
((
dict
)
=>
{
return
dict
.
code
==
value
;
return
dict
.
code
==
value
;
})
})
;
if
(
target
)
{
if
(
target
)
{
result
=
target
.
name
result
=
target
.
name
;
}
}
return
result
return
result
;
},
},
occupancyValue
,
occupancyValue
,
sliceTableAndRender
(){
let
sliceSelection
=
this
.
listDataCopy
.
slice
(
0
,
10
);
this
.
$nextTick
(()
=>
{
for
(
let
i
=
0
;
i
<
this
.
listDataCopy
.
length
;
i
++
)
{
if
(
i
<=
9
)
{
this
.
$refs
.
multipleTable
.
toggleRowSelection
(
this
.
listDataCopy
[
i
],
true
);
}
}
this
.
showEventPoint
(
sliceSelection
)
});
},
filterDataByType
()
{
filterDataByType
()
{
this
.
listDataCopy
=
this
.
tableData
.
filter
(
item
=>
{
this
.
listDataCopy
=
this
.
tableData
.
filter
(
(
item
)
=>
{
return
this
.
value
===
item
.
eventType
return
this
.
value
===
item
.
eventType
;
})
})
;
this
.
$emit
(
'
showEventPoint
'
,
this
.
listDataCopy
)
this
.
sliceTableAndRender
(
)
},
},
getData
()
{
getData
()
{
this
.
loading
=
true
this
.
loading
=
true
;
getHoloEventList
({
getHoloEventList
({
crossId
:
this
.
crossData
.
id
,
crossId
:
this
.
crossData
.
id
,
"
end
"
:
this
.
dateTimeRange
[
1
].
toLocaleString
().
replaceAll
(
'
/
'
,
'
-
'
),
end
:
this
.
dateTimeRange
[
1
].
toLocaleString
().
replaceAll
(
"
/
"
,
"
-
"
),
"
start
"
:
this
.
dateTimeRange
[
0
].
toLocaleString
().
replaceAll
(
'
/
'
,
'
-
'
),
start
:
this
.
dateTimeRange
[
0
].
toLocaleString
().
replaceAll
(
"
/
"
,
"
-
"
),
}).
then
(
res
=>
{
}).
then
((
res
)
=>
{
this
.
loading
=
false
this
.
loading
=
false
;
this
.
$emit
(
'
showEventPoint
'
,
res
.
content
)
this
.
tableData
=
res
.
content
;
this
.
tableData
=
res
.
content
this
.
listDataCopy
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
tableData
));
this
.
listDataCopy
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
tableData
))
this
.
options
=
res
.
content
.
reduce
((
a
,
b
)
=>
{
this
.
options
=
res
.
content
.
reduce
((
a
,
b
)
=>
{
if
(
!
a
.
includes
(
b
.
eventType
))
{
if
(
!
a
.
includes
(
b
.
eventType
))
{
a
.
push
(
b
.
eventType
)
a
.
push
(
b
.
eventType
)
;
}
}
return
a
return
a
;
},
[])
},
[]);
})
this
.
sliceTableAndRender
()
});
},
},
rowClick
(
row
)
{
rowClick
(
row
)
{
mapTool
.
addPopupEvent
(
window
.
map
,
row
)
mapTool
.
addPopupEvent
(
window
.
map
,
row
)
;
},
},
getRowClassName
(
e
)
{
getRowClassName
(
e
)
{
if
(
e
.
rowIndex
%
2
!==
0
)
{
if
(
e
.
rowIndex
%
2
!==
0
)
{
...
@@ -159,8 +202,8 @@ export default {
...
@@ -159,8 +202,8 @@ export default {
return
"
row-odd
"
;
return
"
row-odd
"
;
}
}
},
},
}
}
,
}
}
;
</
script
>
</
script
>
<
style
lang=
"less"
scoped
>
<
style
lang=
"less"
scoped
>
...
@@ -170,7 +213,8 @@ export default {
...
@@ -170,7 +213,8 @@ export default {
align-items: center;
align-items: center;
}
}
::v-deep .el-range-input, ::v-deep .el-input__inner {
::v-deep .el-range-input,
::v-deep .el-input__inner {
background-color: transparent;
background-color: transparent;
color: white;
color: white;
}
}
...
...
wj-smartcity/src/views/signal/msgs/left/cross.vue
View file @
3183856c
This diff is collapsed.
Click to expand it.
wj-smartcity/src/views/signal/msgs/right/detailComponents/queueLength.vue
View file @
3183856c
...
@@ -205,8 +205,8 @@ export default {
...
@@ -205,8 +205,8 @@ export default {
title
,
title
,
dataZoom
:
{
dataZoom
:
{
type
:
"
inside
"
,
type
:
"
inside
"
,
startValue
:
Object
.
keys
(
yDatas
)
.
length
-
6
,
startValue
:
xData
.
length
-
6
,
endValue
:
Object
.
keys
(
yDatas
).
length
-
1
,
endValue
:
xData
.
length
-
1
,
},
},
tooltip
:
{
tooltip
:
{
enterable
:
true
,
enterable
:
true
,
...
@@ -327,9 +327,9 @@ export default {
...
@@ -327,9 +327,9 @@ export default {
renderTurn
()
{
renderTurn
()
{
let
filterData
=
this
.
allTurnData
.
filter
(
item
=>
{
let
filterData
=
this
.
allTurnData
.
filter
(
item
=>
{
return
item
.
fRidDir
===
this
.
selectVal
return
item
.
fRidDir
===
this
.
selectVal
})
})
.
reverse
()
let
xData
=
filterData
.
reduce
((
a
,
b
)
=>
{
let
xData
=
filterData
.
reduce
((
a
,
b
)
=>
{
let
time
=
new
Date
(
b
.
windowEndTime
).
toLocaleTimeString
()
let
time
=
new
Date
(
b
.
windowEndTime
).
toLocaleTimeString
()
.
slice
(
0
,
5
)
if
(
!
a
.
includes
(
time
)){
if
(
!
a
.
includes
(
time
)){
a
.
push
(
time
)
a
.
push
(
time
)
}
}
...
@@ -361,8 +361,8 @@ export default {
...
@@ -361,8 +361,8 @@ export default {
title
,
title
,
dataZoom
:
{
dataZoom
:
{
type
:
"
inside
"
,
type
:
"
inside
"
,
startValue
:
Object
.
keys
(
yDatas
)
.
length
-
6
,
startValue
:
xData
.
length
-
6
,
endValue
:
Object
.
keys
(
yDatas
).
length
-
1
,
endValue
:
xData
.
length
-
1
,
},
},
color
:
colors
,
color
:
colors
,
tooltip
:
{
tooltip
:
{
...
...
wj-smartcity/src/views/signal/msgs/right/detailComponents/trafficFlow.vue
View file @
3183856c
...
@@ -229,8 +229,8 @@ export default {
...
@@ -229,8 +229,8 @@ export default {
title
,
title
,
dataZoom
:
{
dataZoom
:
{
type
:
"
inside
"
,
type
:
"
inside
"
,
startValue
:
Object
.
keys
(
yDatas
)
.
length
-
6
,
startValue
:
xData
.
length
-
6
,
endValue
:
Object
.
keys
(
yDatas
).
length
-
1
,
endValue
:
xData
.
length
-
1
,
},
},
color
:
this
.
colors
,
color
:
this
.
colors
,
tooltip
:
{
tooltip
:
{
...
@@ -378,8 +378,8 @@ export default {
...
@@ -378,8 +378,8 @@ export default {
title
,
title
,
dataZoom
:
{
dataZoom
:
{
type
:
"
inside
"
,
type
:
"
inside
"
,
startValue
:
Object
.
keys
(
yDatas
)
.
length
-
6
,
startValue
:
xData
.
length
-
6
,
endValue
:
Object
.
keys
(
yDatas
).
length
-
1
,
endValue
:
xData
.
length
-
1
,
},
},
color
:
[
color
:
[
"
rgba(24, 144, 255, 1)
"
,
"
rgba(24, 144, 255, 1)
"
,
...
@@ -552,8 +552,8 @@ export default {
...
@@ -552,8 +552,8 @@ export default {
title
,
title
,
dataZoom
:
{
dataZoom
:
{
type
:
"
inside
"
,
type
:
"
inside
"
,
startValue
:
Object
.
keys
(
yDatas
)
.
length
-
6
,
startValue
:
xData
.
length
-
6
,
endValue
:
Object
.
keys
(
yDatas
).
length
-
1
,
endValue
:
xData
.
length
-
1
,
},
},
color
:
[
color
:
[
"
rgba(24, 144, 255, 1)
"
,
"
rgba(24, 144, 255, 1)
"
,
...
...
wj-smartcity/src/views/signal/msgs/right/keyCross.vue
View file @
3183856c
...
@@ -88,8 +88,8 @@ export default {
...
@@ -88,8 +88,8 @@ export default {
title
,
title
,
dataZoom
:
{
dataZoom
:
{
type
:
"
inside
"
,
type
:
"
inside
"
,
startValue
:
Object
.
keys
(
this
.
chartResult
)
.
length
-
6
,
startValue
:
this
.
xData
.
length
-
6
,
endValue
:
Object
.
keys
(
this
.
chartResult
).
length
-
1
,
endValue
:
this
.
xData
.
length
-
1
,
},
},
tooltip
:
{
tooltip
:
{
enterable
:
true
,
enterable
:
true
,
...
...
wj-smartcity/src/views/signalEvaluation/rightIndex/crossComponents/sceComponents/mutLineChart.vue
View file @
3183856c
...
@@ -179,17 +179,6 @@ export default {
...
@@ -179,17 +179,6 @@ export default {
}
}
});
});
},
},
timeSetSort
(
time
)
{
// 使用 Set 进行去重
const
uniqueTimeStrings
=
[...
new
Set
(
time
)];
// 使用 sort 方法进行排序
const
sortedTimeStrings
=
uniqueTimeStrings
.
sort
((
a
,
b
)
=>
{
const
timeA
=
new
Date
(
`2000-01-01
${
a
}
`
);
const
timeB
=
new
Date
(
`2000-01-01
${
b
}
`
);
return
timeA
-
timeB
;
});
return
sortedTimeStrings
;
},
getChart
(
data
)
{
getChart
(
data
)
{
const
xData
=
[...
new
Set
(
data
.
map
((
item
)
=>
item
.
metricTime
))];
const
xData
=
[...
new
Set
(
data
.
map
((
item
)
=>
item
.
metricTime
))];
// const xData = metricsList.map((item) => item.metricTime);
// const xData = metricsList.map((item) => item.metricTime);
...
...
wj-smartcity/src/views/signalEvaluation/rightIndex/lineComponents/index.vue
View file @
3183856c
This diff is collapsed.
Click to expand it.
wj-smartcity/src/views/signalEvaluation/rightIndex/lineComponents/mutLineChart.vue
View file @
3183856c
...
@@ -8,11 +8,15 @@
...
@@ -8,11 +8,15 @@
element-loading-background=
"rgba(0,0,0, 0.4)"
element-loading-background=
"rgba(0,0,0, 0.4)"
>
>
<div
class=
"item-txt"
>
详细指标查询
</div>
<div
class=
"item-txt"
>
详细指标查询
</div>
<div
class=
"content-container"
style=
"flex: 1;display: flex;flex-direction: column"
>
<div
<div
class=
"forms"
style=
"display: flex;"
>
class=
"content-container"
style=
"flex: 1; display: flex; flex-direction: column"
>
<div
class=
"forms"
style=
"display: flex"
>
<div
class=
"select-box"
>
<div
class=
"select-box"
>
<label
class=
"custom-form-label"
>
路口名称:
</label>
<label
class=
"custom-form-label"
>
路口名称:
</label>
<el-select
<el-select
style=
"margin-right: 10px"
v-model=
"crossModel"
v-model=
"crossModel"
placeholder=
"请选择路口"
placeholder=
"请选择路口"
class=
"custom-form-input"
class=
"custom-form-input"
...
@@ -42,7 +46,7 @@
...
@@ -42,7 +46,7 @@
</el-option>
</el-option>
</el-select>
</el-select>
<el-select
<el-select
style=
"margin-left: 10px;
"
style=
"margin-left: 10px
"
multiple
multiple
collapse-tags
collapse-tags
v-model=
"scopeListModel"
v-model=
"scopeListModel"
...
@@ -94,16 +98,14 @@
...
@@ -94,16 +98,14 @@
</div>
</div>
<div
class=
"line-chart noDataMsg"
v-if=
"!indexModel"
>
暂无数据
</div>
<div
class=
"line-chart noDataMsg"
v-if=
"!indexModel"
>
暂无数据
</div>
<div
class=
"line-chart"
ref=
"chartLine"
v-else
></div>
<div
class=
"line-chart"
ref=
"chartLine"
v-else
></div>
</div>
</div>
</div>
</div>
</
template
>
</
template
>
<
script
>
<
script
>
import
{
bottomMenu
,
bottomCurve
}
from
"
@/common/api/signalEvaluation.js
"
;
import
{
bottomMenu
,
bottomCurve
}
from
"
@/common/api/signalEvaluation.js
"
;
import
{
formatDateTime
}
from
"
@/common/js/utils.js
"
;
import
{
formatDateTime
}
from
"
@/common/js/utils.js
"
;
import
{
getFontSize
}
from
"
@/config/holo/fontSize
"
;
import
{
getFontSize
}
from
"
@/config/holo/fontSize
"
;
export
default
{
export
default
{
data
()
{
data
()
{
...
@@ -115,10 +117,10 @@ export default {
...
@@ -115,10 +117,10 @@ export default {
scopeListModel
:
[],
scopeListModel
:
[],
scopeListOption
:
[],
scopeListOption
:
[],
scopeOption
:
[
scopeOption
:
[
{
label
:
"
路口
"
,
value
:
0
},
{
label
:
"
路口
"
,
value
:
0
},
{
label
:
"
进口道
"
,
value
:
1
},
{
label
:
"
进口道
"
,
value
:
1
},
{
label
:
"
方向
"
,
value
:
2
},
{
label
:
"
方向
"
,
value
:
2
},
{
label
:
"
车道
"
,
value
:
3
},
{
label
:
"
车道
"
,
value
:
3
},
],
],
xData
:
[],
xData
:
[],
treeModel
:
""
,
treeModel
:
""
,
...
@@ -127,9 +129,9 @@ export default {
...
@@ -127,9 +129,9 @@ export default {
timeModel
:
5
,
timeModel
:
5
,
indexModel
:
""
,
indexModel
:
""
,
timeOptions
:
[
timeOptions
:
[
{
label
:
"
5min
"
,
value
:
5
},
{
label
:
"
5min
"
,
value
:
5
},
{
label
:
"
15min
"
,
value
:
15
},
{
label
:
"
15min
"
,
value
:
15
},
{
label
:
"
30min
"
,
value
:
30
},
{
label
:
"
30min
"
,
value
:
30
},
],
],
// indexOptions: [
// indexOptions: [
// { code: "1", name: "不停车通过率" },
// { code: "1", name: "不停车通过率" },
...
@@ -144,31 +146,15 @@ export default {
...
@@ -144,31 +146,15 @@ export default {
checkStrictly
:
true
,
checkStrictly
:
true
,
multiple
:
true
,
multiple
:
true
,
},
},
treeData
:
[
{
value
:
"
路口
"
,
name
:
"
路口
"
,
children
:
[
{
value
:
"
进口道
"
,
name
:
"
进口道
"
,
children
:
[
{
value
:
"
东
"
,
name
:
"
东
"
},
{
value
:
"
北
"
,
name
:
"
北
"
,
children
:
[]},
],
},
],
},
],
dirObj
:
{
dirObj
:
{
"
1
"
:
"
北进口
"
,
1
:
"
北进口
"
,
"
2
"
:
"
东北进口
"
,
2
:
"
东北进口
"
,
"
3
"
:
"
东进口
"
,
3
:
"
东进口
"
,
"
4
"
:
"
东南进口
"
,
4
:
"
东南进口
"
,
"
5
"
:
"
南进口
"
,
5
:
"
南进口
"
,
"
6
"
:
"
西南进口
"
,
6
:
"
西南进口
"
,
"
7
"
:
"
西进口
"
,
7
:
"
西进口
"
,
"
8
"
:
"
西北进口
"
,
8
:
"
西北进口
"
,
},
},
turnObj
:
{
turnObj
:
{
u
:
"
掉头
"
,
u
:
"
掉头
"
,
...
@@ -180,8 +166,7 @@ export default {
...
@@ -180,8 +166,7 @@ export default {
};
};
},
},
props
:
[
"
date
"
,
"
detailApiData
"
,
"
areaObj
"
,
"
indexOption
"
],
props
:
[
"
date
"
,
"
detailApiData
"
,
"
areaObj
"
,
"
indexOption
"
],
mounted
()
{
mounted
()
{},
},
watch
:
{
watch
:
{
date
(
val
)
{
date
(
val
)
{
this
.
dateAll
=
[
this
.
dateAll
=
[
...
@@ -198,7 +183,7 @@ export default {
...
@@ -198,7 +183,7 @@ export default {
// this.indexModel = this.indexOption?.[
// this.indexModel = this.indexOption?.[
// this.indexOption.length - 1
// this.indexOption.length - 1
// ].metricName;
// ].metricName;
this
.
indexModel
=
'
平均速度
'
this
.
indexModel
=
"
平均速度
"
;
this
.
crossOption
=
this
.
areaObj
.
crossList
;
this
.
crossOption
=
this
.
areaObj
.
crossList
;
if
(
this
.
crossOption
.
length
)
{
if
(
this
.
crossOption
.
length
)
{
this
.
crossModel
=
this
.
crossOption
[
0
].
crossId
;
this
.
crossModel
=
this
.
crossOption
[
0
].
crossId
;
...
@@ -208,7 +193,6 @@ export default {
...
@@ -208,7 +193,6 @@ export default {
];
];
this
.
initLineData
();
this
.
initLineData
();
}
}
},
},
scopeChange
()
{
scopeChange
()
{
this
.
scopeListModel
=
[];
this
.
scopeListModel
=
[];
...
@@ -242,7 +226,7 @@ export default {
...
@@ -242,7 +226,7 @@ export default {
return
data
;
return
data
;
},
},
initLineData
()
{
initLineData
()
{
if
(
!
this
.
indexModel
)
return
if
(
!
this
.
indexModel
)
return
;
this
.
detailedIndexLoading
=
true
;
this
.
detailedIndexLoading
=
true
;
bottomCurve
({
bottomCurve
({
crossId
:
this
.
crossModel
,
crossId
:
this
.
crossModel
,
...
@@ -253,7 +237,7 @@ export default {
...
@@ -253,7 +237,7 @@ export default {
startTime
:
this
.
dateAll
[
0
],
startTime
:
this
.
dateAll
[
0
],
endTime
:
this
.
dateAll
[
1
],
endTime
:
this
.
dateAll
[
1
],
}).
then
((
res
)
=>
{
}).
then
((
res
)
=>
{
console
.
log
(
'
bottom data
'
,
res
.
data
)
console
.
log
(
"
bottom data
"
,
res
.
data
);
this
.
detailedIndexLoading
=
false
;
this
.
detailedIndexLoading
=
false
;
if
(
res
&&
res
.
data
)
{
if
(
res
&&
res
.
data
)
{
const
data
=
res
.
data
.
content
.
map
((
item
)
=>
{
const
data
=
res
.
data
.
content
.
map
((
item
)
=>
{
...
@@ -264,17 +248,6 @@ export default {
...
@@ -264,17 +248,6 @@ export default {
}
}
});
});
},
},
timeSetSort
(
time
)
{
// 使用 Set 进行去重
const
uniqueTimeStrings
=
[...
new
Set
(
time
)];
// 使用 sort 方法进行排序
const
sortedTimeStrings
=
uniqueTimeStrings
.
sort
((
a
,
b
)
=>
{
const
timeA
=
new
Date
(
`2000-01-01
${
a
}
`
);
const
timeB
=
new
Date
(
`2000-01-01
${
b
}
`
);
return
timeA
-
timeB
;
});
return
sortedTimeStrings
;
},
getChart
(
data
)
{
getChart
(
data
)
{
const
xData
=
[...
new
Set
(
data
.
map
((
item
)
=>
item
.
metricTime
))];
const
xData
=
[...
new
Set
(
data
.
map
((
item
)
=>
item
.
metricTime
))];
// const xData = metricsList.map((item) => item.metricTime);
// const xData = metricsList.map((item) => item.metricTime);
...
@@ -287,10 +260,20 @@ export default {
...
@@ -287,10 +260,20 @@ export default {
objData
[
item
.
scopeName
].
push
(
item
.
value
||
0
);
objData
[
item
.
scopeName
].
push
(
item
.
value
||
0
);
});
});
const
seriesData
=
[];
const
seriesData
=
[];
let
colors
=
[
'
#00933a
'
,
'
#ff8200
'
,
'
#c0cfc5
'
,
'
#f5da3e
'
,
let
colors
=
[
'
#5b45ff
'
,
'
#ed4438
'
,
'
#aceb2d
'
,
'
#5e6c52
'
,
"
#00933a
"
,
'
#458fff
'
,
'
#c3b5f0
'
,
'
#9a5b67
'
]
"
#ff8200
"
,
legendData
.
forEach
((
item
,
index
)
=>
{
"
#c0cfc5
"
,
"
#f5da3e
"
,
"
#5b45ff
"
,
"
#ed4438
"
,
"
#aceb2d
"
,
"
#5e6c52
"
,
"
#458fff
"
,
"
#c3b5f0
"
,
"
#9a5b67
"
,
];
legendData
.
forEach
((
item
,
index
)
=>
{
seriesData
.
push
({
seriesData
.
push
({
yAxisIndex
:
0
,
yAxisIndex
:
0
,
name
:
item
,
name
:
item
,
...
@@ -300,7 +283,7 @@ export default {
...
@@ -300,7 +283,7 @@ export default {
showSymbol
:
false
,
showSymbol
:
false
,
lineStyle
:
{
lineStyle
:
{
width
:
2
,
width
:
2
,
color
:
colors
[
index
]
color
:
colors
[
index
]
,
// color: obj[item].color,
// color: obj[item].color,
},
},
areaStyle
:
{
areaStyle
:
{
...
@@ -316,7 +299,7 @@ export default {
...
@@ -316,7 +299,7 @@ export default {
},
},
{
{
offset
:
1
,
offset
:
1
,
color
:
colors
[
index
]
,
// 0% 处的颜色
color
:
colors
[
index
]
,
// 0% 处的颜色
},
},
],
],
false
false
...
@@ -330,7 +313,7 @@ export default {
...
@@ -330,7 +313,7 @@ export default {
// color: colors,
// color: colors,
// color: colorList,
// color: colorList,
legend
:
{
legend
:
{
inactiveColor
:
'
rgba(255,255,255,0.7)
'
,
inactiveColor
:
"
rgba(255,255,255,0.7)
"
,
right
:
0
,
right
:
0
,
textStyle
:
{
textStyle
:
{
color
:
"
rgba(255,255,255,0.9)
"
,
color
:
"
rgba(255,255,255,0.9)
"
,
...
@@ -342,17 +325,17 @@ export default {
...
@@ -342,17 +325,17 @@ export default {
bottom
:
0
,
bottom
:
0
,
left
:
0
,
left
:
0
,
top
:
40
,
top
:
40
,
containLabel
:
true
containLabel
:
true
,
},
},
tooltip
:
{
tooltip
:
{
trigger
:
"
axis
"
,
trigger
:
"
axis
"
,
backgroundColor
:
'
rgba(0,0,0,0.8)
'
,
backgroundColor
:
"
rgba(0,0,0,0.8)
"
,
borderWidth
:
0
,
borderWidth
:
0
,
textStyle
:
{
textStyle
:
{
fontSize
:
getFontSize
(
12
),
fontSize
:
getFontSize
(
12
),
color
:
'
white
'
,
color
:
"
white
"
,
},
},
confine
:
true
confine
:
true
,
// formatter: (params) => {
// formatter: (params) => {
// return `${this.indexModel} : ${params[0].value}`;
// return `${this.indexModel} : ${params[0].value}`;
// },
// },
...
@@ -365,7 +348,7 @@ export default {
...
@@ -365,7 +348,7 @@ export default {
type
:
"
category
"
,
type
:
"
category
"
,
boundaryGap
:
false
,
boundaryGap
:
false
,
// prettier-ignore
// prettier-ignore
data
:
xData
data
:
xData
,
},
},
{
{
type
:
"
category
"
,
type
:
"
category
"
,
...
@@ -383,9 +366,9 @@ export default {
...
@@ -383,9 +366,9 @@ export default {
},
},
splitLine
:
{
splitLine
:
{
lineStyle
:
{
lineStyle
:
{
color
:
'
rgba(255,255,255,0.2)
'
color
:
"
rgba(255,255,255,0.2)
"
,
}
}
,
}
}
,
},
},
{
{
type
:
"
value
"
,
type
:
"
value
"
,
...
@@ -394,9 +377,9 @@ export default {
...
@@ -394,9 +377,9 @@ export default {
},
},
splitLine
:
{
splitLine
:
{
lineStyle
:
{
lineStyle
:
{
color
:
'
rgba(255,255,255,0.2)
'
color
:
"
rgba(255,255,255,0.2)
"
,
}
}
,
}
}
,
},
},
],
],
series
:
seriesData
,
series
:
seriesData
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment