echarts是一款優秀的數據可視化工具,它支持多種圖表類型,包括地圖。在使用echarts地圖時,我們可以引用json數據來繪制我們需要的地圖。
// json數據示例 { "type": "FeatureCollection", "features": [ { "type": "Feature", "properties": { "name": "北京市", "adcode": "110000", "center": [ 116.405285, 39.904989 ] }, "geometry": { "type": "Polygon", "coordinates": [ [ [116.011934, 40.661166], [116.011581, 40.66156], [116.010246, 40.662547], ... ] ] } }, ... ] }
我們可以使用echarts提供的geoJson方法將json數據轉換為echarts可識別的地圖數據,代碼示例如下:
// 引入json數據 $.get('mapdata.json', function(data) { var option = { geo: { map: 'china', roam: true, label: { normal: { show: true, textStyle: { color: '#333' } }, emphasis: { show: true } }, itemStyle: { normal: { areaColor: '#fff', borderColor: '#111' }, emphasis: { areaColor: '#ccc' } } }, series: [ { name: '地圖', type: 'map', geoIndex: 0, data: echarts.util.mapData.params({ json: data, nameMap: { '北京市': '北京' } }) } ] }; // 繪制地圖 var chart = echarts.init(document.getElementById('main')); chart.setOption(option); });
上述代碼中,我們使用了jQuery的$.get方法來獲取json數據,并在options中使用echarts.util.mapData.params方法將json數據轉換為地圖數據,并引用到系列中的data中進行繪制。