1. 程式人生 > >echarts地圖 json資料 和 後套動態資料載入

echarts地圖 json資料 和 後套動態資料載入

 $(function () {

              zbw();

          });
var contentzbw= "../../static/assets/js/map/"

function zbw() {
              var myChart = echarts.init(document.getElementById("henanmap"));

              echarts.util.mapData.params.params.河南 = {
                  getGeoJson: function (callback) {
                      $.getJSON('../../static/assets/js/map/mapJson/hn.json'
, function (data) { // 壓縮後的地圖資料必須使用 decode 函式轉換 callback(echarts.util.mapData.params.decode(data)); }); } }; var cityindx='河南'; var curIndx = 0; var mapType = [ '河南'
, // 18市 '安陽市', '鶴壁市', '濮陽市', '新鄉市', '焦作市', '三門峽市', '洛陽市', '鄭州市', '開封市', '許昌市', '平頂山市', '漯河市', '周口市', '南陽市', '駐馬店市', '信陽市', '商丘市', '濟源市', '項城市','二七區','新鄭市','新密市', '登封市','鞏義市','上街區','滎陽市', '惠濟區','金水區','中原區','管城回族區' ,'中牟縣' ]; echarts.util.mapData.params.params.鄭州市 = { getGeoJson: function
(callback) {
$.getJSON(contentzbw+'mapJson/' + 'zzs' + '.json', function (data) { // 壓縮後的地圖資料必須使用 decode 函式轉換 callback(echarts.util.mapData.params.decode(data)); }); } }; echarts.util.mapData.params.params.安陽市 = { getGeoJson: function (callback) { $.getJSON(contentzbw+'mapJson/' + 'ays' + '.json', function (data) { // 壓縮後的地圖資料必須使用 decode 函式轉換 callback(echarts.util.mapData.params.decode(data)); }); } }; echarts.util.mapData.params.params.鶴壁市 = { getGeoJson: function (callback) { $.getJSON(contentzbw+'mapJson/' + 'hbs' + '.json', function (data) { // 壓縮後的地圖資料必須使用 decode 函式轉換 callback(echarts.util.mapData.params.decode(data)); }); } }; echarts.util.mapData.params.params.濮陽市 = { getGeoJson: function (callback) { $.getJSON(contentzbw+'mapJson/' + 'pys' + '.json', function (data) { // 壓縮後的地圖資料必須使用 decode 函式轉換 callback(echarts.util.mapData.params.decode(data)); }); } }; echarts.util.mapData.params.params.新鄉市 = { getGeoJson: function (callback) { $.getJSON(contentzbw+'mapJson/' + 'xxs' + '.json', function (data) { // 壓縮後的地圖資料必須使用 decode 函式轉換 callback(echarts.util.mapData.params.decode(data)); }); } }; echarts.util.mapData.params.params.焦作市 = { getGeoJson: function (callback) { $.getJSON(contentzbw+'mapJson/' + 'jzs' + '.json', function (data) { // 壓縮後的地圖資料必須使用 decode 函式轉換 callback(echarts.util.mapData.params.decode(data)); }); } }; echarts.util.mapData.params.params.三門峽市 = { getGeoJson: function (callback) { $.getJSON(contentzbw+'mapJson/' + 'smss' + '.json', function (data) { // 壓縮後的地圖資料必須使用 decode 函式轉換 callback(echarts.util.mapData.params.decode(data)); }); } }; echarts.util.mapData.params.params.洛陽市 = { getGeoJson: function (callback) { $.getJSON(contentzbw+'mapJson/' + 'lys' + '.json', function (data) { // 壓縮後的地圖資料必須使用 decode 函式轉換 callback(echarts.util.mapData.params.decode(data)); }); } }; echarts.util.mapData.params.params.開封市 = { getGeoJson: function (callback) { $.getJSON(contentzbw+'mapJson/' + 'kfs' + '.json', function (data) { // 壓縮後的地圖資料必須使用 decode 函式轉換 callback(echarts.util.mapData.params.decode(data)); }); } }; echarts.util.mapData.params.params.許昌市 = { getGeoJson: function (callback) { $.getJSON(contentzbw+'mapJson/' + 'xcs' + '.json', function (data) { // 壓縮後的地圖資料必須使用 decode 函式轉換 callback(echarts.util.mapData.params.decode(data)); }); } }; echarts.util.mapData.params.params.平頂山市 = { getGeoJson: function (callback) { $.getJSON(contentzbw+'mapJson/' + 'pdss' + '.json', function (data) { // 壓縮後的地圖資料必須使用 decode 函式轉換 callback(echarts.util.mapData.params.decode(data)); }); } }; echarts.util.mapData.params.params.漯河市 = { getGeoJson: function (callback) { $.getJSON(contentzbw+'mapJson/' + 'lhs' + '.json', function (data) { // 壓縮後的地圖資料必須使用 decode 函式轉換 callback(echarts.util.mapData.params.decode(data)); }); } }; echarts.util.mapData.params.params.周口市 = { getGeoJson: function (callback) { $.getJSON(contentzbw+'mapJson/' + 'zks' + '.json', function (data) { // 壓縮後的地圖資料必須使用 decode 函式轉換 callback(echarts.util.mapData.params.decode(data)); }); } }; echarts.util.mapData.params.params.南陽市 = { getGeoJson: function (callback) { $.getJSON(contentzbw+'mapJson/' + 'nys' + '.json', function (data) { // 壓縮後的地圖資料必須使用 decode 函式轉換 callback(echarts.util.mapData.params.decode(data)); }); } }; echarts.util.mapData.params.params.駐馬店市 = { getGeoJson: function (callback) { $.getJSON(contentzbw+'mapJson/' + 'zmds' + '.json', function (data) { // 壓縮後的地圖資料必須使用 decode 函式轉換 callback(echarts.util.mapData.params.decode(data)); }); } }; echarts.util.mapData.params.params.信陽市 = { getGeoJson: function (callback) { $.getJSON(contentzbw+'mapJson/' + 'xys' + '.json', function (data) { // 壓縮後的地圖資料必須使用 decode 函式轉換 callback(echarts.util.mapData.params.decode(data)); }); } }; echarts.util.mapData.params.params.商丘市 = { getGeoJson: function (callback) { $.getJSON(contentzbw+'mapJson/' + 'sqs' + '.json', function (data) { // 壓縮後的地圖資料必須使用 decode 函式轉換 callback(echarts.util.mapData.params.decode(data)); }); } }; echarts.util.mapData.params.params.濟源市 = { getGeoJson: function (callback) { $.getJSON(contentzbw+'mapJson/' + 'jys' + '.json', function (data) { // 壓縮後的地圖資料必須使用 decode 函式轉換 callback(echarts.util.mapData.params.decode(data)); }); } }; var datas=[]; // 同步執行 $.ajaxSettings.async = false; // 載入資料 $.getJSON('../../datas/gethomemap', function (json) { datas = json.datas; datas1=json.datas1; datas2=json.datas2; }); var option = { title: { x: 'center', text: '全省18個市', subtext: '河南' }, tooltip: { trigger: 'item', show : true, showDelay:500, formatter: '{b}<br/>{a}:{c}' }, legend: { orient: 'vertical', x: 'left', data: ['微博資料量','關注人數','資訊量息量'] }, dataRange: { min: 0, max: 1000, color: ['#1e90ff', '#f0ffff'], text: ['高', '低'], // 文字,預設為數值文字 calculable: true }, toolbox: { show: true, orient : 'vertical', x: 'right', y: 'center', feature : { mark : {show: true}, dataView : {show: true, readOnly: false}, restore : {show: true}, saveAsImage : {show: true} } }, roamController: { show: true, x: 'right', mapTypeControl: { '河南': true, '鄭州市':true } }, series: [ { name: '微博資料量', type: 'map', mapType: '河南', selectedMode: 'single', roam: false, itemStyle: { normal: { label: { show: true} }, emphasis: { label: { show: true} } }, data: datas }, { name: '關注人數', type: 'map', mapType: '河南', itemStyle: { normal: { label: { show: true} }, emphasis: { label: { show: true} } }, data: datas1 }, { name: '資訊量息量', type: 'map', mapType: '河南', itemStyle: { normal: { label: { show: true} }, emphasis: { label: { show: true} } }, data:datas2 } ] }; myChart.setOption(option); var len = mapType.length; var mt = mapType[curIndx % len]; myChart.on(echarts.config.EVENT.MAP_SELECTED, function (param) { len = mapType.length; if (mt == '河南') { // 河南選擇指定的市區 var selected = param.selected; for (var i in selected) { if (selected[i]) { mt = i; while (len--) { if (mapType[len] == mt) { curIndx = len; } } break; } } if (mt == '濟源市') { mt='河南|濟源市' } cityindx=mt; option.series[0].mapType = mt; option.series[1].mapType = mt; option.series[2].mapType = mt; option.title.subtext = mt; myChart.setOption(option, true); } else { //選擇市內的區 var selected = param.selected; for (var i in selected) { if (selected[i]) { mt = i; break; } } if(cityindx==mt){ mt='河南' curIndx = 0 option.series[0].mapType = mt; option.series[1].mapType = mt; option.series[2].mapType = mt; option.title.subtext = mt; myChart.setOption(option, true); } cityindx=mt; } }); }

package com.jeefw.controller.sys;

import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

import com.jeefw.core.Constant;
import com.jeefw.core.JavaEEFrameworkBaseController;
import com.jeefw.model.sys.DictLeixing;
@Controller
@RequestMapping(“/datas”)
public class DatasController extends JavaEEFrameworkBaseController implements Constant{

//表圖的動態資料
@RequestMapping("/gethomemap")
public void dogetDatas(HttpServletRequest request,HttpServletResponse response) throws IOException{
    String mapname[]= {"信陽市","南陽市","駐馬店市","周口市","商丘市","三門峽市","新鄉市","鄭州市","安陽市","開封市",
                       "焦作市","許昌市","濮陽市","漯河市","鶴壁市","項城市","鞏義市","上街區","登封市","新密市",
                       "二七區","金水區","中原區","管城回族區","惠濟區","中牟縣","滎陽市","濟源市","平頂山市","洛陽市",
                       "濟源市","新鄭市"};
    Map<String, Object> datas =new HashMap<String, Object>();
    Map<String, Object> result = new HashMap<String, Object>();
    List<Object> results = new ArrayList<Object>(); ;
    for (int i = 0; i <31 ; i++) {
        result = new HashMap<String, Object>();
        result.put("name", mapname[i]);
        result.put("value", 500+i*10);
        results.add(result);
    }   
    datas.put("datas", results);//微博資訊
    datas.put("datas1", results);//資料1
    datas.put("datas2", results);//資料2
    System.out.println("測試::"+datas);
    writeJSON(response, datas);

}

}
這裡寫圖片描述