From 14101bd42ce17dfb9d951d0738abe9d303fb3fe5 Mon Sep 17 00:00:00 2001 From: yangfeng <wanwan926_4@163.com> Date: 星期一, 11 十二月 2023 10:41:39 +0800 Subject: [PATCH] 机器开机率、人员技能比饼图优化 --- src/views/cockpitPage/components/MachineStartupRate.vue | 89 +++++++++++++++++++++++++++++--------------- 1 files changed, 58 insertions(+), 31 deletions(-) diff --git a/src/views/cockpitPage/components/MachineStartupRate.vue b/src/views/cockpitPage/components/MachineStartupRate.vue index 5e66228..7da5477 100644 --- a/src/views/cockpitPage/components/MachineStartupRate.vue +++ b/src/views/cockpitPage/components/MachineStartupRate.vue @@ -5,10 +5,10 @@ <img src="/cockpitPage/machine-top.png" alt="" /> <div class="top-title"> <span>鏈哄櫒寮�鏈虹巼</span> - <span class="top-rate">{{ "60%" }}</span> + <span class="top-rate">{{ startupRate + "%" }}</span> </div> </div> - <div class="chart" ref="chart"></div> + <div id="main" class="chart" ref="chart"></div> </div> </div> </template> @@ -16,72 +16,94 @@ <script> //寮曞叆echart import * as echarts from "echarts"; +let myChart; export default { components: {}, - props: {}, + props: { + startupRate: { + type: String, + default: "", + }, + }, data() { return {}; }, - mounted() { - let chartData = [ - { value: 20, name: "闂茬疆" }, - { value: 20, name: "缁翠慨" }, - { value: 60, name: "宸ヤ綔" }, - ]; - this.pieChart("chart", chartData); - }, + mounted() {}, watch: {}, methods: { //鍦ㄨ亴 pieChart(chartName, data) { let chartDom = this.$refs[chartName]; - let myChart = echarts.init(chartDom); + + if (myChart != null && myChart != "" && myChart != undefined) { + myChart.dispose(); //閿�姣� + } + myChart = echarts.init(chartDom); let img = "/cockpitPage/machine-chart-bg.png"; + let height = myChart.getHeight() / 1; + let width = height + 5; let option; if (data) { option = { color: ["#065a6f", "#067687", "#00ffff"], tooltip: { trigger: "item", + textStyle: { + color: "#00FFFF", + }, + borderColor: "#00FFFF", + backgroundColor: "#238d8d6b", + valueFormatter: function (value) { + return value + "%"; + }, }, graphic: { elements: [ { type: "image", - z: 5, - right: 25, + // z: 5, style: { image: img, - width: 240, - height: 245, + width: width, + height: height, opacity: 0.55, }, left: "center", top: "center", - position: [5, 5], + position: [10, 10], }, ], }, series: [ { - name: "Access From", + name: "", type: "pie", radius: ["58%", "70%"], avoidLabelOverlap: false, label: { - color: "#01f7fd", - fontSize: 14, - formatter: function (params) { - return `{a|${params.name}} {b|${params.value + "%"}}`; - }, - rich: { - a: { - color: "#00ffff", - fontSize: 14, + normal: { + position: "outer", + padding: [0, -62], + color: "#01f7fd", + fontSize: 12, + borderWidth: 5, + borderRadius: 4, + formatter: function (params) { + let label = + params.name.length > 4 + ? `${params.name.slice(0, 3)}...` + : params.name; + return `{a|${label}} {b|${params.value + "%"}}`; }, - b: { - color: "#fccd1d", - fontSize: 14, + rich: { + a: { + color: "#00ffff", + fontSize: 14, + }, + b: { + color: "#fccd1d", + fontSize: 14, + }, }, }, }, @@ -94,8 +116,13 @@ }, labelLine: { show: true, - length: 50, + length: 15, color: "blue", + length2: 80, + }, + labelLayout: { + verticalAlign: "bottom", + dy: -5, }, data: data, }, -- Gitblit v1.8.0