Files
emsfront/src/views/ems/home/GjqsChart.vue

84 lines
1.8 KiB
Vue
Raw Normal View History

<template>
2025-06-17 00:46:20 +08:00
<el-card shadow="always" class="common-card-container common-card-container-body-no-padding">
<div slot="header">
2025-06-17 00:46:20 +08:00
<span class="card-title">告警趋势</span>
</div>
<div style="height: 360px" id="gjqsChart"/>
</el-card>
</template>
2025-06-17 00:46:20 +08:00
<style scoped lang="scss"></style>
<script>
import * as echarts from 'echarts'
import resize from '@/mixins/ems/resize'
export default {
mixins: [resize],
data() {
return {
chart: null
}
},
beforeDestroy() {
if (!this.chart) {
return
}
this.chart.dispose()
this.chart = null
},
methods: {
initChart(data) {
this.chart = echarts.init(document.querySelector('#gjqsChart'))
this.setOption(data)
},
setOption(data) {
const source=[['日期','告警趋势']]
data.forEach(item => {
source.push([item.dateMonth,item.alarmNum])
})
this.chart.setOption({
color:['#F86F70'],
legend: {
left: 'center',
bottom: '10',
},
tooltip: {
trigger: 'axis',
axisPointer: { // 坐标轴指示器,坐标轴触发有效
type: 'shadow' // 默认为直线,可选为:'line' | 'shadow'
}
},
textStyle:{
color:"#333333",
},
xAxis: {
type: 'category',
axisLine: {
lineStyle:{
color: '#333333',
}
}
},
yAxis: {
type: 'value',
axisLine: {
lineStyle:{
color: '#333333',
}
}
},
dataset:{source},
series: [
{
name:'告警趋势',
type: 'line',
areaStyle: {}
}]
})
}
}
}
</script>