(echarts)数据地图获取全国地区经纬度
mapDataAll: [
{
name:"西安",
value:100,
},
...
],
获取全国地区经纬度:
//3.准备数据
var data = []
data = this.mapDataAll
// 获取全国地区经纬度
var mapName = 'china'
var geoCoordMap = {}
var lnglatShow = false
// 判断是否为空对象ES6方法
if (Object.keys(this.maplnglat).length === 0) {
var mapFeatures = echarts.getMap(mapName).geoJson.features
mapFeatures.forEach(function (v) {
// 地区名称
var name = v.properties.name
// 地区经纬度
geoCoordMap[name] = v.properties.cp
})
} else {
lnglatShow = true
geoCoordMap = this.maplnglat //返回的经纬度
}
//4.把数据变成[{{ name: "北京", value: [121.472644, 31.231706,177] },...}]格式
var convertData = function (data) {
var res = []
for (var i = 0; i < data.length; i++) {
var geoCoord = geoCoordMap[data[i].name]
if (geoCoord) {
res.push({
name: data[i].name,
value: geoCoord.concat(data[i].value),
})
}
}
return res
}