|
@@ -8,96 +8,70 @@
|
|
|
<script lang="ts" setup>
|
|
|
import ScreenComHeader from "@/views/screens/configs/screenComHeader.vue";
|
|
|
import * as echarts from "echarts";
|
|
|
+import { defectDistribution } from "@/api/screens";
|
|
|
+import { allChartColors } from "@/views/screens/configs/chartsConfig";
|
|
|
|
|
|
const chartRef = ref(null);
|
|
|
|
|
|
-const option = {
|
|
|
- backgroundColor: "transparent",
|
|
|
- tooltip: {
|
|
|
- trigger: "axis",
|
|
|
- axisPointer: {
|
|
|
- type: "cross",
|
|
|
- crossStyle: {
|
|
|
- color: "#999",
|
|
|
- },
|
|
|
- },
|
|
|
- },
|
|
|
+onMounted(async () => {
|
|
|
+ const chart = echarts.init(chartRef.value, "dark");
|
|
|
|
|
|
- legend: {
|
|
|
- data: ["Evaporation", "Temperature"],
|
|
|
- },
|
|
|
- xAxis: [
|
|
|
- {
|
|
|
- type: "category",
|
|
|
- data: ["Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"],
|
|
|
+ let res = await defectDistribution();
|
|
|
+
|
|
|
+ let seriesData = [];
|
|
|
+ for (let i = 0; i < res?.data?.bugDetailList.length; i++) {
|
|
|
+ let item = res.data.bugDetailList[i];
|
|
|
+ seriesData.push({
|
|
|
+ type: "bar",
|
|
|
+ name: item.bugName,
|
|
|
+ // tooltip: {
|
|
|
+ // valueFormatter: function (value) {
|
|
|
+ // return value + " ml";
|
|
|
+ // },
|
|
|
+ // },
|
|
|
+ data: item?.counts ?? [],
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ let option = {
|
|
|
+ color: allChartColors,
|
|
|
+ backgroundColor: "transparent",
|
|
|
+ tooltip: {
|
|
|
+ trigger: "axis",
|
|
|
axisPointer: {
|
|
|
- type: "shadow",
|
|
|
+ type: "cross",
|
|
|
+ // crossStyle: {
|
|
|
+ // color: "#999",
|
|
|
+ // },
|
|
|
},
|
|
|
},
|
|
|
- ],
|
|
|
- yAxis: [
|
|
|
- {
|
|
|
- type: "value",
|
|
|
- name: "Precipitation",
|
|
|
- min: 0,
|
|
|
- max: 250,
|
|
|
- interval: 50,
|
|
|
- axisLabel: {
|
|
|
- formatter: "{value} ml",
|
|
|
- },
|
|
|
- },
|
|
|
- {
|
|
|
- type: "value",
|
|
|
- name: "Temperature",
|
|
|
- min: 0,
|
|
|
- max: 25,
|
|
|
- interval: 5,
|
|
|
- axisLabel: {
|
|
|
- formatter: "{value} °C",
|
|
|
- },
|
|
|
+ legend: {
|
|
|
+ data: res?.data?.bugName ?? [],
|
|
|
},
|
|
|
- ],
|
|
|
- series: [
|
|
|
- {
|
|
|
- name: "Evaporation",
|
|
|
- type: "bar",
|
|
|
- tooltip: {
|
|
|
- valueFormatter: function (value) {
|
|
|
- return value + " ml";
|
|
|
+ xAxis: [
|
|
|
+ {
|
|
|
+ type: "category",
|
|
|
+ data: res?.data?.weeks ?? [],
|
|
|
+ axisPointer: {
|
|
|
+ type: "shadow",
|
|
|
},
|
|
|
},
|
|
|
- data: [
|
|
|
- 2.0, 4.9, 7.0, 23.2, 25.6, 76.7, 135.6, 162.2, 32.6, 20.0, 6.4, 3.3,
|
|
|
- ],
|
|
|
- },
|
|
|
- // {
|
|
|
- // name: "Precipitation",
|
|
|
- // type: "bar",
|
|
|
- // tooltip: {
|
|
|
- // valueFormatter: function (value) {
|
|
|
- // return value + " ml";
|
|
|
- // },
|
|
|
- // },
|
|
|
- // data: [
|
|
|
- // 2.6, 5.9, 9.0, 26.4, 28.7, 70.7, 175.6, 182.2, 48.7, 18.8, 6.0, 2.3,
|
|
|
- // ],
|
|
|
- // },
|
|
|
- {
|
|
|
- name: "Temperature",
|
|
|
- type: "line",
|
|
|
- yAxisIndex: 1,
|
|
|
- tooltip: {
|
|
|
- valueFormatter: function (value) {
|
|
|
- return value + " °C";
|
|
|
+ ],
|
|
|
+ yAxis: [
|
|
|
+ {
|
|
|
+ type: "value",
|
|
|
+ name: "数量",
|
|
|
+ // min: 0,
|
|
|
+ // max: 250,
|
|
|
+ // interval: 50,
|
|
|
+ axisLabel: {
|
|
|
+ formatter: "{value} ",
|
|
|
},
|
|
|
},
|
|
|
- data: [2.0, 2.2, 3.3, 4.5, 6.3, 10.2, 20.3, 23.4, 23.0, 16.5, 12.0, 6.2],
|
|
|
- },
|
|
|
- ],
|
|
|
-};
|
|
|
+ ],
|
|
|
+ series: seriesData,
|
|
|
+ };
|
|
|
|
|
|
-onMounted(() => {
|
|
|
- const chart = echarts.init(chartRef.value, "dark");
|
|
|
chart.setOption(option);
|
|
|
});
|
|
|
|