热力图
Name | Type | Description | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
Object |
optional
对象具有以下属性:
|
Example:
//生成GeoJson随机数据的函数
function getData(length) {
var geoJsonData ={
type:"FeatureCollection"
};
geoJsonData.features=[];
for (var i = 0; i < length; i++) {
var obj={
type:'Feature',
properties:{
z:0
},
geometry:{
type:"Point",
coordinates:[0,0]
}
};
obj.geometry.coordinates[0]=Math.random() * (98.95746362353572 - 96.39292834205654) +96.39292834205654;
obj.geometry.coordinates[1]=Math.random() * (31.078371524252578 - 28.68605002678491) + 28.68605002678491;
obj.properties.z=Math.random() * 100;
geoJsonData.features.push(obj);
}
return geoJsonData;
}
//获取GeoJson数据
var data=getData(1000);
// 配置数据并生成热力图
var geoHeatmap=new Cesium.GeoHeatMap({
viewer:viewer, //地球容器
heatmapOptions:{
useEntities:true, //值为true:采用entities方式加载;值为false:采用imageryLayers方式加载
gradient:{ //渐变参数设置
0.25: "rgb(0,0,225)",
0.55: "rgb(0,225,0)",
0.85: "rgb(255,225,0)",
1.0: "rgb(255,0,0)"
},
radius: 60, //每个数据点将具有的半径
// radiusFactor:60, //如果没有给定半径,则使用数据点大小因子(高度和宽度的较大值除以该数字将生成所用的半径)
spacingFactor:1.5, // 边界周围的额外空间(点半径乘以此数字得到间距)
//opacity:0.6, //整个热力图的全局不透明度。如果设置,这将覆盖maxOpacity和minOpacity
maxOpacity:0.8, //热力图中最高值的最大不透明度。(如果设置了不透明度,将被覆盖)
minOpacity:0.1, //热力图中最低值的最小不透明度(如果设置了不透明度,将被覆盖)
blur:0.85 //值越大,渐变越平滑,外圆占比越大。
}
});
//设置数据
geoHeatmap.setData(0,100,data)
Demo:
Methods
度转弧度
Name | Type | Description |
---|---|---|
d |
Number | 度 |
Returns:
弧度
销毁热力图
将墨卡托位置转换为相应的热力图位置
Name | Type | Description |
---|---|---|
p |
Object | 一个墨卡托位置,如x:lon,y:lat |
Returns:
点在画布上的坐标
墨卡托坐标转WGS84坐标
Name | Type | Description |
---|---|---|
p |
Object | 墨卡托坐标如:{x, y} |
Returns:
WGS84坐标如:{x, y}
将包围盒范围由墨卡托转WGS84
Name | Type | Description |
---|---|---|
bb |
Object | 墨卡托包围盒坐标如:{north, east, south, west} |
Returns:
WGS84包围盒如:{north, east, south, west}
弧度转度
Name | Type | Description |
---|---|---|
r |
Number | 弧度 |
Returns:
度
移除热力图
设置热力图位置数组
Name | Type | Default | Description |
---|---|---|---|
min |
Number | 最小值 | |
max |
Number | 最大值 | |
geoJsonData |
Object | geoJson数据 | |
heatMapField |
String |
'z'
|
optional 自定义权重字段,默认是'z' |
Returns:
数据设置是否成功
设置热力图是否显示在地图上
Name | Type | Description |
---|---|---|
s |
Boolean | “true”表示显示热力图,“false”表示隐藏热力图。 |
更新/重绘热力图
将wgs84位置转换为相应的heatmap位置
Name | Type | Description |
---|---|---|
度,一个wgs84位置,如x:lon,y:lat |
Number |
WGS84转墨卡托
Name | Type | Description |
---|---|---|
p |
Object | WGS84坐标,如:{x: lon, y: lat} |
Returns:
墨卡托坐标,如:{x: lon, y: lat}
将包围盒范围由WGS84转墨卡托
Name | Type | Description |
---|---|---|
bb |
Object | WGS84包围盒如:{north, east, south, west} |
Returns:
墨卡托包围盒如:{north, east, south, west}