Toggle navigation
地图+河流线+园区面
By
群***乐
2020-09-16 03:57:17
脚本
16
21
作品使用的第三方脚本
数据管理
上传数据
支持小于 5M 任意格式(csv, xlsx, json, xml, ...)的数据文件
上传后可以通过生成的文件链接异步获取托管的数据。
历史数据
0 条
无历史数据
代码修改记录
信息提示
保存作品
对当前截图不满意?你还可以
上传本地截图
重新截图
作品名称
作品描述
标签
geo
grid
legend
markLine
markPoint
bar
effectScatter
line
lines
map
timeline
title
toolbox
tooltip
visualMap
作品默认版本
最新
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
20:11:45
图表已生成
整理代码
刷新
代码
var cq_yubei_yuanqu_ploygon = "/asset/get/s/data-1601004278072-mwT9hm1OS.json"; // 园区面数据 var cq_yubei_yuanqu_ployline = "/asset/get/s/data-1601000263534-L5nH9FF-Z.json"; // 园区线数据 var cq = "/asset/get/s/data-1600228345761-fxbCoFhIA.json"; // cq var river = "/asset/get/s/data-1600223191033-_JIZbaq7Y.json"; // 河流线数据 myChart.showLoading(); $.getJSON(river, function(riverJson) { /** -------问题(1)-echarts叠加河流--------- */ // 将rivergeojson 进行处理成 type:lines 所需的坐标格式 // 因为 echarts.registerMap() 只能加载面\多面的geojson数据"type": "MultiPolygon",不能加载线要素"type" : "LineString", // 多段线则不能显示 label,如长江不能显示在河流中部。 var riverLines = [].concat.apply([], riverJson.features.map(function(feature, idx) { return { coords: feature.geometry.coordinates } })); /** -------问题(2)-echarts叠加园区之线要素--------- */ // 闭合多段线要素、但不能显示label // 解决办法:在特定坐标点加点坐标,显示label var dataArr = [{ name: '渝北区-空港新城-规划范围线', value: [106.5845,29.7306], },{ name: '渝北区_前沿科技城企业', value: [106.6655,29.6656], },{ name: '渝北区_创新经济走廊建成区', value: [106.6184,29.6767], },{ name: '渝北区_创新经济走廊建成区', value: [106.5906,29.6496], },{ name: '渝北区_仙桃数据谷', value: [106.5482,29.7466], },{ name: '空港工业园区-航空产业园', value: [106.6466,29.7459], },{ name: '空港工业园区-创新示范基地', value: [106.6370,29.7591], },{ name: '空港工业园区-航空小镇', value: [106.6281,29.7837], },{ name: '空港工业园区-木耳物流园', value: [106.6787,29.8069], },{ name: '渝北区_农业园区', value: [106.7237,29.8808], }]; $.getJSON(cq_yubei_yuanqu_ployline, function(cq_yubei_yuanqu_ploylineJson) { var yuanquLines = [].concat.apply([], cq_yubei_yuanqu_ploylineJson.features.map(function(feature, idx) { return { coords: feature.geometry.coordinates } })); /** -------问题(3)-echarts叠加园区之面要素--------- */ // 叠加两个面数据可通过geo。但是不能配准,两个相互独立。 // 缩放和移动,可通过监听 'georoam' 实时改变 // $.getJSON(cq_yubei_yuanqu_ploygon, function(cq_yubei_yuanqu_ploygonJson) { // echarts.registerMap('园区', cq_yubei_yuanqu_ploygonJson); $.getJSON(cq, function(geoJson) { echarts.registerMap('重庆市', geoJson); myChart.hideLoading(); option = { backgroundColor: '#091c3d', geo: [{ zlevel: 1, show: true, map: '重庆市', label: { normal: { show: false }, emphasis: { show: true, color: '#fff' } }, roam: true, aspectScale: 1, itemStyle: { normal: { areaColor: 'transparent', borderColor: '#3fdaff', borderWidth: 2, shadowColor: 'rgba(63, 218, 255, 0.5)', shadowBlur: 30 }, emphasis: { areaColor: '#2B91B7', } } }, // 匹配问题(3) // { // zlevel:2, // map: '园区', // roam: true, // } ], series: [{ zlevel: 3, type: 'lines', coordinateSystem: 'geo', polyline: true, data: riverLines, silent: true, lineStyle: { normal: { color: 'rgb(200, 35, 45)', // opacity: 0.2, width: 5 } }, label: { show: true, formatter: 'sss' } }, // 匹配问题(2) { zlevel: 1, type: 'lines', coordinateSystem: 'geo', polyline: true, data: yuanquLines, silent: true, lineStyle: { normal: { color: '#3fdaff', // opacity: 0.2, // width: 5 } }, label: { show: true, formatter: 'ssss' } }, // 匹配问题(2)--指定点label { zlevel: 1, type: 'scatter', coordinateSystem: 'geo', // symbol: 'none', symbolSize: 2, data: dataArr, label: { // 文字 show: true, color: '#fff', position: 'top', // fontSize: 12, formatter:'{b}' }, } ] }; myChart.setOption(option); }); // }); }); });