| | |
| | | <template> |
| | | <div class="chart-container"> |
| | | <div class="rank-chart" ref="rankChart"></div> |
| | | <div class="rank-chart"> |
| | | <div |
| | | class="hola-item" |
| | | v-for="item in dataType == 'car' ? dataListA : dataList" |
| | | :key="item.id" |
| | | > |
| | | <examine-hola |
| | | :startColor="'#124ae4'" |
| | | :endColor="'#99b3fd'" |
| | | :centerValue="item.value" |
| | | :bottomTitle="item.name" |
| | | :routerPath="item.routerUrl" |
| | | ></examine-hola> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import * as echarts from 'echarts'; |
| | | import ExamineHola from "./examine-hola.vue"; |
| | | let barChart = null; |
| | | export default { |
| | | name: 'ExamineChart', |
| | | name: "ExamineChart", |
| | | components: { |
| | | ExamineHola, |
| | | }, |
| | | props: { |
| | | dataType: { |
| | | type: String, |
| | | default: "", |
| | | }, |
| | | }, |
| | | data() { |
| | | return { |
| | | |
| | | } |
| | | }, |
| | | |
| | | methods: { |
| | | initChart() { |
| | | const options = { |
| | | xAxis: { |
| | | type: 'category', |
| | | data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'] |
| | | dataList: [ |
| | | { |
| | | id: 1, |
| | | name: "平台在线率", |
| | | value: 60, |
| | | routerUrl: "/car/vehicle-data-monitor/index", |
| | | }, |
| | | yAxis: { |
| | | type: 'value' |
| | | { |
| | | id: 2, |
| | | name: "一机一档合格率", |
| | | value: 20, |
| | | routerUrl: "/car/vehicle-data-monitor/index", |
| | | }, |
| | | series: [ |
| | | { |
| | | data: [120, 200, 150, 80, 70, 110, 130], |
| | | type: 'bar' |
| | | } |
| | | ] |
| | | } |
| | | barChart.setOption(options,true); |
| | | } |
| | | }, |
| | | mounted() { |
| | | barChart = echarts.init(this.$refs.rankChart); |
| | | |
| | | this.initChart(); |
| | | }, |
| | | beforeDestroy() { |
| | | if (lineChart) { |
| | | barChart.dispose(); |
| | | } |
| | | { |
| | | id: 3, |
| | | name: "档案考核比", |
| | | value: 60, |
| | | routerUrl: "/car/vehicle-data-monitor/index", |
| | | }, |
| | | { |
| | | id: 4, |
| | | name: "点位在线率", |
| | | value: 40, |
| | | routerUrl: "/car/vehicle-data-monitor/index", |
| | | }, |
| | | { |
| | | id: 5, |
| | | name: "录像可用率", |
| | | value: 80, |
| | | routerUrl: "/car/vehicle-data-monitor/index", |
| | | }, |
| | | { |
| | | id: 6, |
| | | name: "重点点位录像可用率", |
| | | value: 20, |
| | | routerUrl: "/car/vehicle-data-monitor/index", |
| | | }, |
| | | { |
| | | id: 7, |
| | | name: "重点点位录像可用率", |
| | | value: 20, |
| | | routerUrl: "/car/vehicle-data-monitor/index", |
| | | }, |
| | | { |
| | | id: 8, |
| | | name: "重点点位录像可用率", |
| | | value: 20, |
| | | routerUrl: "/car/vehicle-data-monitor/index", |
| | | }, |
| | | ], |
| | | dataListA: [ |
| | | { |
| | | id: 1, |
| | | name: "平台在线率", |
| | | value: 60, |
| | | routerUrl: "/car/vehicle-data-monitor/index", |
| | | }, |
| | | { |
| | | id: 2, |
| | | name: "一机一档合格率", |
| | | value: 20, |
| | | routerUrl: "/car/vehicle-data-monitor/index", |
| | | }, |
| | | { |
| | | id: 3, |
| | | name: "档案考核比", |
| | | value: 60, |
| | | routerUrl: "/car/vehicle-data-monitor/index", |
| | | }, |
| | | { |
| | | id: 4, |
| | | name: "点位在线率", |
| | | value: 40, |
| | | routerUrl: "/car/vehicle-data-monitor/index", |
| | | }, |
| | | { |
| | | id: 5, |
| | | name: "录像可用率", |
| | | value: 80, |
| | | routerUrl: "/car/vehicle-data-monitor/index", |
| | | }, |
| | | { |
| | | id: 6, |
| | | name: "重点点位录像可用率", |
| | | value: 20, |
| | | routerUrl: "/car/vehicle-data-monitor/index", |
| | | }, |
| | | { |
| | | id: 7, |
| | | name: "重点点位录像可用率", |
| | | value: 20, |
| | | routerUrl: "/car/vehicle-data-monitor/index", |
| | | }, |
| | | { |
| | | id: 8, |
| | | name: "重点点位录像可用率", |
| | | value: 20, |
| | | routerUrl: "/car/vehicle-data-monitor/index", |
| | | }, |
| | | { |
| | | id: 9, |
| | | name: "重点点位录像可用率", |
| | | value: 20, |
| | | routerUrl: "/car/vehicle-data-monitor/index", |
| | | }, |
| | | { |
| | | id: 10, |
| | | name: "重点点位录像可用率", |
| | | value: 20, |
| | | routerUrl: "/car/vehicle-data-monitor/index", |
| | | }, |
| | | ], |
| | | }; |
| | | }, |
| | | |
| | | } |
| | | methods: {}, |
| | | mounted() {}, |
| | | }; |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | .chart-container { |
| | | width: 100%; |
| | | height: 400px; |
| | | height: 100%; |
| | | |
| | | .rank-chart { |
| | | width: 100%; |
| | | height: 100%; |
| | | display: flex; |
| | | justify-content: space-between; |
| | | flex-wrap: wrap; |
| | | align-content: space-between; |
| | | padding: 20px 0; |
| | | box-sizing: border-box; |
| | | |
| | | .hola-item { |
| | | flex-shrink: 0; |
| | | width: 150px; |
| | | height: 120px; |
| | | } |
| | | } |
| | | } |
| | | </style> |
| | | </style> |