1.fitter函数
filter
是 JavaScript 数组的一个方法,用于创建一个新数组,包含通过所提供函数实现的测试的所有元素。简单来说,filter
方法用于提取数组中满足特定条件的元素。
array.filter(function callback(element, index, array) {// 返回布尔值
}, thisArg);
- callback:用于测试数组中每个元素的函数。它接受以下参数:
element
:当前遍历到的数组元素的值。index
(可选):当前元素的索引。array
(可选):正在遍历的数组。
- thisArg(可选):执行
callback
函数时使用的this
值。
返回值:
- 返回一个新数组,包含通过
callback
函数测试(返回true
)的所有元素。 filter
方法不会改变原始数组。filter
方法会创建一个新数组,包含所有通过测试函数的元素。- 如果没有元素通过测试,
filter
返回一个空数组。 - 如果测试函数始终返回
false
,则filter
返回一个空数组。 filter
方法对空位不执行回调函数,但会保留空位在结果数组中
2.地图视角设置
viewControl: {autoRotate: false,//自动旋转autoRotateAfterStill: 3,distance: 100,//距离你最近的距离minAlpha: 15,//最小的角度maxAlpha: 90,//最大的角度设置minBeta: -360,maxBeta: 360000,animation: true,autoRotateSpeed: 3,},
3.过滤想要的数据
let value = typedata.map((city) => {return {name: city.name, // 提取城市名称value: [city.longitude, city.latitude, city.value], // 创建包含经纬度的数组};});
通过map来过滤所需求的数组,进行后续操作,这里相当于在typedata数据中过滤我们返回的value值,
4.地图的三维柱状图
const xxx = {name: "xxx",type: "bar3D",minHeight: 4.2, // 坑,需要大于0,否则最低的柱状图渲染会出问题coordinateSystem: "geo3D", // 采用geo3D的坐标系统barSize: 1.4, // 柱状图的粗细shading: "lambert", // lambert比color看着更加真实bevelSize: 0.72, // 长方体向圆柱的过渡效果itemStyle: {// 这里也可以设置默认的颜色,但如果 visualMap 存在,它可能会被覆盖color: "#700", // 示例,通常不需要设置},label: {show: true,distance: 0.36,color: "#333",textStyle: {fontWeight: "bold",},//设置点击事件,对这个数组里的数据取标签formatter(params: any) {// console.log("params.value[2]:", params.value[2]);return params.value[2] + "个";},},data: [],//数据
};
注:这里的bar3d需要和geo3d一起使用,才可以生效,在三维地图上显示3d的立体柱状图