<template> <div class="jktjDetail form-clues"> <el-form ref="form" :model="form" :inline="true" class="from-clues-header" label-width="100px"> <el-row> <el-col :span="6"> <el-form-item label="开始时间"> <el-date-picker type="date" :picker-options="pickerOptionsStart" clearable v-model="form.startTime" value-format="yyyy-MM-dd"></el-date-picker> </el-form-item> </el-col> <el-col :span="6"> <el-form-item label="结束时间"> <el-date-picker clearable :picker-options="pickerOptionsEnd" v-model="form.endTime" value-format="yyyy-MM-dd"> </el-date-picker> </el-form-item> </el-col> <el-col :span="12" class="btnColRight"> <el-button type="default" @click="resetForm"> 重置 </el-button> <el-button type="primary"> 查询 </el-button> </el-col> </el-row> </el-form> <div class="form-clues-content"> <div class="echarts-box"> <div id="myChart" class="chart"></div> </div> </div> </div> </template> <script> export default { name: "jktjDetail", data () { return { // 开始结束日期限制 pickerOptionsStart: { disabledDate: (time) => { if (this.form.endTime) { return ( time.getTime() >= new Date(this.form.endTime).getTime() ); } } }, // 结束日期限制 pickerOptionsEnd: { disabledDate: (time) => { if (this.form.startTime) { return ( time.getTime() <= new Date(this.form.startTime).getTime() ); } } }, form: { startTime: "", endTime: "" } } }, mounted () { this.echartInit(); }, methods: { resetForm () { this.form = { startTime: "", endTime: "" } }, echartInit () { // 基于准备好的dom,初始化echarts实例 let myChart = this.$echarts.init( document.getElementById("myChart") ); // 绘制图表 myChart.setOption({ color: ["#00bdb1", "#ff6e6e", "#3f99ff", "#ffaf48"], title: { show: true, text: "汉中市接入数量与上报数量统计(单位:个)\n(2022年02月05日~2022年03月07日)", left: "center", textStyle: { fontSize: 18, lineHeight: 30, height: 60, color: "#777", }, }, legend: { data: [ "接入成功数量", "接入失败数量", "上报成功数量", "上报失败数量", ], top: 80, }, tooltip: { show: true, trigger: "axis", }, grid: { top: 120, }, xAxis: [ { type: "category", data: ["汉台区", "南郑区", "城固县", "洋县", "西乡县"], }, ], yAxis: [ { type: "value", }, ], series: [ { name: "接入成功数量", type: "bar", data: [1000, 1500, 2000, 500, 4000], }, { name: "接入失败数量", type: "bar", data: [900, 500, 3200, 800, 4500], }, { name: "上报成功数量", type: "bar", data: [1000, 1500, 2000, 500, 4000], }, { name: "上报失败数量", type: "bar", data: [900, 500, 3200, 800, 4500], }, ], }); }, }, }; </script> <style scoped lang="scss"> .jktjDetail { background-color: #fff; height: 100%; display: flex; flex-direction: column; .echarts-box { display: flex; justify-content: center; height: 100%; .chart { width: 100%; height: 100%; } } .form-clues-content { flex: 1; height: 100%; } } </style> <style scoped lang="scss"> @import "~@/styles/public.scss"; </style>