123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249 |
- //经济指标命名映射
- var eNameMap = {
- 'GDP' : 'GDP',
- 'Financial' : '金融',
- 'Estate' : '房地产',
- 'PI' : '第一产业',
- 'SI' : '第二产业',
- 'TI' : '第三产业'
- };
- //颜色映射
- var eColorMap = {
- 'GDP' : '#1e90ff',
- 'Financial' : '#ff7f50',
- 'Estate' : '#da70d6',
- 'PI' : '#32cd32',
- 'SI' : '#6495ed',
- 'TI' : '#ff69b4'
- };
- //---------
- var developMode = false;
- if (developMode) {
- window.esl = null;
- window.define = null;
- window.require = null;
- (function () {
- var script = document.createElement('script');
- script.async = true;
- var pathname = location.pathname;
- var pathSegs = pathname.slice(pathname.indexOf('doc')).split('/');
- var pathLevelArr = new Array(pathSegs.length - 1);
- script.src = pathLevelArr.join('../') + 'asset/js/esl/esl.js';
- if (script.readyState) {
- script.onreadystatechange = fireLoad;
- }
- else {
- script.onload = fireLoad;
- }
- (document.getElementsByTagName('head')[0] || document.body).appendChild(script);
-
- function fireLoad() {
- script.onload = script.onreadystatechange = null;
- setTimeout(loadedListener,100);
- }
- function loadedListener() {
- // for develop
- require.config({
- packages: [
- {
- name: 'echarts',
- location: '../../../../src',
- main: 'echarts'
- },
- {
- name: 'zrender',
- //location: 'http://ecomfe.github.io/zrender/src',
- location: '../../../../../zrender/src',
- main: 'zrender'
- }
- ]
- });
- launchExample();
- }
- })();
- }
- else {
- require.config({
- paths: {
- echarts: '../../www/js'
- }
- });
- launchExample();
- }
- var EC_READY = false;
- var myChart0;
- var isExampleLaunched;
- function launchExample() {
- if (isExampleLaunched) {
- return;
- }
- // 按需加载
- isExampleLaunched = 1;
- require(
- [
- 'echarts',
- 'echarts/chart/line',
- 'echarts/chart/bar',
- 'echarts/chart/scatter',
- //'echarts/chart/k',
- 'echarts/chart/pie',
- 'echarts/chart/radar',
- //'echarts/chart/force',
- //'echarts/chart/chord',
- 'echarts/chart/map'
- ],
- function (ec) {
- EC_READY = true;
- myChart0 = ec.init(document.getElementById('g0')).setOption(option0());
- showTabContent(1);
- }
- );
- }
- var curTabIdx = 1;
- $('a[data-toggle="tab"]').on('shown.bs.tab', function (e) {
- // e.target // activated tab
- // e.relatedTarget // previous tab
- if (!EC_READY) {
- return;
- }
- hideTabContent(curTabIdx);
- curTabIdx = e.target.id.replace('tab','');
- showTabContent(curTabIdx);
- });
- var curYear = '2002';
- $('button').on('click', function (e) {
- $('#' + curYear)[0].className = 'btn btn-info';
- curYear = e.target.id;
- $('#' + curYear)[0].className = 'btn btn-success';
- showTabContent(curTabIdx);
- });
- var curEIndex = 'GDP';
- $('input:radio[name="optionsRadios"]').on('change', function (e) {
- curRange = false;
- curEIndex = e.target.value;
- showTabContent(curTabIdx);
- });
- var functionMap = {};
- function showTabContent(idx) {
- functionMap['chart' + idx](idx);
- }
- function hideTabContent(idx) {
- functionMap['chart' + idx + 'dispose'](idx);
- }
- // last chart
- var myChart3;
- var curSelected = {
- 'GDP' : true,
- '金融' : false,
- '房地产' : true,
- '第一产业' : false,
- '第二产业' : false,
- '第三产业' : false
- };
- functionMap.chart3 = function (idx) {
- functionMap.chart3dispose(idx);
- myChart3 = require('echarts').init(document.getElementById('g' + idx));
- myChart3.setOption(option1(curSelected));
- // 图例状态保持
- myChart3.on(require('echarts/config').EVENT.LEGEND_SELECTED, function (param){
- curSelected = param.selected;
- });
- }
- functionMap.chart3dispose = function () {
- if (myChart3) {
- myChart3.dispose();
- myChart3 = false;
- }
- }
- // second chart
- var myChart20;
- var myChart21;
- var myChart22;
- var myChart23;
- var myChart24;
- var myChart25;
- functionMap.chart2 = function (idx) {
- functionMap.chart2dispose(idx);
- var ec = require('echarts');
- myChart20 = ec.init(document.getElementById('g20'));
- myChart21 = ec.init(document.getElementById('g21'));
- myChart22 = ec.init(document.getElementById('g22'));
- myChart23 = ec.init(document.getElementById('g23'));
- myChart24 = ec.init(document.getElementById('g24'));
- myChart25 = ec.init(document.getElementById('g25'));
-
- myChart20.setOption(option2('GDP'));
- myChart21.setOption(option2('Financial'));
- myChart22.setOption(option2('Estate'));
- myChart23.setOption(option2('PI'));
- myChart24.setOption(option2('SI'));
- myChart25.setOption(option2('TI'));
- }
- functionMap.chart2dispose = function () {
- if (myChart20) {
- myChart20.dispose();
- myChart21.dispose();
- myChart22.dispose();
- myChart23.dispose();
- myChart24.dispose();
- myChart25.dispose();
- myChart20 = false;
- myChart21 = false;
- myChart22 = false;
- myChart23 = false;
- myChart24 = false;
- myChart25 = false;
- }
- }
- // first chart
- var myChart1;
- var curRange = false;
- functionMap.chart1 = function (idx) {
- functionMap.chart1dispose(idx);
- myChart1 = require('echarts').init(document.getElementById('g' + idx));
- myChart1.setOption(option3(curEIndex));
- }
- functionMap.chart1dispose = function () {
- if (myChart1) {
- myChart1.dispose();
- myChart1 = false;
- }
- }
- var resizeTicket;
- window.onload = function () {
- window.onresize = function () {
- clearTimeout(resizeTicket);
- resizeTicket = setTimeout(function (){
- myChart0.resize();
- if (curTabIdx == 1) {
- myChart1.resize();
- }
- else if (curTabIdx == 2) {
- myChart20.resize();
- myChart21.resize();
- myChart22.resize();
- myChart23.resize();
- myChart24.resize();
- myChart25.resize();
- }
- else {
-
- myChart3.resize();
- }
- },200);
- }
- }
|