赞
踩
近段时间,大量的接触echarts,整理一下知识点,巩固学习;
$.getJSON("json/jsGeoJson/jiangsu.json", function(geoJson) {//#1 echarts.registerMap('江苏', geoJson);//#2 let option = { series: [ { name: '江苏地图', type: 'map', mapType: '江苏',//#3 itemStyle:{ normal:{label:{show:true}}, emphasis:{label:{show:true}} }, data:[{name: '南京', value: 100}],//#4 nameMap: {'南京市': '南京'}//#5 } ] } mapChart.setOption(option); })
代码备注:
json/jsGeoJson/jiangsu.json
读取江苏地图的GeoJson; (下面内容会相对详细的介绍GeoJson);echarts
中注册名为江苏
的地图名称,和#3
:series[0].mapType
对应;series[0].data
主要存放每个行政区对应的值其中name
属性对应GeoJson
中#6
:features[].properties.name
南京市
和南京
,US
和美国
等等,nameMap
就是解决这个问题的方法之一,也可以在数据处理的函数,直接改后端传来的数据(让后端改好传过来?也行吧);GeoJSON是一种对各种地理数据结构进行编码的格式,基于Javascript对象表示法的地理空间信息数据交换格式。
我们常用的GeoJSON实际是描述行政区边界的json,实际上本来echarts是提供对应的json,后来百度官方下了,我们只能自己搜集相关json文件了;
下面是最简单的GeoJSON
{ "type": "FeatureCollection", "features": [ { "type": "Feature", "properties": { "name": "行政区名称",//#6 "id": "行政区ID" }, "geometry": { "type": "MultiPolygon", "coordinates": [ [ [ [119.917345, 31.753843], [119.891998320313, 31.7478542304688], [119.853077421875, 31.7734767890625], [119.867345, 31.833843], [119.873985625, 31.8372023750001], [119.881422148438, 31.851899640625], [119.91062625, 31.83712425], [119.925201445313, 31.8083132148438], [119.947345, 31.803843], [119.959268828125, 31.7798561835938], [119.920704375, 31.760483625], [119.917345, 31.753843] ] ] ] } } ] }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。