<!--工业经济一张图--> <template> <div class="full-box jjyxyzt"> <div class="" style="width: 100%;height:100%;" > <div class="map-box"> <div class="top-tip-box t-title">当前位置:经济运行一张图 > 工业经济一张图</div> <div class="maps qu-map" v-show="!companyMap"> <div class="map-item" v-for="item in mapList" :class="[item.className]" @click="goCompanyMap(item)" @mouseenter="showQuTotal(item)" @mouseleave="showQuDeatil=false"> <div class="name-dot" v-if="false"></div><div class="name-text" v-if="false">{{item.name}}</div> </div> </div> <div class="map-detail-box qu-detail-box" style="background: rgba(4,30,90,0.5)" v-if="showQuDeatil"> <div class="map-border-top"> <div class="mb-left"></div> <div class="mb-right"></div> </div> <div class="map-border-left"> <div class="mb-top"></div> <div class="mb-center"></div> <div class="mb-bottom"></div> </div> <div class="map-info-box"> <div class="map-title-box"> <div class="map-title"><span class="dot"></span><div>{{quDetail.name}}</div></div> <div class="more-mapmb-right" style="position: absolute;top: -10px;right:10px;color: #fff;font-size: 20px;"></div> </div> <div class="" style="width: 100%;text-align: left;margin-top: -10px;margin-bottom: 5px;">(数据时间:{{filter.startDate}} 至 {{filter.endDate}})</div> <div class="map-detail-row"><div class="mdr-label">板块企业数:</div><div class="mdr-data">{{quDetail.qyNum}}</div></div> <div class="map-detail-row"><div class="mdr-label">板块工业总产值:</div><div class="mdr-data">{{quDetail.gyzcz}}</div></div> <div class="map-detail-row"><div class="mdr-label">板块规上企业数:</div><div class="mdr-data"> {{quDetail.gsqyNum}}</div></div> <div class="map-detail-row"><div class="mdr-label">板块规上企业总产值:</div><div class="mdr-data">{{quDetail.gsqycz}}</div></div> </div> </div> <div class="map-search-boxs" style="height: 34px;width: 100%;"> <div class="back-index" v-show="companyMap" @click="back" style="margin-top:3px;float: right" >返回</div> <div class="map-search-box" style="" v-show="companyMap" > <div class="sl-row-label" style="width: 100px;line-height:34px;">企业名称:</div> <el-input v-model="searchCommpanyName" placeholder="支持企业名称查询" style="width:200px;float: left;"></el-input> <el-button class="search-btn" type="primary" @click="searchresult">查询</el-button> </div> </div> <div class="all-maps aaa qyResultList" v-show="companyMap" style="position: relative"> <div class="map-box" id="mapDiv" style="width: 100%;height: 100%;position:relative"></div> <div class="search-by-company" v-if="companyListBox"> <div class="close-btn" @click="companyListBox=false"><i class="el-icon-close"></i></div> <div class="list-title" v-if="false">查询结果列表</div> <div class="list-body"> <div class="list-li" v-for="(item,index) in resultList" :key="index" @click="goMapAddress(item)">{{index+1}}. {{item.companyName}}-{{item.plat}}</div> <div class="list-title" v-if="$Util.isEmpty(resultList)">暂无企业数据!</div> </div> </div> </div> <div class="map-detail-box" style="" v-if="showMapBk"> <div class="map-border-top"> <div class="mb-left"></div> <div class="mb-right"></div> </div> <div class="map-border-left"> <div class="mb-top"></div> <div class="mb-center"></div> <div class="mb-bottom"></div> </div> <div class="map-info-box"> <div class="map-title-box"> <div class="map-title"><span class="dot"></span><div>{{companyDetail.companyName}}</div></div> <div class="map-qy" v-if="false">区域:{{companyDetail.companyName}}</div> <div class="more-mapdetail" style="position: absolute;top: -10px;right:10px;color: #fff;font-size: 20px;" @click="showMapBk=false" ><i class="el-icon-close"></i> </div> </div> <div class="map-detail-row"><div class="">地 址:</div><div class="">{{companyDetail.address}}</div></div> <div class="map-detail-row"><div class="">行 业:</div><div class="">{{companyDetail.industry}}</div></div> <div class="map-detail-row"><div class="">是否规上企业:</div><div class="">{{companyDetail.isGs}}</div></div> <div class="map-detail-row"><div class="">负责人(法人):</div><div class="">{{companyDetail.legalPerson}}</div></div> <div class="map-detail-row"><div class="">工业税收:</div><div class="">{{companyDetail.gyss}}</div></div> <div class="map-detail-row"><div class="">主营业务收入:</div><div class="">{{companyDetail.zyywsr}}</div></div> <!--<div class="more-mapdetail" @click="goCompantDetail(companyDetail.id)">更多>></div>--> </div> </div> </div> <div class="charts-box" style="position:relative"> <div class="top-tip-box" style="width: calc(100% - 10px);margin-left: 10px;"> <div class="time-boxs"> <div class="sl-row" style="width: calc(50% - 15px)"> <div class="sl-row-label" v-if="false">时间</div> <el-date-picker type="month" :picker-options="beginDate(filter.endDate)" v-model="filter.startDate" placeholder="开始日期" value-format="yyyy-MM" :clearable="false" :editable="false" style="width:calc(100% - 0px);float: left;"></el-date-picker> </div> <div class="sl-row" style="width: calc(50% + 15px)"> <div class="sl-row-label" style="text-align: center">至</div> <el-date-picker type="month" :picker-options="processDate(filter.startDate)" v-model="filter.endDate" placeholder="结束日期" value-format="yyyy-MM" :clearable="false" :editable="false" style="width:calc(100% - 40px);float: left;"> </el-date-picker> </div> </div> <div class="jjyxyzt-seach-btn" @click="searchResults">查询</div> </div> <div class="hasSearch-box charts-one-boxs"> <div class="chart-item-box charts-three-box"> <div class="charts-line-top"> <div class="line-left-icon" style="transform: rotate(180deg);top:-20px;"></div> <div class="line-left"></div> </div> <div class="chart-con-box"> <div class="jjyx-tab-box"> <div class="tab-item" :class="{active:filter.type == 'cz'}" @click="getDataByType('cz')">产值</div> <div class="tab-item" :class="{active:filter.type == 'sr'}" @click="getDataByType('sr')">收入</div> <div class="tab-item" :class="{active:filter.type == 'ls'}" @click="getDataByType('ls')">利税</div> <div class="tab-item" :class="{active:filter.type == 'lr'}" @click="getDataByType('lr')">利润</div> </div> <div class="jjyx-tab-info"> <div class="tab-info-item" style="position: relative"> <div class="select-types"> <div class="more-data more-detail" @click="forecastShow('hy')" v-if="false">预测</div> </div> <div class="charts-title"><span class="dot"></span>规上工业{{typeName}}行业分布</div> <div class="chart-li-box1"> <div id="chartsOne" style="width: 100%;height:100%;"></div> </div> </div> <div class="jt-line"></div> <div class="tab-info-item" style="position: relative"> <div class="select-types"> <div class="more-data more-detail" @click="forecastShow('gs')" v-if="false">预测</div> </div> <div class="charts-title"><span class="dot"></span>规上工业{{typeName}}时间趋势</div> <div class="chart-li-box1" id="chartsTwo"></div> </div> <div class="jt-line"></div> <div class="tab-info-item" style="position: relative"> <div class="select-types" v-if="false"> <el-tooltip effect="light" content="更多" placement="top"> <i class="el-icon-more more-data" @click="moreDataClick()"></i> </el-tooltip> </div> <div class="charts-title"><span class="dot"></span>规上{{typeName}}行业分布({{utit}}元)</div> <div class="chart-li-box1" id="chartsThree"></div> </div> </div> </div> </div> </div> </div> </div> <el-dialog :title="popTitle" :visible.sync="showForecast" width="600px" @opened="popChartsinit" :close-on-click-modal=false> <div class="pop-chart-box" id="popQyfzChart"></div> <div slot="footer" class="dialog-footer"> <el-button @click="showForecast = false">关闭</el-button> </div> </el-dialog> </div> </template> <script> const currentDate = new Date('2020/12/1') // 当前日期 const month = currentDate.getMonth()+1; // 月份 const currentYear = month<10?currentDate.getFullYear()+"-0"+month :currentDate.getFullYear()+"-"+month; const startDate = currentDate.format("yyyy-")+"01" const endDate = currentDate.format("yyyy-MM") export default { name: 'zhyx', data () { return { showCondition:false, timeFilter:[startDate,endDate], filter:{ type:"cz", startDate:startDate, endDate:endDate }, typeName:'产值', mapList:[ {name:'科技孵化园',className:'kjfhy',lat:'460129.790283203',lon:'3127423.86047363',companyName:'江西美尔丝瓜络有限公司',qyNum:0,gyzcz:0,gsqyNum:0,gsqycz:0}, {name:'大富工业园',className:'df',lat:'460129.790283203',lon:'3127423.86047363',companyName:'江西美尔丝瓜络有限公司',qyNum:0,gyzcz:0,gsqyNum:0,gsqycz:0}, {name:'浅水湾工业园',className:'qsw',lat:'460129.790283203',lon:'3127423.86047363',companyName:'江西美尔丝瓜络有限公司',qyNum:0,gyzcz:0,gsqyNum:0,gsqycz:0}, {name:'东山工业园',className:'ds',lat:'460129.790283203',lon:'3127423.86047363',companyName:'江西美尔丝瓜络有限公司',qyNum:0,gyzcz:0,gsqyNum:0,gsqycz:0}, {name:'渊山岗工业园',className:'ysg',lat:'460129.790283203',lon:'3127423.86047363',companyName:'江西美尔丝瓜络有限公司',qyNum:0,gyzcz:0,gsqyNum:0,gsqycz:0} ], /**/ defaultOp:{ title: { show: false }, legend:{show:false,height:"0"}, grid:{top:30,bottom:30}, tooltip: { trigger: 'axis', axisPointer: { type: 'cross', label: { backgroundColor: '#777' }, crossStyle: { color: 'rgba(255,255,255,.8)', } } }, xAxis: { axisLabel:{color:'rgba(255,255,255,.9)'/*,interval:0*/}, axisLine:{lineStyle:{color:'rgba(255,255,255,.3)'}}, splitLine:{lineStyle:{color:'rgba(255,255,255,.1)'}} } }, chartsTitle:{ left:'总产值(亿元)',right:'同比'}, popTitle:'规上工业产值行业分布预测', showForecast:false, titleType:'', /**/ title:'企业工业总产值排名', utit:'亿', /*map*/ showMapBk:false, map:null, companyMap:false,showQuDeatil:false, companyDetail:{companyName:'',street:'',industryName:'',socialCreditCode:'',qyzczb:'',qyclrq:''}, quDetail:{name:'',street:'',industryName:'',socialCreditCode:'',qyzczb:'',qyclrq:''}, searchCommpanyName:'',companyListBox:false,initCompanyData:null, zoomVal:9329.174820613116,maxZommVal:146.3339856490493, resultList:[{lat:'460129.790283203',lon:'3127423.86047363',companyName:'江西美尔丝瓜络有限公司'}] } }, mounted (){ this.searchResults(); /*this.$refs.dialog.popChartsinit();*/ }, methods:{ /*map start*/ getQuData(){ let vm = this; vm.$http.get('/dx-economy-api/map/plat',{params:vm.filter}).then(function (resp) { let _data = resp.data; if(_data.code === 200 && !vm.$Util.isEmpty(_data.data)) { vm.mapList = _data.data; } }).catch((err)=>{console.log(err)}); }, showQuTotal(item){ this.showQuDeatil = true; this.quDetail = item; }, goCompantDetail(id){ this.$router.push({name:"qyDataManage",params:{id:id}}) }, goCompanyMap(data){ this.companyMap = true; this.initCompanyData = data; this.createMap(); }, back(){ this.companyMap = false; this.showMapBk = false; this.companyListBox = false; this.searchCommpanyName='' }, searchresult(){ let vm = this; vm.$http.get('/dx-economy-api/company', {params: {companyName:vm.searchCommpanyName}}).then(function (resp) { let _data = resp.data; if(_data.code === 200){ let companyList = _data.data; if (companyList.length == 1){ vm.goMapAddress(companyList[0]); }else{ vm.resultList = companyList; vm.companyListBox = true; } } else { vm.$message.error(_data.message); } }).catch((err)=>{console.log(err)}); }, goMapAddress(item){ let vm = this; vm.showMapBk = true; vm.companyDetail = item; var pt = new esri.geometry.Point(item.lat,item.lon,vm.wgs); if (vm.zoomVal > vm.maxZommVal) { var zoomNum = vm.maxZommVal / vm.zoomVal; vm.map.centerAndZoom(pt, zoomNum); } else { vm.map.centerAt(pt); } }, createMap(){ let vm = this; var djConfig = { parseOnLoad: true }; dojo.require("esri.map"); dojo.require("esri.graphic"); dojo.require("esri.layers.ArcGISTiledMapServiceLayer"); dojo.require("esri.symbols.PictureMarkerSymbol"); dojo.require("esri.layers.GraphicsLayer"); dojo.require("esri.geometry.Point"); dojo.require("esri.geometry.Multipoint"); dojo.require("esri.SpatialReference"); vm.wgs = new esri.SpatialReference({"wkid": 2384}); if(vm.$Util.isEmpty(vm.map)) { var layer = new esri.layers.ArcGISDynamicMapServiceLayer("http://223.84.218.79:18093/arcgis/rest/services/dongxaingjkqmap0128/MapServer"); vm.map = new esri.Map("mapDiv", {logo: false}); vm.map.addLayer(layer); /*加载图层*/ vm.$http.get('/dx-economy-api/company', {}).then(function (resp) { let _data = resp.data; _data.data.forEach(function (item) { addPointSymbol(item, item) }); }).catch((err)=>{console.log(err)});; }else{ /*detail*/ var pt = new esri.geometry.Point(vm.initCompanyData.lat,vm.initCompanyData.lon,vm.wgs); if (vm.zoomVal > vm.maxZommVal) { var zoomNum = vm.maxZommVal / vm.zoomVal; vm.map.centerAndZoom(pt, zoomNum); } else { vm.map.centerAt(pt); } } function addPointSymbol(point, attributes) { point = new esri.geometry.Point(point.lat, point.lon); var symbol = new esri.symbols.PictureMarkerSymbol("./static/building.png", 30, 44).setOffset(0, 15); var graphicsLayer = new esri.layers.GraphicsLayer(); var graphic = new esri.Graphic(point, symbol, attributes); vm.map.graphics.add(graphic); vm.map.addLayer(graphicsLayer); }; vm.map.on('load',function () { $("#mapDiv").height("100%").width("100%"); vm.map.resize(); vm.map.on("extent-change", function (event) { var extentVal = event.extent; vm.zoomVal = extentVal.ymax - extentVal.ymin; }); /*click事件*/ vm.map.graphics.on('click',function (event) { vm.showMapBk = true; vm.companyDetail = event.graphic.attributes; var pt = new esri.geometry.Point(vm.companyDetail.lat,vm.companyDetail.lon,vm.wgs); if (vm.zoomVal > vm.maxZommVal) { var zoomNum = vm.maxZommVal/vm.zoomVal; vm.map.centerAndZoom(pt,zoomNum); }else{ vm.map.centerAt(pt); } }) /*初次 定位到detail*/ var pt = new esri.geometry.Point(vm.initCompanyData.lat, vm.initCompanyData.lon, vm.wgs); if (vm.zoomVal > vm.maxZommVal) { var zoomNum = vm.maxZommVal / vm.zoomVal; vm.map.centerAndZoom(pt,zoomNum); } else { vm.map.centerAt(pt); } }) var resizeTimer; dojo.connect(vm.map, 'onLoad', function(theMap) { dojo.connect(dijit.byId('mapDiv'), 'resize', function() { clearTimeout(resizeTimer); resizeTimer = setTimeout(function() { vm.map.resize(); vm.map.reposition(); }, 500); }); }); }, /*map end*/ getDataByType(type){ let vm = this vm.filter.type = type; vm.typeName = type=='cz' ? '总产值': type=='sr' ? '收入' :type=='ls' ? '利税' :type=='lr' ? '利润' :''; vm.chartsTitle.left = type=='cz' ? '总产值(亿元)': type=='sr' ? '总收入(亿元)' :type=='ls' ? '总利税(亿元)' :type=='lr' ? '总利润(亿元)' :''; vm.utit = type=='cz' ? '亿':'亿'; let timeStart = !vm.$Util.isEmpty(vm.filter.startDate) ? vm.filter.startDate.split("-")[0] : null, timeEnd = !vm.$Util.isEmpty(vm.filter.endDate) ? vm.filter.endDate.split("-")[0] : null; if(timeStart == null || timeEnd== null || timeStart > timeEnd || timeStart <timeEnd){ let dataText = timeStart == null ? '请选择开始时间':timeEnd ==null ? '请选择结算时间':'支持查询同一年数据,请选择起止时间为同一年后查询!'; vm.$message({ showClose: true, message:dataText, type: 'warning' }) return; } this.loadTabCharts(); }, searchResults(){ let vm = this; let timeStart = !vm.$Util.isEmpty(vm.filter.startDate) ? vm.filter.startDate.split("-")[0] : null, timeEnd = !vm.$Util.isEmpty(vm.filter.endDate) ? vm.filter.endDate.split("-")[0] : null; if(timeStart == null || timeEnd== null || timeStart > timeEnd || timeStart <timeEnd){ let dataText = timeStart == null ? '请选择开始时间':timeEnd ==null ? '请选择结算时间':'支持查询同一年数据,请选择起止时间为同一年后查询!'; vm.$message({ showClose: true, message:dataText, type: 'warning' }) return; } vm.loadTabCharts(); vm.getQuData(); }, loadTabCharts(){ this.getOneData(); this.getTwoData(); this.getThreeData(); }, getOneData(){ let vm = this; let _start = "",_end = ""; if(!vm.$Util.isEmpty(vm.timeFilter)){ if(vm.timeFilter.length === 1){ _start = vm.timeFilter[0]; }else if(vm.timeFilter.length === 2){ _start = vm.timeFilter[0]; _end = vm.timeFilter[1]; } } vm.$http.get('/dx-economy-api/gyjjCharts/industry',{params:vm.filter}).then(function (resp) { let t = resp.data.data if(vm.filter.type=='ls'){ t.value = t.value.map(item=>{return (item*10).toFixed(2)}) } vm.drawLine1('chartsOne',t.xAxis,t.value,t.value2); }).catch((err)=>{console.log(err)}); }, getTwoData(){ let vm = this; vm.$http.get('/dx-economy-api/gyjjCharts/times',{params:vm.filter}).then(function (resp) { let t = resp.data.data; if(vm.filter.type=='ls'){ t.value = t.value.map(item=>{return (item*10).toFixed(2)}) } t.xAxis = t.xAxis.map(item=>item.split('-')[1].replace(/\b(0+)/gi,"")+'月') vm.drawLine1('chartsTwo',t.xAxis,t.value,t.value2); }).catch((err)=>{console.log(err)}); }, getThreeData(){ let vm = this; vm.$http.get('/dx-economy-api/gyjjCharts/industrypie',{params:vm.filter}).then(function (resp) { let t = resp.data.data; let legend=[]; t.forEach(function (item) { legend.push(item.name); if(vm.filter.type=='ls'){ item.value = item.value == 0 ? null: (item.value*10).toFixed(2); }else{ item.value = item.value == 0 ? null: item.value; } }) vm.drawPie("chartsThree",t,legend) }).catch((err)=>{console.log(err)}); }, /*预测s*/ forecastShow(type){ let vm = this vm.showForecast = true vm.titleType = type; vm.popTitle = type == 'hy' ?'规上工业产值行业分布预测':'规上工业产值预测'; }, popChartsinit(type){ let vm = this vm.chartsTitle.left='工业总产值(万元)';vm.chartsTitle.right='同比'; vm.drawLine('popQyfzChart',['投产运营','工业企业','规上工业','上市公司','高新技术'],[12,334,344,333,787],[122,223,440,22,678],[2,22,34,45,88]); }, /*预测e*/ drawLine1(container,cate,d1,d2){ let vm = this let myChart = vm.$echarts.init(document.getElementById(container)) let op = { xAxis: { type:"category", data: cate, axisLine:{lineStyle:{color:'rgba(255,255,255,.3)'}}, axisLabel: { interval: 0, // 坐标轴刻度标签的显示间隔 rotate: cate.length>5?40:0 // 标签倾斜的角度 } }, yAxis:[ { type: 'value', name: vm.chartsTitle.left, minInterval: 10, nameTextStyle:{color:'rgba(255,255,255,.8)'}, axisLabel:{ color:'rgba(255,255,255,.8)', formatter: function (value) { let texts = []; if(value<1000){ texts.push(value) } return value }}, axisLine:{lineStyle:{color:'rgba(255,255,255,.3)'}}, splitLine:{lineStyle:{color:'rgba(255,255,255,.1)'}} }, { type: 'value', name: vm.chartsTitle.right, minInterval: 100, nameTextStyle:{color:'rgba(255,255,255,.8)'}, axisLabel:{color:'rgba(255,255,255,.8)'}, axisLine:{lineStyle:{color:'rgba(255,255,255,.3)'}}, splitLine:{show:false} } ], series: [ { name: vm.chartsTitle.left, type: 'bar', color:"#6ee988", barMaxWidth:20, data: d1,//[100,200,33,56,188,123,143,23,99],//res.zcz itemStyle: { color: { type: 'linear', x: 0, y: 0, x2: 0, y2: 1, colorStops: [{ offset: 0, color: '#6ee988' // 0% 处的颜色 }, { offset: 1, color: '#6ee988' // 100% 处的颜色 }] } } }, { name: vm.chartsTitle.right, type: 'line', yAxisIndex: 1, color:"#e0e63d", data: d2,//[10,20,30,44,77,55,66,22,100],//res.tb areaStyle: { color: { type: 'linear', x: 0, y: 0, x2: 0, y2: 1, colorStops: [{ offset: 0, color: '#e0e63d' // 0% 处的颜色 }, { offset: 1, color: 'rgba(255,255,255,0)' // 100% 处的颜色 }] } } }] } myChart.setOption($.extend(true,op,vm.defaultOp)); /*if(container == "gytz") { myChart.on('click', function (param) { let _start = "",_end = ""; if(!vm.$Util.isEmpty(vm.timeFilter)){ if(vm.timeFilter.length === 1){ _start = vm.timeFilter[0]; }else if(vm.timeFilter.length === 2){ _start = vm.timeFilter[0]; _end = vm.timeFilter[1]; } } vm.$router.push({name: "gytz", params: {sDate: _start, eDate: _end}}) }) }*/ }, drawLine(container,cate,d1,d2,d3){ let vm = this let myChart = vm.$echarts.init(document.getElementById(container)) let op = { xAxis: { type:"category", data: cate, axisLine:{lineStyle:{color:'rgba(255,255,255,.3)'}}, axisLabel: { interval: 0, // 坐标轴刻度标签的显示间隔 rotate: cate.length>5?40:0, // 标签倾斜的角度 formatter: function(value) { var res = value; if(cate.length>5 && res.length > 3) { res = res.substring(0, 2) + ".."; } return res; }, } }, yAxis:[ { type: 'value', name: vm.chartsTitle.left, /*minInterval: 10,*/ nameTextStyle:{color:'rgba(255,255,255,.8)'}, axisLabel:{ color:'rgba(255,255,255,.8)', formatter: function (value) { let texts = []; if(value<1000){ texts.push(value) } return value }}, axisLine:{lineStyle:{color:'rgba(255,255,255,.3)'}}, splitLine:{lineStyle:{color:'rgba(255,255,255,.1)'}} }, { type: 'value', name: vm.chartsTitle.right, /*minInterval: 100,*/ nameTextStyle:{color:'rgba(255,255,255,.8)'}, axisLabel:{color:'rgba(255,255,255,.8)'}, axisLine:{lineStyle:{color:'rgba(255,255,255,.3)'}}, splitLine:{show:false} } ], series: [ { name: vm.chartsTitle.left, type: 'bar', color:"#6ee988", data: d1,//[100,200,33,56,188,123,143,23,99],//res.zcz itemStyle: { color: { type: 'linear', x: 0, y: 0, x2: 0, y2: 1, colorStops: [{ offset: 0, color: '#6ee988' // 0% 处的颜色 }, { offset: 1, color: '#6ee988' // 100% 处的颜色 }] } } }, { name: vm.chartsTitle.left, type: 'bar', color:"#16e1ff", data: d2,//[100,200,33,56,188,123,143,23,99],//res.zcz itemStyle: { color: { type: 'linear', x: 0, y: 0, x2: 0, y2: 1, colorStops: [{ offset: 0, color: '#16e1ff' // 0% 处的颜色 }, { offset: 1, color: '#16e1ff' // 100% 处的颜色 }] } } }, { name: vm.chartsTitle.right, type: 'line', yAxisIndex: 1, color:"#e0e63d", data: d3,//[10,20,30,44,77,55,66,22,100],//res.tb areaStyle: { color: { type: 'linear', x: 0, y: 0, x2: 0, y2: 1, colorStops: [{ offset: 0, color: '#e0e63d' // 0% 处的颜色 }, { offset: 1, color: 'rgba(255,255,255,0)' // 100% 处的颜色 }] } } }] } myChart.setOption($.extend(true,op,vm.defaultOp)); /*if(container == "gytz") { myChart.on('click', function (param) { let _start = "",_end = ""; if(!vm.$Util.isEmpty(vm.timeFilter)){ if(vm.timeFilter.length === 1){ _start = vm.timeFilter[0]; }else if(vm.timeFilter.length === 2){ _start = vm.timeFilter[0]; _end = vm.timeFilter[1]; } } vm.$router.push({name: "gytz", params: {sDate: _start, eDate: _end}}) }) }*/ }, drawPie(container,data,legend){ let vm = this let myChart = vm.$echarts.init(document.getElementById(container)) let op = { tooltip: { trigger: 'item', formatter: "{a} <br/>{b}: {c} ({d}%)" }, color:['#efca5a','#7dbbea','#dd798f','#6e89ed','#a8de74','#f69914','#f61474'], legend: { type: 'scroll', orient: 'vertical', x:"left", data:legend, textStyle:{color:"rgba(255,255,255,.8)"} }, series: [ { name:'规上工业行业分布', type:'pie', radius:['50%', '90%'], // minAngle: 30, center:['60%', '50%'], avoidLabelOverlap: false, label: { normal: { show:false, formatter: '{b|{b}}{abg|}\n{hr|}\n {c} {per|{d}%} ', /*backgroundColor: '#eee', borderColor: '#aaa',*/ /*borderWidth: 1, borderRadius: 4,*/ rich: { hr: {borderColor: 'rgba(255,255,255,.3)',width: '100%',borderWidth: 0.5,height: 0}, b: {lineHeight: 22,align: 'center',fontSize:10}, per: {backgroundColor: '#334455',padding: [2, 4],borderRadius: 2} } }, }, data:data } ] } myChart.setOption(op) /*myChart.on('click', function (param) { let _start = "",_end = ""; if(!vm.$Util.isEmpty(vm.timeFilter)){ if(vm.timeFilter.length === 1){ _start = vm.timeFilter[0]; }else if(vm.timeFilter.length === 2){ _start = vm.timeFilter[0]; _end = vm.timeFilter[1]; } } vm.$router.push({name:"jjyx",params:{sDate:_start,eDate:_end,bk:'',industry:param.name}}) })*/ }, } } </script> <style> .search-row-condition .el-date-editor .el-range-input{width:35%!important;} .jjyxyzt .more-data.more-select{right:30px;width:100px;position:absolute;background:rgba(22,225,255,.25);font-size: 10px;} .jjyxyzt .more-data.more-select .el-input--suffix .el-input__inner{border: none;background: rgba(7,182,255,0);padding: 0 13px 0 0;height: 20px;line-height: 20px;} .jjyxyzt .more-data.more-select .el-input__suffix{right:0px} .jjyxyzt .more-data.more-select.el-select .el-input .el-select__caret{width:13px!important;} .jjyxyzt .yzt-table{width:100%;height:calc(100% - 10px);text-align: left;margin: 10px auto 0;color: rgba(255,255,255,.8);} .jjyxyzt .yzt-table thead {background:rgba(22,225,255,.25);} .jjyxyzt .yzt-table thead tr th{padding: 3px;} .jjyxyzt .yzt-table tr td{border-bottom: 1px dotted rgba(255,255,255,.9);padding:5px 0px;} </style> <style scoped> .select-types{position: absolute;right: 10px;top:10px;} </style>