|
@@ -1,233 +1,296 @@
|
|
<template>
|
|
<template>
|
|
- <!-- 实时数据曲线 最多叠加三条 -->
|
|
|
|
- <div>
|
|
|
|
- <div
|
|
|
|
- ref="testLine"
|
|
|
|
- style="width: 450px; height: 200px;margin:-5px 0px 0px -40px;"
|
|
|
|
- ></div>
|
|
|
|
- </div>
|
|
|
|
|
|
+ <!-- 实时数据曲线 最多叠加三条 -->
|
|
|
|
+ <div>
|
|
|
|
+ <div ref="testLine" style="width: 450px; height: 200px; margin:-5px 0px 0px -40px"></div>
|
|
|
|
+ </div>
|
|
</template>
|
|
</template>
|
|
|
|
|
|
<script>
|
|
<script>
|
|
-import { mapState } from "vuex";
|
|
|
|
-export default {
|
|
|
|
- props: {
|
|
|
|
- chartData: {
|
|
|
|
- type: Array,
|
|
|
|
- required: true,
|
|
|
|
- },
|
|
|
|
- },
|
|
|
|
- data() {
|
|
|
|
- return {
|
|
|
|
- dingbanData: [
|
|
|
|
- {
|
|
|
|
- name: "4#监测点150m",
|
|
|
|
- value: [
|
|
|
|
- 9,
|
|
|
|
- 7,
|
|
|
|
- 8,
|
|
|
|
- 7,
|
|
|
|
- 6,
|
|
|
|
- 8,
|
|
|
|
- 0,
|
|
|
|
- 2,
|
|
|
|
- 2,
|
|
|
|
- 4,
|
|
|
|
- 4,
|
|
|
|
- 6,
|
|
|
|
- 4,
|
|
|
|
- 0,
|
|
|
|
- 3,
|
|
|
|
- 0,
|
|
|
|
- 8,
|
|
|
|
- 8,
|
|
|
|
- 6,
|
|
|
|
- 2,
|
|
|
|
- 5,
|
|
|
|
- 4,
|
|
|
|
- 6,
|
|
|
|
- 4,
|
|
|
|
- 11,
|
|
|
|
- 1,
|
|
|
|
- 4,
|
|
|
|
- 0,
|
|
|
|
- 8,
|
|
|
|
- 8,
|
|
|
|
- ],
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- name: "2#监测点50m",
|
|
|
|
- value: [
|
|
|
|
- 0,
|
|
|
|
- 3,
|
|
|
|
- 0,
|
|
|
|
- 6,
|
|
|
|
- 4,
|
|
|
|
- 3,
|
|
|
|
- 9,
|
|
|
|
- 0,
|
|
|
|
- 4,
|
|
|
|
- 3,
|
|
|
|
- 11,
|
|
|
|
- 7,
|
|
|
|
- 1,
|
|
|
|
- 11,
|
|
|
|
- 11,
|
|
|
|
- 5,
|
|
|
|
- 7,
|
|
|
|
- 11,
|
|
|
|
- 10,
|
|
|
|
- 5,
|
|
|
|
- 7,
|
|
|
|
- 10,
|
|
|
|
- 6,
|
|
|
|
- 6,
|
|
|
|
- 7,
|
|
|
|
- 0,
|
|
|
|
- 0,
|
|
|
|
- 0,
|
|
|
|
- 6,
|
|
|
|
- 3,
|
|
|
|
- ],
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- name: "3#监测点100m",
|
|
|
|
- value: [
|
|
|
|
- 2,
|
|
|
|
- 2,
|
|
|
|
- 8,
|
|
|
|
- 5,
|
|
|
|
- 0,
|
|
|
|
- 5,
|
|
|
|
- 11,
|
|
|
|
- 11,
|
|
|
|
- 2,
|
|
|
|
- 8,
|
|
|
|
- 11,
|
|
|
|
- 11,
|
|
|
|
- 2,
|
|
|
|
- 8,
|
|
|
|
- 1,
|
|
|
|
- 3,
|
|
|
|
- 8,
|
|
|
|
- 2,
|
|
|
|
- 8,
|
|
|
|
- 6,
|
|
|
|
- 11,
|
|
|
|
- 8,
|
|
|
|
- 10,
|
|
|
|
- 9,
|
|
|
|
- 8,
|
|
|
|
- 0,
|
|
|
|
- 1,
|
|
|
|
- 11,
|
|
|
|
- 4,
|
|
|
|
- 6,
|
|
|
|
- ],
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- name: "4#监测点150m",
|
|
|
|
- value: [
|
|
|
|
- 2,
|
|
|
|
- 6,
|
|
|
|
- 1,
|
|
|
|
- 5,
|
|
|
|
- 0,
|
|
|
|
- 1,
|
|
|
|
- 1,
|
|
|
|
- 1,
|
|
|
|
- 9,
|
|
|
|
- 5,
|
|
|
|
- 11,
|
|
|
|
- 3,
|
|
|
|
- 6,
|
|
|
|
- 4,
|
|
|
|
- 6,
|
|
|
|
- 6,
|
|
|
|
- 4,
|
|
|
|
- 2,
|
|
|
|
- 8,
|
|
|
|
- 9,
|
|
|
|
- 5,
|
|
|
|
- 7,
|
|
|
|
- 1,
|
|
|
|
- 1,
|
|
|
|
- 2,
|
|
|
|
- 9,
|
|
|
|
- 5,
|
|
|
|
- 2,
|
|
|
|
- 5,
|
|
|
|
- 1,
|
|
|
|
- ],
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- name: "5#监测点200m",
|
|
|
|
- value: [
|
|
|
|
- 10,
|
|
|
|
- 4,
|
|
|
|
- 5,
|
|
|
|
- 10,
|
|
|
|
- 2,
|
|
|
|
- 8,
|
|
|
|
- 10,
|
|
|
|
- 4,
|
|
|
|
- 9,
|
|
|
|
- 1,
|
|
|
|
- 10,
|
|
|
|
- 9,
|
|
|
|
- 0,
|
|
|
|
- 6,
|
|
|
|
- 6,
|
|
|
|
- 6,
|
|
|
|
- 11,
|
|
|
|
- 4,
|
|
|
|
- 1,
|
|
|
|
- 3,
|
|
|
|
- 0,
|
|
|
|
- 7,
|
|
|
|
- 11,
|
|
|
|
- 11,
|
|
|
|
- 0,
|
|
|
|
- 4,
|
|
|
|
- 7,
|
|
|
|
- 3,
|
|
|
|
- 2,
|
|
|
|
- 8,
|
|
|
|
- ],
|
|
|
|
- },
|
|
|
|
- ],
|
|
|
|
- option: {
|
|
|
|
- tooltip: {
|
|
|
|
- trigger: "axis",
|
|
|
|
- backgroundColor: "transparent",
|
|
|
|
- axisPointer: {
|
|
|
|
- lineStyle: {
|
|
|
|
- color: {
|
|
|
|
- type: "linear",
|
|
|
|
- x: 0,
|
|
|
|
- y: 0,
|
|
|
|
- x2: 0,
|
|
|
|
- y2: 1,
|
|
|
|
- colorStops: [
|
|
|
|
- {
|
|
|
|
- offset: 0,
|
|
|
|
- color: "rgba(126,199,255,0)", // 0% 处的颜色
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- offset: 0.5,
|
|
|
|
- color: "rgba(126,199,255,1)", // 100% 处的颜色
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- offset: 1,
|
|
|
|
- color: "rgba(126,199,255,0)", // 100% 处的颜色
|
|
|
|
- },
|
|
|
|
- ],
|
|
|
|
- global: false, // 缺省为 false
|
|
|
|
- },
|
|
|
|
- },
|
|
|
|
- },
|
|
|
|
- formatter: (p) => {
|
|
|
|
- let dom = `<div style="width: 79px;
|
|
|
|
|
|
+ import {
|
|
|
|
+ mapState
|
|
|
|
+ } from "vuex";
|
|
|
|
+ export default {
|
|
|
|
+ props: {
|
|
|
|
+ chartData: {
|
|
|
|
+ type: Array,
|
|
|
|
+ required: true,
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
+ data() {
|
|
|
|
+ return {
|
|
|
|
+ myChart:null,
|
|
|
|
+ yData1: [],
|
|
|
|
+ clickname:'回风巷3#监测点100m',
|
|
|
|
+ dingbanData: [{
|
|
|
|
+ name: "1#监测点0m",
|
|
|
|
+ value: [
|
|
|
|
+ 9,
|
|
|
|
+ 7,
|
|
|
|
+ 8,
|
|
|
|
+ 7,
|
|
|
|
+ 6,
|
|
|
|
+ 8,
|
|
|
|
+ 0,
|
|
|
|
+ 2,
|
|
|
|
+ 2,
|
|
|
|
+ 4,
|
|
|
|
+ 4,
|
|
|
|
+ 6,
|
|
|
|
+ 4,
|
|
|
|
+ 0,
|
|
|
|
+ 3,
|
|
|
|
+ 0,
|
|
|
|
+ 8,
|
|
|
|
+ 8,
|
|
|
|
+ 6,
|
|
|
|
+ 2,
|
|
|
|
+ 5,
|
|
|
|
+ 4,
|
|
|
|
+ 6,
|
|
|
|
+ 4,
|
|
|
|
+ 11,
|
|
|
|
+ 1,
|
|
|
|
+ 4,
|
|
|
|
+ 0,
|
|
|
|
+ 8,
|
|
|
|
+ 8,
|
|
|
|
+ ],
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ name: "2#监测点50m",
|
|
|
|
+ value: [
|
|
|
|
+ 0,
|
|
|
|
+ 3,
|
|
|
|
+ 0,
|
|
|
|
+ 6,
|
|
|
|
+ 4,
|
|
|
|
+ 3,
|
|
|
|
+ 9,
|
|
|
|
+ 0,
|
|
|
|
+ 4,
|
|
|
|
+ 3,
|
|
|
|
+ 11,
|
|
|
|
+ 7,
|
|
|
|
+ 1,
|
|
|
|
+ 11,
|
|
|
|
+ 11,
|
|
|
|
+ 5,
|
|
|
|
+ 7,
|
|
|
|
+ 11,
|
|
|
|
+ 10,
|
|
|
|
+ 5,
|
|
|
|
+ 7,
|
|
|
|
+ 10,
|
|
|
|
+ 6,
|
|
|
|
+ 6,
|
|
|
|
+ 7,
|
|
|
|
+ 0,
|
|
|
|
+ 0,
|
|
|
|
+ 0,
|
|
|
|
+ 6,
|
|
|
|
+ 3,
|
|
|
|
+ ],
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ name: "3#监测点100m",
|
|
|
|
+ value: [
|
|
|
|
+ 2,
|
|
|
|
+ 2,
|
|
|
|
+ 8,
|
|
|
|
+ 5,
|
|
|
|
+ 0,
|
|
|
|
+ 5,
|
|
|
|
+ 11,
|
|
|
|
+ 11,
|
|
|
|
+ 2,
|
|
|
|
+ 8,
|
|
|
|
+ 11,
|
|
|
|
+ 11,
|
|
|
|
+ 2,
|
|
|
|
+ 8,
|
|
|
|
+ 1,
|
|
|
|
+ 3,
|
|
|
|
+ 8,
|
|
|
|
+ 2,
|
|
|
|
+ 8,
|
|
|
|
+ 6,
|
|
|
|
+ 11,
|
|
|
|
+ 8,
|
|
|
|
+ 10,
|
|
|
|
+ 9,
|
|
|
|
+ 8,
|
|
|
|
+ 0,
|
|
|
|
+ 1,
|
|
|
|
+ 11,
|
|
|
|
+ 4,
|
|
|
|
+ 6,
|
|
|
|
+ ],
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ name: "4#监测点150m",
|
|
|
|
+ value: [
|
|
|
|
+ 2,
|
|
|
|
+ 6,
|
|
|
|
+ 1,
|
|
|
|
+ 5,
|
|
|
|
+ 0,
|
|
|
|
+ 1,
|
|
|
|
+ 1,
|
|
|
|
+ 1,
|
|
|
|
+ 9,
|
|
|
|
+ 5,
|
|
|
|
+ 11,
|
|
|
|
+ 3,
|
|
|
|
+ 6,
|
|
|
|
+ 4,
|
|
|
|
+ 6,
|
|
|
|
+ 6,
|
|
|
|
+ 4,
|
|
|
|
+ 2,
|
|
|
|
+ 8,
|
|
|
|
+ 9,
|
|
|
|
+ 5,
|
|
|
|
+ 7,
|
|
|
|
+ 1,
|
|
|
|
+ 1,
|
|
|
|
+ 2,
|
|
|
|
+ 9,
|
|
|
|
+ 5,
|
|
|
|
+ 2,
|
|
|
|
+ 5,
|
|
|
|
+ 1,
|
|
|
|
+ ],
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ name: "5#监测点200m",
|
|
|
|
+ value: [
|
|
|
|
+ 10,
|
|
|
|
+ 4,
|
|
|
|
+ 5,
|
|
|
|
+ 10,
|
|
|
|
+ 2,
|
|
|
|
+ 8,
|
|
|
|
+ 10,
|
|
|
|
+ 4,
|
|
|
|
+ 9,
|
|
|
|
+ 1,
|
|
|
|
+ 10,
|
|
|
|
+ 9,
|
|
|
|
+ 0,
|
|
|
|
+ 6,
|
|
|
|
+ 6,
|
|
|
|
+ 6,
|
|
|
|
+ 11,
|
|
|
|
+ 4,
|
|
|
|
+ 1,
|
|
|
|
+ 3,
|
|
|
|
+ 0,
|
|
|
|
+ 7,
|
|
|
|
+ 11,
|
|
|
|
+ 11,
|
|
|
|
+ 0,
|
|
|
|
+ 4,
|
|
|
|
+ 7,
|
|
|
|
+ 3,
|
|
|
|
+ 2,
|
|
|
|
+ 8,
|
|
|
|
+ ],
|
|
|
|
+ },
|
|
|
|
+ ],
|
|
|
|
+
|
|
|
|
+ };
|
|
|
|
+ },
|
|
|
|
+ computed: {
|
|
|
|
+ ...mapState(["websocketIP"]),
|
|
|
|
+ },
|
|
|
|
+ created() {
|
|
|
|
+ // this.getData();
|
|
|
|
+ // var index = 190;
|
|
|
|
+ for (var i = 0; i < 30; i++) {
|
|
|
|
+ // this.zhijiaId.push(index--);
|
|
|
|
+ var data = parseInt(Math.random() * (40 - 25 + 1) + 25, 10);
|
|
|
|
+ this.yData1.push(data);
|
|
|
|
+ }
|
|
|
|
+ console.log(this.yData1);
|
|
|
|
+ },
|
|
|
|
+ mounted() {
|
|
|
|
+ // 先画图
|
|
|
|
+
|
|
|
|
+ console.log('this.dingbanData', this.chartData);
|
|
|
|
+ this.myChart = this.$echarts.init(this.$refs.testLine);
|
|
|
|
+ this.updateChart();
|
|
|
|
+
|
|
|
|
+ // this.websocket = new WebSocket(
|
|
|
|
+ // `ws://${this.websocketIP}/hbase/ws/belt/${this.id}`
|
|
|
|
+ // );
|
|
|
|
+ // this.initWebSocket();
|
|
|
|
+ this.timer1 = setInterval(() => {
|
|
|
|
+ this.yData1.shift(this.yData1[0]);
|
|
|
|
+ this.yData1.push(parseInt(Math.random() * (30 - 25 + 1) + 25, 25));
|
|
|
|
+ console.log(this.yData1);
|
|
|
|
+ this.myChart.setOption({
|
|
|
|
+ series: [{
|
|
|
|
+ name: this.clickname,
|
|
|
|
+ data: this.yData1,
|
|
|
|
+ }],
|
|
|
|
+ });
|
|
|
|
+ }, 3000);
|
|
|
|
+ var index = -1;
|
|
|
|
+ var threeValue = [];
|
|
|
|
+ this.$bus.$on("maosuoPoint", (data) => {
|
|
|
|
+ this.clickname=data;
|
|
|
|
+ console.log(this.clickname);
|
|
|
|
+ if(this.timer1){
|
|
|
|
+ clearInterval(this.timer1);
|
|
|
|
+ }
|
|
|
|
+ this.timer2 = setInterval(()=>{
|
|
|
|
+ this.yData1.shift(this.yData1[0]);
|
|
|
|
+ this.yData1.push(parseInt(Math.random() * (30 - 25 + 1) + 25, 25));
|
|
|
|
+ this.myChart.setOption({
|
|
|
|
+ series: [{
|
|
|
|
+ name: this.clickname,
|
|
|
|
+ data: this.yData1,
|
|
|
|
+ }],
|
|
|
|
+ });
|
|
|
|
+
|
|
|
|
+ },3000);
|
|
|
|
+
|
|
|
|
+ })
|
|
|
|
+
|
|
|
|
+ },
|
|
|
|
+ methods: {
|
|
|
|
+ updateChart() {
|
|
|
|
+ const option = {
|
|
|
|
+ tooltip: {
|
|
|
|
+ trigger: "axis",
|
|
|
|
+ backgroundColor: "transparent",
|
|
|
|
+ axisPointer: {
|
|
|
|
+ lineStyle: {
|
|
|
|
+ color: {
|
|
|
|
+ type: "linear",
|
|
|
|
+ x: 0,
|
|
|
|
+ y: 0,
|
|
|
|
+ x2: 0,
|
|
|
|
+ y2: 1,
|
|
|
|
+ colorStops: [{
|
|
|
|
+ offset: 0,
|
|
|
|
+ color: "rgba(126,199,255,0)", // 0% 处的颜色
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ offset: 0.5,
|
|
|
|
+ color: "rgba(126,199,255,1)", // 100% 处的颜色
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ offset: 1,
|
|
|
|
+ color: "rgba(126,199,255,0)", // 100% 处的颜色
|
|
|
|
+ },
|
|
|
|
+ ],
|
|
|
|
+ global: false, // 缺省为 false
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
+ formatter: (p) => {
|
|
|
|
+ let dom = `<div style="width: 79px;
|
|
height: 110px;;color:#fff;position: relative;">
|
|
height: 110px;;color:#fff;position: relative;">
|
|
<svg style="position: absolute;top: 50%;
|
|
<svg style="position: absolute;top: 50%;
|
|
left: 50%;
|
|
left: 50%;
|
|
@@ -262,425 +325,164 @@ export default {
|
|
}</span>
|
|
}</span>
|
|
<span style="font-size:11px;color:#fff;">${p[0] ? p[0].data : ""}</span>
|
|
<span style="font-size:11px;color:#fff;">${p[0] ? p[0].data : ""}</span>
|
|
</div>
|
|
</div>
|
|
- <div
|
|
|
|
- style="width:100%;height:100%;display:${
|
|
|
|
- p[1] ? "flex" : "none"
|
|
|
|
- };justify-content:space-between;align-items:center;">
|
|
|
|
- <span style="font-size:11px;color:#7ec7ff;">${
|
|
|
|
- p[1] ? p[1].seriesName : ""
|
|
|
|
- }</span>
|
|
|
|
- <span style="font-size:11px;color:#fff;">${p[1] ? p[1].data : ""}</span>
|
|
|
|
- </div>
|
|
|
|
- <div
|
|
|
|
- style="width:100%;height:100%;display:${
|
|
|
|
- p[1] ? "flex" : "none"
|
|
|
|
- };justify-content:space-between;align-items:center;">
|
|
|
|
- <span style="font-size:11px;color:#7ec7ff;">${
|
|
|
|
- p[2] ? p[2].seriesName : ""
|
|
|
|
- }</span>
|
|
|
|
- <span style="font-size:11px;color:#fff;">${p[2] ? p[2].data : ""}</span>
|
|
|
|
- </div>
|
|
|
|
|
|
+
|
|
</div>
|
|
</div>
|
|
</div>`;
|
|
</div>`;
|
|
- return dom;
|
|
|
|
- },
|
|
|
|
- },
|
|
|
|
- legend: {
|
|
|
|
- align: "left",
|
|
|
|
- right: "10%",
|
|
|
|
- top: "10%",
|
|
|
|
- type: "plain",
|
|
|
|
- textStyle: {
|
|
|
|
- color: "#7ec7ff",
|
|
|
|
- fontSize: 11,
|
|
|
|
- },
|
|
|
|
- // icon:'rect',
|
|
|
|
- itemGap: 25,
|
|
|
|
- itemWidth: 18,
|
|
|
|
- icon:
|
|
|
|
- "path://M0 2a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v0a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2z",
|
|
|
|
-
|
|
|
|
- data: this.legend,
|
|
|
|
- },
|
|
|
|
- grid: {
|
|
|
|
- top: "15%",
|
|
|
|
- left: "10%",
|
|
|
|
- right: "10%",
|
|
|
|
- bottom: "1%",
|
|
|
|
- containLabel: true,
|
|
|
|
- },
|
|
|
|
- yAxis: [
|
|
|
|
- {
|
|
|
|
- boundaryGap: [0, "100%"],
|
|
|
|
- name: "mm",
|
|
|
|
- splitLine: {
|
|
|
|
- show: true,
|
|
|
|
- lineStyle: {
|
|
|
|
- type: "dotted",
|
|
|
|
- color: "rgba(155, 155, 155, 0.5)",
|
|
|
|
- },
|
|
|
|
- },
|
|
|
|
- axisLine: {
|
|
|
|
- show: false,
|
|
|
|
- },
|
|
|
|
- axisLabel: {
|
|
|
|
- color: "#fff",
|
|
|
|
- fontSize: 11,
|
|
|
|
- },
|
|
|
|
- axisTick: {
|
|
|
|
- show: false,
|
|
|
|
- },
|
|
|
|
- type: "value",
|
|
|
|
- },
|
|
|
|
- ],
|
|
|
|
- xAxis: [
|
|
|
|
- {
|
|
|
|
- // type: "time", // x轴为 时间轴
|
|
|
|
- interval: 0,
|
|
|
|
- splitLine: {
|
|
|
|
- show: false,
|
|
|
|
- },
|
|
|
|
- axisLine: {
|
|
|
|
- lineStyle: {
|
|
|
|
- width: 0,
|
|
|
|
- },
|
|
|
|
- },
|
|
|
|
- axisLabel: {
|
|
|
|
- color: "#fff",
|
|
|
|
- fontSize: 11,
|
|
|
|
- rotate: 30,
|
|
|
|
- },
|
|
|
|
- axisTick: {
|
|
|
|
- show: false,
|
|
|
|
- },
|
|
|
|
- boundaryGap: false,
|
|
|
|
- data: [],
|
|
|
|
- },
|
|
|
|
- ],
|
|
|
|
- title: {
|
|
|
|
- text: '锚索应力曲线图',
|
|
|
|
- padding: [5, 170],
|
|
|
|
- textStyle: {
|
|
|
|
- fontWeight: "normal", //标题颜色
|
|
|
|
- color: "#4ADEFE",
|
|
|
|
- fontSize:15
|
|
|
|
- },
|
|
|
|
- },
|
|
|
|
|
|
+ return dom;
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
+ legend: {
|
|
|
|
+ align: "left",
|
|
|
|
+ right: "10%",
|
|
|
|
+ top: "10%",
|
|
|
|
+ type: "plain",
|
|
|
|
+ textStyle: {
|
|
|
|
+ color: "#7ec7ff",
|
|
|
|
+ fontSize: 11,
|
|
|
|
+ },
|
|
|
|
+ // icon:'rect',
|
|
|
|
+ itemGap: 25,
|
|
|
|
+ itemWidth: 18,
|
|
|
|
+ icon: "path://M0 2a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v0a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2z",
|
|
|
|
|
|
- series: [
|
|
|
|
- {
|
|
|
|
- name: "4#监测点150m",
|
|
|
|
- type: "line",
|
|
|
|
- symbol: "circle", // 默认是空心圆(中间是白色的),改成实心圆
|
|
|
|
- showAllSymbol: true,
|
|
|
|
- symbolSize: 0,
|
|
|
|
- smooth: true,
|
|
|
|
- lineStyle: {
|
|
|
|
- normal: {
|
|
|
|
- width: 2,
|
|
|
|
- color: "rgba(255, 102, 102,1)", // 线条颜色
|
|
|
|
- },
|
|
|
|
- borderColor: "rgba(0,0,0,.4)",
|
|
|
|
- },
|
|
|
|
- itemStyle: {
|
|
|
|
- color: "rgba(255, 102, 102,1)",
|
|
|
|
- borderColor: "#646ace",
|
|
|
|
- borderWidth: 2,
|
|
|
|
- },
|
|
|
|
- tooltip: {
|
|
|
|
- show: true,
|
|
|
|
- },
|
|
|
|
- areaStyle: {
|
|
|
|
- //区域填充样式
|
|
|
|
- normal: {
|
|
|
|
- //线性渐变,前4个参数分别是x0,y0,x2,y2(范围0~1);相当于图形包围盒中的百分比。如果最后一个参数是‘true’,则该四个值是绝对像素位置。
|
|
|
|
- color: new echarts.graphic.LinearGradient(
|
|
|
|
- 0,
|
|
|
|
- 0,
|
|
|
|
- 0,
|
|
|
|
- 1,
|
|
|
|
- [
|
|
|
|
- {
|
|
|
|
- offset: 0,
|
|
|
|
- color: "rgba(255, 102, 102,.3)",
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- offset: 1,
|
|
|
|
- color: "rgba(255, 102, 102, 0)",
|
|
|
|
- },
|
|
|
|
- ],
|
|
|
|
- false
|
|
|
|
- ),
|
|
|
|
- shadowColor: "rgba(255, 102, 102, 0.5)", //阴影颜色
|
|
|
|
- shadowBlur: 20, //shadowBlur设图形阴影的模糊大小。配合shadowColor,shadowOffsetX/Y, 设置图形的阴影效果。
|
|
|
|
- },
|
|
|
|
- },
|
|
|
|
- data: [
|
|
|
|
- 10,
|
|
|
|
- 4,
|
|
|
|
- 5,
|
|
|
|
- 10,
|
|
|
|
- 2,
|
|
|
|
- 8,
|
|
|
|
- 10,
|
|
|
|
- 4,
|
|
|
|
- 9,
|
|
|
|
- 1,
|
|
|
|
- 10,
|
|
|
|
- 9,
|
|
|
|
- 0,
|
|
|
|
- 6,
|
|
|
|
- 6,
|
|
|
|
- 6,
|
|
|
|
- 11,
|
|
|
|
- 4,
|
|
|
|
- 1,
|
|
|
|
- 3,
|
|
|
|
- 0,
|
|
|
|
- 7,
|
|
|
|
- 11,
|
|
|
|
- 11,
|
|
|
|
- 0,
|
|
|
|
- 4,
|
|
|
|
- 7,
|
|
|
|
- 3,
|
|
|
|
- 2,
|
|
|
|
- 8,
|
|
|
|
- ],
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- name: "2#监测点50m",
|
|
|
|
- type: "line",
|
|
|
|
- symbol: "circle", // 默认是空心圆(中间是白色的),改成实心圆
|
|
|
|
- showAllSymbol: true,
|
|
|
|
- symbolSize: 0,
|
|
|
|
- smooth: true,
|
|
|
|
- lineStyle: {
|
|
|
|
- normal: {
|
|
|
|
- width: 2,
|
|
|
|
- color: "rgba(255, 255, 0,1)", // 线条颜色
|
|
|
|
- },
|
|
|
|
- borderColor: "rgba(0,0,0,.4)",
|
|
|
|
- },
|
|
|
|
- itemStyle: {
|
|
|
|
- color: "rgba(255, 255, 0,1)",
|
|
|
|
- borderColor: "#646ace",
|
|
|
|
- borderWidth: 2,
|
|
|
|
- },
|
|
|
|
- tooltip: {
|
|
|
|
- show: true,
|
|
|
|
- },
|
|
|
|
- areaStyle: {
|
|
|
|
- //区域填充样式
|
|
|
|
- normal: {
|
|
|
|
- //线性渐变,前4个参数分别是x0,y0,x2,y2(范围0~1);相当于图形包围盒中的百分比。如果最后一个参数是‘true’,则该四个值是绝对像素位置。
|
|
|
|
- color: new echarts.graphic.LinearGradient(
|
|
|
|
- 0,
|
|
|
|
- 0,
|
|
|
|
- 0,
|
|
|
|
- 1,
|
|
|
|
- [
|
|
|
|
- {
|
|
|
|
- offset: 0,
|
|
|
|
- color: "rgba(255, 255, 0,.3)",
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- offset: 1,
|
|
|
|
- color: "rgba(255, 255, 0, 0)",
|
|
|
|
- },
|
|
|
|
- ],
|
|
|
|
- false
|
|
|
|
- ),
|
|
|
|
- shadowColor: "rgba(255, 255, 0, 0.5)", //阴影颜色
|
|
|
|
- shadowBlur: 20, //shadowBlur设图形阴影的模糊大小。配合shadowColor,shadowOffsetX/Y, 设置图形的阴影效果。
|
|
|
|
- },
|
|
|
|
- },
|
|
|
|
- data: [
|
|
|
|
- 2,
|
|
|
|
- 6,
|
|
|
|
- 1,
|
|
|
|
- 5,
|
|
|
|
- 0,
|
|
|
|
- 1,
|
|
|
|
- 1,
|
|
|
|
- 1,
|
|
|
|
- 9,
|
|
|
|
- 5,
|
|
|
|
- 11,
|
|
|
|
- 3,
|
|
|
|
- 6,
|
|
|
|
- 4,
|
|
|
|
- 6,
|
|
|
|
- 6,
|
|
|
|
- 4,
|
|
|
|
- 2,
|
|
|
|
- 8,
|
|
|
|
- 9,
|
|
|
|
- 5,
|
|
|
|
- 7,
|
|
|
|
- 1,
|
|
|
|
- 1,
|
|
|
|
- 2,
|
|
|
|
- 9,
|
|
|
|
- 5,
|
|
|
|
- 2,
|
|
|
|
- 5,
|
|
|
|
- 1,
|
|
|
|
- ],
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- name: "3#监测点100m",
|
|
|
|
- type: "line",
|
|
|
|
- symbol: "circle", // 默认是空心圆(中间是白色的),改成实心圆
|
|
|
|
- showAllSymbol: true,
|
|
|
|
- symbolSize: 0,
|
|
|
|
- smooth: true,
|
|
|
|
- lineStyle: {
|
|
|
|
- normal: {
|
|
|
|
- width: 2,
|
|
|
|
- color: "rgba(0, 102, 153,1)", // 线条颜色
|
|
|
|
- },
|
|
|
|
- borderColor: "rgba(0,0,0,.4)",
|
|
|
|
- },
|
|
|
|
- itemStyle: {
|
|
|
|
- color: "rgba(0, 102, 153,1)",
|
|
|
|
- borderColor: "#3578e5",
|
|
|
|
- borderWidth: 2,
|
|
|
|
- },
|
|
|
|
- tooltip: {
|
|
|
|
- show: true,
|
|
|
|
- },
|
|
|
|
- areaStyle: {
|
|
|
|
- //区域填充样式
|
|
|
|
- normal: {
|
|
|
|
- //线性渐变,前4个参数分别是x0,y0,x2,y2(范围0~1);相当于图形包围盒中的百分比。如果最后一个参数是‘true’,则该四个值是绝对像素位置。
|
|
|
|
- color: new echarts.graphic.LinearGradient(
|
|
|
|
- 0,
|
|
|
|
- 0,
|
|
|
|
- 0,
|
|
|
|
- 1,
|
|
|
|
- [
|
|
|
|
- {
|
|
|
|
- offset: 0,
|
|
|
|
- color: "rgba(0, 102, 153,.3)",
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- offset: 1,
|
|
|
|
- color: "rgba(0, 102, 153, 0)",
|
|
|
|
- },
|
|
|
|
- ],
|
|
|
|
- false
|
|
|
|
- ),
|
|
|
|
- shadowColor: "rgba(0, 102, 153, 0.5)", //阴影颜色
|
|
|
|
- shadowBlur: 20, //shadowBlur设图形阴影的模糊大小。配合shadowColor,shadowOffsetX/Y, 设置图形的阴影效果。
|
|
|
|
- },
|
|
|
|
- },
|
|
|
|
- data: [
|
|
|
|
- 2,
|
|
|
|
- 2,
|
|
|
|
- 8,
|
|
|
|
- 5,
|
|
|
|
- 0,
|
|
|
|
- 5,
|
|
|
|
- 11,
|
|
|
|
- 11,
|
|
|
|
- 2,
|
|
|
|
- 8,
|
|
|
|
- 11,
|
|
|
|
- 11,
|
|
|
|
- 2,
|
|
|
|
- 8,
|
|
|
|
- 1,
|
|
|
|
- 3,
|
|
|
|
- 8,
|
|
|
|
- 2,
|
|
|
|
- 8,
|
|
|
|
- 6,
|
|
|
|
- 11,
|
|
|
|
- 8,
|
|
|
|
- 10,
|
|
|
|
- 9,
|
|
|
|
- 8,
|
|
|
|
- 0,
|
|
|
|
- 1,
|
|
|
|
- 11,
|
|
|
|
- 4,
|
|
|
|
- 6,
|
|
|
|
- ],
|
|
|
|
- },
|
|
|
|
- ],
|
|
|
|
- },
|
|
|
|
- };
|
|
|
|
- },
|
|
|
|
- computed: {
|
|
|
|
- ...mapState(["websocketIP"]),
|
|
|
|
- },
|
|
|
|
|
|
+ data: this.legend,
|
|
|
|
+ },
|
|
|
|
+ grid: {
|
|
|
|
+ top: "15%",
|
|
|
|
+ left: "10%",
|
|
|
|
+ right: "10%",
|
|
|
|
+ bottom: "1%",
|
|
|
|
+ containLabel: true,
|
|
|
|
+ },
|
|
|
|
+ yAxis: [{
|
|
|
|
+ boundaryGap: [0, "100%"],
|
|
|
|
+ name: "mm",
|
|
|
|
+ splitLine: {
|
|
|
|
+ show: true,
|
|
|
|
+ lineStyle: {
|
|
|
|
+ type: "dotted",
|
|
|
|
+ color: "rgba(155, 155, 155, 0.5)",
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
+ axisLine: {
|
|
|
|
+ show: false,
|
|
|
|
+ },
|
|
|
|
+ axisLabel: {
|
|
|
|
+ color: "#fff",
|
|
|
|
+ fontSize: 11,
|
|
|
|
+ },
|
|
|
|
+ axisTick: {
|
|
|
|
+ show: false
|
|
|
|
+ },
|
|
|
|
+ type: "value",
|
|
|
|
+ }],
|
|
|
|
+ xAxis: [{
|
|
|
|
+ // type: "time", // x轴为 时间轴
|
|
|
|
+ interval: 0,
|
|
|
|
+ splitLine: {
|
|
|
|
+ show: false
|
|
|
|
+ },
|
|
|
|
+ axisLine: {
|
|
|
|
+ lineStyle: {
|
|
|
|
+ width: 0
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
+ axisLabel: {
|
|
|
|
+ color: "#fff",
|
|
|
|
+ fontSize: 11,
|
|
|
|
+ rotate: 30,
|
|
|
|
+ },
|
|
|
|
+ axisTick: {
|
|
|
|
+ show: false
|
|
|
|
+ },
|
|
|
|
+ boundaryGap: false,
|
|
|
|
+ data: [],
|
|
|
|
+ }],
|
|
|
|
+ title: {
|
|
|
|
+ text: '锚索应力曲线图',
|
|
|
|
+ padding: [5, 170],
|
|
|
|
+ textStyle: {
|
|
|
|
+ fontWeight: "normal", //标题颜色
|
|
|
|
+ color: "#4ADEFE",
|
|
|
|
+ fontSize: 15
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
|
|
- mounted() {
|
|
|
|
- // 先画图
|
|
|
|
- console.log("this.dingbanData", this.chartData);
|
|
|
|
- this.myChart = this.$echarts.init(this.$refs.testLine);
|
|
|
|
- this.myChart.setOption(this.option);
|
|
|
|
- // this.websocket = new WebSocket(
|
|
|
|
- // `ws://${this.websocketIP}/hbase/ws/belt/${this.id}`
|
|
|
|
- // );
|
|
|
|
- // this.initWebSocket();
|
|
|
|
- var index = -1;
|
|
|
|
- var threeValue = [];
|
|
|
|
- this.$bus.$on("maosuoPoint", (data) => {
|
|
|
|
- index++;
|
|
|
|
- index = index % 3;
|
|
|
|
- console.log(index);
|
|
|
|
- console.log("收到了数据", data);
|
|
|
|
- // 查询该测点对应的数据,并展示到图中
|
|
|
|
- var filterData = this.dingbanData.filter((item) => {
|
|
|
|
- return item.name == data;
|
|
|
|
- });
|
|
|
|
-
|
|
|
|
- threeValue[index] = filterData;
|
|
|
|
- console.log("threeValue", threeValue[0][0].name);
|
|
|
|
|
|
+ series: [
|
|
|
|
+ {
|
|
|
|
+ name: '主运巷4#监测点150m',
|
|
|
|
+ type: "line",
|
|
|
|
+ symbol: "circle", // 默认是空心圆(中间是白色的),改成实心圆
|
|
|
|
+ showAllSymbol: true,
|
|
|
|
+ symbolSize: 0,
|
|
|
|
+ smooth: true,
|
|
|
|
+ lineStyle: {
|
|
|
|
+ normal: {
|
|
|
|
+ width: 2,
|
|
|
|
+ color: "rgba(255, 102, 102,1)", // 线条颜色
|
|
|
|
+ },
|
|
|
|
+ borderColor: "rgba(0,0,0,.4)",
|
|
|
|
+ },
|
|
|
|
+ itemStyle: {
|
|
|
|
+ color: "rgba(255, 102, 102,1)",
|
|
|
|
+ borderColor: "#646ace",
|
|
|
|
+ borderWidth: 2,
|
|
|
|
+ },
|
|
|
|
+ tooltip: {
|
|
|
|
+ show: true,
|
|
|
|
+ },
|
|
|
|
+ areaStyle: {
|
|
|
|
+ //区域填充样式
|
|
|
|
+ normal: {
|
|
|
|
+ //线性渐变,前4个参数分别是x0,y0,x2,y2(范围0~1);相当于图形包围盒中的百分比。如果最后一个参数是‘true’,则该四个值是绝对像素位置。
|
|
|
|
+ color: new echarts.graphic.LinearGradient(
|
|
|
|
+ 0,
|
|
|
|
+ 0,
|
|
|
|
+ 0,
|
|
|
|
+ 1,
|
|
|
|
+ [{
|
|
|
|
+ offset: 0,
|
|
|
|
+ color: "rgba(255, 102, 102,.3)",
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ offset: 1,
|
|
|
|
+ color: "rgba(255, 102, 102, 0)",
|
|
|
|
+ },
|
|
|
|
+ ],
|
|
|
|
+ false
|
|
|
|
+ ),
|
|
|
|
+ shadowColor: "rgba(255, 102, 102, 0.5)", //阴影颜色
|
|
|
|
+ shadowBlur: 20, //shadowBlur设图形阴影的模糊大小。配合shadowColor,shadowOffsetX/Y, 设置图形的阴影效果。
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
+ data: this.yData1
|
|
|
|
+ }],
|
|
|
|
+ }
|
|
|
|
+ this.myChart.setOption(option);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ },
|
|
|
|
|
|
- this.myChart.setOption({
|
|
|
|
- xAxis: [
|
|
|
|
- {
|
|
|
|
- data: [],
|
|
|
|
- },
|
|
|
|
- ],
|
|
|
|
- series: [
|
|
|
|
- {
|
|
|
|
- name: threeValue[0][0].name,
|
|
|
|
- data: threeValue[0][0].value,
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- name: threeValue[1][0].name,
|
|
|
|
- data: threeValue[1][0].value,
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- name: threeValue[2][0].name,
|
|
|
|
- data: threeValue[2][0].value,
|
|
|
|
- },
|
|
|
|
- ],
|
|
|
|
- });
|
|
|
|
- });
|
|
|
|
- },
|
|
|
|
- beforeDestroy() {
|
|
|
|
- this.$bus.$off("maosuoPoint", (data) => {
|
|
|
|
- console.log(data);
|
|
|
|
- });
|
|
|
|
- },
|
|
|
|
-};
|
|
|
|
|
|
+ beforeDestroy() {
|
|
|
|
+ this.$bus.$off("maosuoPoint", (data) => {
|
|
|
|
+ console.log(data);
|
|
|
|
+ });
|
|
|
|
+ clearInterval(this.timer1);
|
|
|
|
+ clearInterval(this.timer2);
|
|
|
|
+ },
|
|
|
|
+ };
|
|
</script>
|
|
</script>
|
|
<style scoped>
|
|
<style scoped>
|
|
-.select-veido .el-select {
|
|
|
|
- width: 100px;
|
|
|
|
- margin-left: 10px;
|
|
|
|
-}
|
|
|
|
|
|
+ .select-veido .el-select {
|
|
|
|
+ width: 100px;
|
|
|
|
+ margin-left: 10px;
|
|
|
|
+ }
|
|
|
|
|
|
-.select-veido >>> .el-input--small .el-input__inner {
|
|
|
|
- background: none;
|
|
|
|
-}
|
|
|
|
|
|
+ .select-veido>>>.el-input--small .el-input__inner {
|
|
|
|
+ background: none;
|
|
|
|
+ }
|
|
|
|
|
|
-.select-veido >>> .el-input__inner {
|
|
|
|
- border: 0;
|
|
|
|
-}
|
|
|
|
|
|
+ .select-veido>>>.el-input__inner {
|
|
|
|
+ border: 0;
|
|
|
|
+ }
|
|
</style>
|
|
</style>
|