import { Component, OnInit } from '@angular/core'; import { Router } from '@angular/router'; import {EchartsDataService,} from '../../echarts-data.service'; declare var echarts: any; @Component({ selector: 'app-add-unit-one', templateUrl: './add-unit-one.component.html', styleUrls: ['./add-unit-one.component.scss'] }) export class AddUnitOneComponent implements OnInit { constructor(private router: Router,public echartsData:EchartsDataService) { } setTimeoutObj//延时器需要清除 ngOnInit(): void { this.setTimeoutObj = window.setTimeout(()=>{ this.initCharts() },0) this.echartsData.eventEmit.subscribe((value: any) => { if (value == 'echarts') { setTimeout(() => { this.indexBzt.resize() }, 500); } }); } //更新echarts视图 updateEcharts(){ this.indexBzt.resize() } //组件销毁时 ngOnDestroy(){ window.clearTimeout(this.setTimeoutObj); this.indexBzt.clear() this.indexBzt.dispose() } indexBzt//首页饼状图实例 /* 首页饼状图 */ initCharts(){ this.indexBzt = echarts.init(document.getElementById('indexBzt'),'walden'); let options={ title: { text: '新增单位统计(8900家)', left: 'center', top: "7%", textStyle: { fontSize:31 } }, tooltip: { trigger: 'item', formatter: (params)=>{ return this.echartsData.biaogeTishiZhi(params.name) }, position:this.echartsData.tableTooltipNoShow2 }, legend: { orient: 'vertical', right: 150, top:80, textStyle:{ fontSize:18, color:"#000000" }, data: ['高层', '地下', '轨道交通', '化工生产', '储罐类' , '厂房','古建筑', '商市场', '医院', '学校', '宾馆' , '娱乐场所','餐饮业', '影剧院', '展览建筑' , '隧道'] }, series: [ { name: '访问来源', type: 'pie', radius: '60%', center: ['50%', '53%'], label:{ show:true, fontSize:18, formatter:'{b}{c}家\n{d|({d}%)}', rich: { d: { align: 'center', fontSize:18 } }, }, data: [ {value: 500, name: '高层'}, {value: 800, name: '地下'}, {value: 900, name: '轨道交通'}, {value: 800, name: '化工生产'}, {value: 1200, name: '储罐类'}, {value: 1500, name: '厂房'}, {value: 1400, name: '古建筑'}, {value: 600, name: '商市场'}, {value: 568, name: '医院'}, {value: 888, name: '学校'}, {value: 485, name: '宾馆'}, {value: 966, name: '娱乐场所'}, {value: 789, name: '餐饮业'}, {value: 500, name: '影剧院'}, {value: 1025, name: '展览建筑'}, {value: 600, name: '隧道'} ], emphasis: { itemStyle: { shadowBlur: 10, shadowOffsetX: 0, shadowColor: 'rgba(0, 0, 0, 0.5)' } } } ] }; this.indexBzt.on('click', (params) => { this.router.navigateByUrl('/statisticanalysis/addUnit_one/addUnit_two_type'); }); this.indexBzt.setOption(options); } biaogeTishi(biaotou:string){ var shuju='[{"name":"浦东支队","number":"156","zhanbi":"3%"},{"name":"黄埔支队","number":"144","zhanbi":"2.8%"},' shuju+='{"name":"徐汇支队","number":"133","zhanbi":"2.1%"},{"name":"长宁支队","number":"122","zhanbi":"1.6%"},' shuju+='{"name":"静安支队","number":"120","zhanbi":"1.3%"},{"name":"普陀支队","number":"100","zhanbi":"1.1%"},' shuju+='{"name":"虹口支队","number":"95","zhanbi":"1%"},{"name":"杨浦支队","number":"90","zhanbi":"0.9%"},' shuju+='{"name":"闵行支队","number":"88","zhanbi":"0.8%"},{"name":"宝山支队","number":"83","zhanbi":"0.7%"},' shuju+='{"name":"徐汇支队","number":"133","zhanbi":"2.1%"},{"name":"长宁支队","number":"122","zhanbi":"1.6%"},' shuju+='{"name":"嘉定支队","number":"78","zhanbi":"0.6%"},{"name":"松江支队","number":"75","zhanbi":"0.5%"},' shuju+='{"name":"金山支队","number":"65","zhanbi":"0.4%"},{"name":"崇明支队","number":"55","zhanbi":"0.3%"}]' var jsonObj = JSON.parse(shuju); var res = '
名称 | '; res+='数量 | ' res+='总占比 | ' res+=''+jsonObj[i].name+' | ' res+=''+jsonObj[i].number+' | ' res+=''+jsonObj[i].zhanbi+' | ' } res+='总计 | 1356 | 19% | ' res+='