|
@@ -0,0 +1,621 @@
|
|
|
+<template>
|
|
|
+ <div class="side-data-box lantian">
|
|
|
+ <div class="side-data" v-if="type === 'left'">
|
|
|
+ <div class="notice-data">
|
|
|
+ <div class="chart-title">项目信息</div>
|
|
|
+ <div class="notice-list">
|
|
|
+ <div class="notice-item">
|
|
|
+ <div class="number">项目名称</div>
|
|
|
+ <div class="value">
|
|
|
+ <div class="hui-ellipsis">项目名称</div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="notice-item">
|
|
|
+ <div class="number">项目面积</div>
|
|
|
+ <div class="value">
|
|
|
+ <div class="hui-ellipsis">122平方米</div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="notice-item">
|
|
|
+ <div class="number">开工日期</div>
|
|
|
+ <div class="value">
|
|
|
+ <div class="hui-ellipsis">2024-01-01</div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="notice-item">
|
|
|
+ <div class="number">竣工日期</div>
|
|
|
+ <div class="value">
|
|
|
+ <div class="hui-ellipsis">2025-01-01</div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="notice-item">
|
|
|
+ <div class="number">项目地址</div>
|
|
|
+ <div class="value">
|
|
|
+ <div class="hui-ellipsis">项目地址</div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="access-control-data">
|
|
|
+ <div class="chart-title">劳务考勤</div>
|
|
|
+ <div class="access-control">
|
|
|
+ <div class="access-control-item">
|
|
|
+ <div class="access-control-img"></div>
|
|
|
+ <div class="access-control-label">
|
|
|
+ <div class="name">周进场人数</div>
|
|
|
+ <div class="test">
|
|
|
+ <span class="alibaba number">746</span>
|
|
|
+ <span class="unit">人</span>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="access-control-item">
|
|
|
+ <div class="access-control-img people-visitor"></div>
|
|
|
+ <div class="access-control-label">
|
|
|
+ <div class="name">周出场人数</div>
|
|
|
+ <div class="test">
|
|
|
+ <span class="alibaba number">723</span>
|
|
|
+ <span class="unit">人</span>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="access-control-title">
|
|
|
+ <div class="access-control-icon"></div>
|
|
|
+ <span class="title-label">进场记录</span>
|
|
|
+ </div>
|
|
|
+ <div class="access-control-chart">
|
|
|
+ <div class="legend">
|
|
|
+ <div class="legend-item">
|
|
|
+ <span class="legend-page bg-blue1"></span>
|
|
|
+ <span class="legend-name">进场人数</span>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div id="chart1" class="chart-box"></div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="alarm-data">
|
|
|
+ <div class="chart-title">基坑监测</div>
|
|
|
+ <div class="alarm-record">
|
|
|
+ <div class="alarm-test">
|
|
|
+ <div class="alarm-icon"></div>
|
|
|
+ <div class="alarm-test-number">
|
|
|
+ <div class="alarm-all">
|
|
|
+ <div class="value">
|
|
|
+ <div class="number alibaba">0</div>
|
|
|
+ <div class="unit">次</div>
|
|
|
+ </div>
|
|
|
+ <div class="label">总报警</div>
|
|
|
+ </div>
|
|
|
+ <div class="alarm-line"></div>
|
|
|
+ <div class="test-item">
|
|
|
+ <div class="value">
|
|
|
+ <div class="number alibaba color-red">0</div>
|
|
|
+ <div class="unit">次</div>
|
|
|
+ </div>
|
|
|
+ <div class="label">报警次数</div>
|
|
|
+ </div>
|
|
|
+ <div class="test-item">
|
|
|
+ <div class="value">
|
|
|
+ <div class="number alibaba color-orange">3</div>
|
|
|
+ <div class="unit">次</div>
|
|
|
+ </div>
|
|
|
+ <div class="label">预警次数</div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="record-list">
|
|
|
+ <div class="record-item">
|
|
|
+ <div class="number">
|
|
|
+ 01
|
|
|
+ </div>
|
|
|
+ <div class="value">
|
|
|
+ <div class="hui-ellipsis">基坑DT3设备在2024-09-23 09:52:12时间发生报警,请尽快查看并处理。</div>
|
|
|
+ </div>
|
|
|
+ <div class="state color-blue">
|
|
|
+ 已处理
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="record-item">
|
|
|
+ <div class="number">
|
|
|
+ 02
|
|
|
+ </div>
|
|
|
+ <div class="value">
|
|
|
+ <div class="hui-ellipsis">基坑DT2设备在2024-09-13 09:21:43时间发生报警,请尽快查看并处理。</div>
|
|
|
+ </div>
|
|
|
+ <div class="state color-blue">
|
|
|
+ 已处理
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="record-item">
|
|
|
+ <div class="number">
|
|
|
+ 03
|
|
|
+ </div>
|
|
|
+ <div class="value">
|
|
|
+ <div class="hui-ellipsis">基坑DT1设备在2024-09-05 09:01:02时间发生报警,请尽快查看并处理。</div>
|
|
|
+ </div>
|
|
|
+ <div class="state color-blue">
|
|
|
+ 已处理
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="side-data" v-else-if="type === 'right'">
|
|
|
+ <div class="firefighting-equipment-data">
|
|
|
+ <div class="chart-title">
|
|
|
+ <span>塔吊安全</span>
|
|
|
+ <div class="title-option">
|
|
|
+ <div v-for="(item,index) in towerList"
|
|
|
+ :class="nowTowerId === item.id ?'option-item active':'option-item'"
|
|
|
+ @click="nowTowerId = item.id">
|
|
|
+ {{item.name}}
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="access-control">
|
|
|
+ <div class="access-control-item">
|
|
|
+ <div class="access-control-img"></div>
|
|
|
+ <div class="access-control-label">
|
|
|
+ <div class="name">碰撞状态</div>
|
|
|
+ <div class="test">
|
|
|
+ <span class="text color-green">正常</span>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="access-control-item">
|
|
|
+ <div class="access-control-img people-visitor"></div>
|
|
|
+ <div class="access-control-label">
|
|
|
+ <div class="name">可视化状态</div>
|
|
|
+ <div class="test">
|
|
|
+ <span class="text color-green">正常</span>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="access-control">
|
|
|
+ <div class="access-control-item">
|
|
|
+ <div class="access-control-img access-control-imgs"></div>
|
|
|
+ <div class="access-control-label">
|
|
|
+ <div class="name">今日违规次数</div>
|
|
|
+ <div class="test">
|
|
|
+ <span class="alibaba number color-red">0</span>
|
|
|
+ <span class="unit">次</span>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="access-control-item">
|
|
|
+ <div class="access-control-img people-visitors"></div>
|
|
|
+ <div class="access-control-label">
|
|
|
+ <div class="name">安全系数</div>
|
|
|
+ <div class="test color-green">
|
|
|
+ <span class="alibaba number">100</span>
|
|
|
+ <span class="unit">%</span>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="video-data">
|
|
|
+ <div class="chart-title">视讯中心</div>
|
|
|
+ <div class="video-box">
|
|
|
+ <div class="work-order-item">
|
|
|
+ <div class="work-order-title">
|
|
|
+ <span class="work-order-icon">
|
|
|
+ <i class="iconfont huifont-shipinyuan"></i>
|
|
|
+ </span>
|
|
|
+ <span class="work-order-label">项目视频</span>
|
|
|
+ </div>
|
|
|
+ <div class="work-order-box" @click="clickVideo(2)">
|
|
|
+ <img src="https://file-node.oss-cn-shanghai.aliyuncs.com/youji/97c91858f42f44ddad88c82bb438389d"
|
|
|
+ alt="aa.png" />
|
|
|
+ <div class="video-mask">
|
|
|
+ <i class="iconfont huifont-shuzhuangcaidanxiala"></i>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="work-order-item">
|
|
|
+ <div class="work-order-title">
|
|
|
+ <span class="work-order-icon">
|
|
|
+ <i class="iconfont huifont-shipinyuan"></i>
|
|
|
+ </span>
|
|
|
+ <span class="work-order-label">视频监控</span>
|
|
|
+ </div>
|
|
|
+ <div class="work-order-box">
|
|
|
+ <img src="https://file-node.oss-cn-shanghai.aliyuncs.com/youji/51b310933f554597889f2ad1a6cc7108"
|
|
|
+ alt="aa.png" />
|
|
|
+ <div class="video-mask" @click="clickVideo()">
|
|
|
+ <i class="iconfont huifont-shuzhuangcaidanxiala"></i>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="environment-data">
|
|
|
+ <div class="chart-title">环境监测</div>
|
|
|
+ <div class="environment-item environment-4">
|
|
|
+ <div class="environment-node">
|
|
|
+ <div class="name">温度(°C)</div>
|
|
|
+ <div class="number alibaba color-green">26</div>
|
|
|
+ </div>
|
|
|
+ <div class="environment-node environment-line">
|
|
|
+ <div class="name">湿度(%)</div>
|
|
|
+ <div class="number alibaba color-green">86</div>
|
|
|
+ </div>
|
|
|
+ <div class="environment-node environment-lines">
|
|
|
+ <div class="name">风级别</div>
|
|
|
+ <div class="number alibaba color-green">一级</div>
|
|
|
+ </div>
|
|
|
+ <div class="environment-node">
|
|
|
+ <div class="name">风向</div>
|
|
|
+ <div class="number alibaba color-green">西北风</div>
|
|
|
+ </div>
|
|
|
+ <div class="environment-node environment-lines">
|
|
|
+ <div class="name">风速(m/s)</div>
|
|
|
+ <div class="number alibaba color-green">0.4</div>
|
|
|
+ </div>
|
|
|
+ <div class="environment-node environment-line">
|
|
|
+ <div class="name">大气压力(KPa)</div>
|
|
|
+ <div class="number alibaba color-green">101.3</div>
|
|
|
+ </div>
|
|
|
+ <div class="environment-node environment-lines">
|
|
|
+ <div class="name">粉尘(mg/m³)</div>
|
|
|
+ <div class="number alibaba color-green">0.049</div>
|
|
|
+ </div>
|
|
|
+ <div class="environment-node">
|
|
|
+ <div class="name">噪声(dB)</div>
|
|
|
+ <div class="number alibaba color-green">61</div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="bottom-data-box">
|
|
|
+ <div class="chart-title">标养室</div>
|
|
|
+ <div class="legend" style="margin-top: 10px;">
|
|
|
+ <div class="legend-item" style="margin-right: 20px;">
|
|
|
+ <span class="legend-page bg-yellow"></span>
|
|
|
+ <span class="legend-name">温度</span>
|
|
|
+ </div>
|
|
|
+ <div class="legend-item">
|
|
|
+ <span class="legend-page bg-cyan"></span>
|
|
|
+ <span class="legend-name">湿度</span>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div id="chart3" class="chart-box" style="height: 188px;"></div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="top-bottom-data" v-if="type === 'bottom'">
|
|
|
+ <div class="bottom-data-box">
|
|
|
+ <div class="chart-title">监控列表</div>
|
|
|
+ <div class="monitor-box">
|
|
|
+ <div class="monitor-list">
|
|
|
+ <div class="monitor-item">
|
|
|
+ <img src="https://file-node.oss-cn-shanghai.aliyuncs.com/youji/854594e68cd64a41a296be319b295a04"
|
|
|
+ alt="" />
|
|
|
+ <div class="video-mask" @click="clickVideo()">
|
|
|
+ <i class="iconfont huifont-shuzhuangcaidanxiala"></i>
|
|
|
+ </div>
|
|
|
+ <div class="tip">
|
|
|
+ 围墙-南1
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="monitor-item">
|
|
|
+ <img src="https://file-node.oss-cn-shanghai.aliyuncs.com/youji/854594e68cd64a41a296be319b295a04"
|
|
|
+ alt="" />
|
|
|
+ <div class="video-mask" @click="clickVideo()">
|
|
|
+ <i class="iconfont huifont-shuzhuangcaidanxiala"></i>
|
|
|
+ </div>
|
|
|
+ <div class="tip">
|
|
|
+ 围墙-南2
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="monitor-item">
|
|
|
+ <img src="https://file-node.oss-cn-shanghai.aliyuncs.com/youji/854594e68cd64a41a296be319b295a04"
|
|
|
+ alt="" />
|
|
|
+ <div class="video-mask" @click="clickVideo()">
|
|
|
+ <i class="iconfont huifont-shuzhuangcaidanxiala"></i>
|
|
|
+ </div>
|
|
|
+ <div class="tip">
|
|
|
+ 围墙-西1
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="monitor-item">
|
|
|
+ <img src="https://file-node.oss-cn-shanghai.aliyuncs.com/youji/854594e68cd64a41a296be319b295a04"
|
|
|
+ alt="" />
|
|
|
+ <div class="video-mask" @click="clickVideo()">
|
|
|
+ <i class="iconfont huifont-shuzhuangcaidanxiala"></i>
|
|
|
+ </div>
|
|
|
+ <div class="tip">
|
|
|
+ 围墙-西2
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="video-toggle" v-if="isVideo">
|
|
|
+ <div class="chart-title">
|
|
|
+ <div>视讯中心</div>
|
|
|
+ <i class="el-icon-close" @click="isVideo = false"></i>
|
|
|
+ </div>
|
|
|
+ <div class="video-toggle-box">
|
|
|
+ <img src="https://file-node.oss-cn-shanghai.aliyuncs.com/youji/51b310933f554597889f2ad1a6cc7108"
|
|
|
+ alt="aa.png" width="100%" v-if="videoType === 1" />
|
|
|
+ <video src="https://file-node.oss-cn-shanghai.aliyuncs.com/youji/e136547df71e4c2893c424c60d652905"
|
|
|
+ width="100%" controls v-else>
|
|
|
+ </video>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+</template>
|
|
|
+
|
|
|
+<script>
|
|
|
+ export default {
|
|
|
+ props: ['type'],
|
|
|
+ data() {
|
|
|
+ return {
|
|
|
+ project: {
|
|
|
+ project_cities: []
|
|
|
+ },
|
|
|
+ isVideo: false,
|
|
|
+ videoType: 1,
|
|
|
+ towerList: [{
|
|
|
+ id: 1,
|
|
|
+ name: '1号塔吊'
|
|
|
+ }, {
|
|
|
+ id: 2,
|
|
|
+ name: '2号塔吊'
|
|
|
+ }],
|
|
|
+ nowTowerId: 1
|
|
|
+ }
|
|
|
+ },
|
|
|
+ mounted() {
|
|
|
+ this.$nextTick(() => {
|
|
|
+ this.chart(document.getElementById('chart1'), [110, 112, 102, 101, 106, 99, 116]);
|
|
|
+ this.charts(document.getElementById('chart3'), [
|
|
|
+ [21.3, 24.0, 24.1, 24.1, 24.4, 24.0, 23.4, 23.3],
|
|
|
+ [37, 38, 38.1, 38.1, 38.4, 38.0, 36.4, 29]
|
|
|
+ ], ['#D5AC6E', '#66E1DF'], [new echarts.graphic.LinearGradient(0,
|
|
|
+ 0, 0, 1, [{
|
|
|
+ offset: 0,
|
|
|
+ color: 'rgba(213, 172, 110, 0.35)'
|
|
|
+ }, {
|
|
|
+ offset: 1,
|
|
|
+ color: 'rgba(213, 172, 110, 0)'
|
|
|
+ }]), new echarts.graphic.LinearGradient(0,
|
|
|
+ 0, 0, 1, [{
|
|
|
+ offset: 0,
|
|
|
+ color: 'rgba(0,89,84, 0.35)'
|
|
|
+ }, {
|
|
|
+ offset: 1,
|
|
|
+ color: 'rgba(0,89,84, 0)'
|
|
|
+ }])])
|
|
|
+
|
|
|
+ })
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
+ init() {},
|
|
|
+ clickVideo(type) {
|
|
|
+ this.videoType = type || 1;
|
|
|
+ this.isVideo = true;
|
|
|
+ },
|
|
|
+ chart(elem, data) {
|
|
|
+ let chart = echarts.init(elem);
|
|
|
+ let option = {
|
|
|
+ tooltip: {
|
|
|
+ show: true,
|
|
|
+ trigger: 'axis',
|
|
|
+ formatter: function() {
|
|
|
+ return ''
|
|
|
+ },
|
|
|
+ backgroundColor: 'rgba(255,255,255,0)',
|
|
|
+ borderWidth: 0,
|
|
|
+ padding: 0,
|
|
|
+ axisPointer: {
|
|
|
+ lineStyle: {
|
|
|
+ type: 'solid',
|
|
|
+ color: '#4E5561',
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ grid: {
|
|
|
+ left: '15',
|
|
|
+ top: '30',
|
|
|
+ right: '15',
|
|
|
+ bottom: '0',
|
|
|
+ containLabel: true
|
|
|
+ },
|
|
|
+ color: ['#1978E5'],
|
|
|
+ xAxis: {
|
|
|
+ type: 'category',
|
|
|
+ data: ['09/21', '09/22', '09/23', '09/24', '09/25', '09/26', '09/27'],
|
|
|
+ axisLabel: {
|
|
|
+ margin: 10,
|
|
|
+ color: '#D0DEEE',
|
|
|
+ fontSize: 12
|
|
|
+ },
|
|
|
+ axisLine: {
|
|
|
+ lineStyle: {
|
|
|
+ color: '#6C8097'
|
|
|
+ }
|
|
|
+ },
|
|
|
+ axisTick: {
|
|
|
+ show: false
|
|
|
+ }
|
|
|
+ },
|
|
|
+ yAxis: {
|
|
|
+ name: '人数',
|
|
|
+ type: 'value',
|
|
|
+ minInterval: 1,
|
|
|
+ splitNumber: 3,
|
|
|
+ nameTextStyle: {
|
|
|
+ color: '#D0DEEE',
|
|
|
+ fontSize: 12,
|
|
|
+ align: 'right',
|
|
|
+ },
|
|
|
+ axisLabel: {
|
|
|
+ margin: 10,
|
|
|
+ color: '#D0DEEE',
|
|
|
+ fontSize: 12
|
|
|
+ },
|
|
|
+ splitLine: {
|
|
|
+ show: true,
|
|
|
+ lineStyle: {
|
|
|
+ color: 'rgba(108,128,151,0.3)',
|
|
|
+ type: 'dashed'
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ series: [{
|
|
|
+ data: data,
|
|
|
+ type: 'bar',
|
|
|
+ barWidth: 10,
|
|
|
+ color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
|
|
|
+ offset: 0,
|
|
|
+ color: '#159AFF'
|
|
|
+ }, {
|
|
|
+ offset: 1,
|
|
|
+ color: 'rgba(0, 58, 255, 0)'
|
|
|
+ }, ]),
|
|
|
+ }, {
|
|
|
+ data: data.map(node => node + 1),
|
|
|
+ type: 'line',
|
|
|
+ symbolSize: 6,
|
|
|
+ areaStyle: {
|
|
|
+ color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
|
|
|
+ offset: 0,
|
|
|
+ color: 'rgba(0,150,255,0.15)'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ offset: 1,
|
|
|
+ color: 'rgba(0,150,255,0)'
|
|
|
+ }
|
|
|
+ ])
|
|
|
+ },
|
|
|
+ z: 99
|
|
|
+ }, {
|
|
|
+ data: data.map(node => node + 1),
|
|
|
+ type: 'line',
|
|
|
+ showSymbol: false,
|
|
|
+ label: {
|
|
|
+ show: true,
|
|
|
+ color: '#D0DEEE'
|
|
|
+ },
|
|
|
+ areaStyle: {
|
|
|
+ color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
|
|
|
+ offset: 0,
|
|
|
+ color: 'rgba(0,150,255,0.15)'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ offset: 1,
|
|
|
+ color: 'rgba(0,150,255,0)'
|
|
|
+ }
|
|
|
+ ])
|
|
|
+ },
|
|
|
+ z: 99
|
|
|
+ }]
|
|
|
+ };
|
|
|
+ chart.setOption(option);
|
|
|
+ window.addEventListener('resize', () => {
|
|
|
+ chart.resize();
|
|
|
+ });
|
|
|
+ },
|
|
|
+ charts(elem, data, color, areaColor) {
|
|
|
+ let chart = echarts.init(elem);
|
|
|
+ let series = [];
|
|
|
+ for (var i = 0; i < data.length; i++) {
|
|
|
+ series.push({
|
|
|
+ data: data[i],
|
|
|
+ type: 'line',
|
|
|
+ showSymbol: false,
|
|
|
+ label: {
|
|
|
+ show: true,
|
|
|
+ color: '#D0DEEE'
|
|
|
+ },
|
|
|
+ smooth: true,
|
|
|
+ areaStyle: {
|
|
|
+ color: areaColor[i]
|
|
|
+ },
|
|
|
+ })
|
|
|
+
|
|
|
+ }
|
|
|
+ let option = {
|
|
|
+ tooltip: {
|
|
|
+ show: true,
|
|
|
+ trigger: 'axis',
|
|
|
+ formatter: function() {
|
|
|
+ return ''
|
|
|
+ },
|
|
|
+ backgroundColor: 'rgba(255,255,255,0)',
|
|
|
+ borderWidth: 0,
|
|
|
+ padding: 0,
|
|
|
+ axisPointer: {
|
|
|
+ lineStyle: {
|
|
|
+ type: 'solid',
|
|
|
+ color: '#4E5561',
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ color: color,
|
|
|
+ grid: {
|
|
|
+ left: '15',
|
|
|
+ top: '30',
|
|
|
+ right: '15',
|
|
|
+ bottom: '5',
|
|
|
+ containLabel: true
|
|
|
+ },
|
|
|
+ xAxis: {
|
|
|
+ type: 'category',
|
|
|
+ data: ['03:00', '06:00', '09:00', '12:00', '15:00', '18:00', '21:00', '24:00'],
|
|
|
+ axisLabel: {
|
|
|
+ margin: 10,
|
|
|
+ color: '#D0DEEE',
|
|
|
+ fontSize: 12
|
|
|
+ },
|
|
|
+ axisLine: {
|
|
|
+ lineStyle: {
|
|
|
+ color: '#6C8097'
|
|
|
+ }
|
|
|
+ },
|
|
|
+ axisTick: {
|
|
|
+ show: false
|
|
|
+ },
|
|
|
+ boundaryGap: false,
|
|
|
+ },
|
|
|
+ yAxis: {
|
|
|
+ name: '单位',
|
|
|
+ type: 'value',
|
|
|
+ minInterval: 1,
|
|
|
+ splitNumber: 3,
|
|
|
+ nameTextStyle: {
|
|
|
+ color: '#D0DEEE',
|
|
|
+ fontSize: 12,
|
|
|
+ align: 'right',
|
|
|
+ },
|
|
|
+ axisLabel: {
|
|
|
+ margin: 10,
|
|
|
+ color: '#D0DEEE',
|
|
|
+ fontSize: 12
|
|
|
+ },
|
|
|
+ splitLine: {
|
|
|
+ show: true,
|
|
|
+ lineStyle: {
|
|
|
+ color: 'rgba(108,128,151,0.3)',
|
|
|
+ type: 'dashed'
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ series: series
|
|
|
+ };
|
|
|
+ chart.setOption(option);
|
|
|
+ window.addEventListener('resize', () => {
|
|
|
+ chart.resize();
|
|
|
+ });
|
|
|
+ }
|
|
|
+ },
|
|
|
+ }
|
|
|
+</script>
|
|
|
+
|
|
|
+<style lang="scss">
|
|
|
+
|
|
|
+</style>
|