public class LayerHeatmap extends Layer
热力图是通过颜色分布,描述诸如人群分布、密度和变化趋势等的一种地图表现手法,因此,能够非常直观地呈现一些原本不易理解或表达的数据,比如密度、频度、温度等。
热力图图层除了可以反映点要素的相对密度,还可以表示根据属性进行加权的点密度,以此考虑点本身的权重对于密度的贡献。
热力图图层将随地图放大或缩小而发生更改,是一种动态栅格表面,例如,绘制全国旅游景点的访问客流量的热力图,当放大地图后,该热力图就可以反映某省内或者局部地区的旅游景点访问客流量分布情况。
限定符和类型 | 方法和说明 |
---|---|
AggregationFunctionType |
getAggregationFun()
返回热力图聚合字段应用的聚合函数。
|
Colors |
getColorset()
返回用于显示当前热力图的颜色集合。
|
double |
getCurrentWindowMaxValue()
获取当前视图最大值
|
double |
getCurrentWindowMinValue()
获取当前视图最小值
|
double |
getFuzzyDegree()
返回热力图中颜色渐变的模糊程度。
|
ColorType |
getGradientColorType()
返回热力图的颜色渐变模式,包含两种模式:HSB和RGB。
|
double |
getIntensity()
返回热力图中高点密度颜色(MaxColor)和低点密度颜色(MinColor)确定渐变色带中高点密度颜色(MaxColor)所占的比重,该值越大,表示在色带中高点密度颜色所占比重越大。
|
double |
getInternalMaxValue()
获取系统最大值
|
double |
getInternalMinValue()
获取系统最小值
|
boolean |
getIsUseCurrentView()
获取是否使用当前视图最值
|
boolean |
getIsUserDef()
获取是否使用用户自定义最值
|
int |
getKernelRadius()
返回用于计算密度的核半径。
|
Color |
getMaxColor()
返回高点密度的颜色,热力图图层将通过高点密度颜色(MaxColor)和低点密度颜色(MinColor)确定渐变的颜色方案。
|
double |
getMaxValue()
返回一个最大值。
|
MemRecordset |
getMemRecordset()
返回用于制作热力图的内存点记录集。
|
Color |
getMinColor()
返回低点密度的颜色,热力图图层将通过高点密度颜色(MaxColor)和低点密度颜色(MinColor)确定渐变的颜色方案。
|
double |
getMinValue()
返回一个最小值。
|
double |
getUserdefMaxScale()
获取原始点可见比例尺,地图比例尺小于该比例尺后不再显示
|
String |
getWeightField()
返回权重字段。
|
void |
setAggregationFun(AggregationFunctionType type)
设置热力图聚合字段应用的聚合函数。
|
void |
setColorset(Colors colors)
设置用于显示当前热力图的颜色集合。
|
void |
setFuzzyDegree(double value)
设置热力图中颜色渐变的模糊程度。
|
void |
setGradientColorType(ColorType type)
设置热力图的颜色渐变模式,包含两种模式:HSB和RGB。
|
void |
setIntensity(double value)
设置热力图中高点密度颜色(MaxColor)和低点密度颜色(MinColor)确定渐变色带中高点密度颜色(MaxColor)所占的比重,该值越大,表示在色带中高点密度颜色所占比重越大。
|
void |
setIsUseCurrentView(boolean value)
设置是否使用当前视图最值
|
void |
setIsUserDef(boolean value)
设置是否使用用户自定义最值
|
void |
setKernelRadius(int radius)
设置用于计算密度的核半径。
|
void |
setMaxColor(Color color)
设置高点密度的颜色,热力图图层将通过高点密度颜色(MaxColor)和低点密度颜色(MinColor)确定渐变的颜色方案。
|
void |
setMaxValue(double vlaue)
设置一个最大值。
|
void |
setMinColor(Color color)
设置低点密度的颜色,热力图图层将通过高点密度颜色(MaxColor)和低点密度颜色(MinColor)确定渐变的颜色方案。
|
void |
setMinValue(double value)
设置一个最小值。
|
void |
setUserdefMaxScale(double scale)
设置原始点可见比例尺,地图比例尺小于该比例尺后不再显示
|
void |
setWeightField(String field)
设置权重字段。
|
void |
updateData()
根据数据变化自动更新当前热力图图层。
|
addCaptionChangedListener, addEditableChangedListener, addElementDrawingListener, addGridFunction, addSelectableChangedListener, addSnapableChangedListener, addVisibleChangedListener, checkLayerSubType, clearThemeElementPositions, findLayer, fromXML, getAdditionalSetting, getBlendMode, getBounds, getCaption, getClipRegion, getDataset, getDeduplicateThreshold, getDeduplicateTolerance, getDescription, getDisplayControledLayer, getDisplayFilter, getDisplayFilterStr, getExtensionPlugin, getExtensionUserInfo, getExternalInfo, getFieldValuesDisplayFilter, getFillMarkerOrder, getGridFunctionArgs, getGridFunctionType, getGridFunctonCount, getLayerWeight, getMap, getMaxVisibleScale, getMinVisibleGeometrySize, getMinVisibleScale, getName, getOpaqueRate, getOverlapGeometryPixel, getOverlapGeometryThreshold, getParentGroup, getParentSnapshot, getRepresentationField, getSelection, getSource, getSubLayerType, getSubType, getSymbolScale, getTheme, getThemeElementPosition, getTimeEndField, getTimeFilterEnding, getTimeFilterStarting, getTimeStartField, getTimeStepInterval, getValueExpressions, hitTest, hitTest, hitTest, hitTestGeoCompound, isAntialias, isClipRegionEnabled, isCompleteLineSymbolDisplayed, isCrossroadOptimized, isDeduplicateEnabled, isDiposed, isDisposed, isEditable, isFullLabelEnabled, isInteroperable, isLayerCacheEnabled, isModified, isOverlapDisplayed, isOverlapGeometryEnabled, isRepresentationEnabled, isSelectable, isSnapable, isSuperAndSubScript, isSwipeEnabled, isSymbolScalable, IsTimeFilterEnable, isVisible, isVisibleScale, removeCaptionChangedListener, removeEditableChangedListener, removeElementDrawingListener, removeGridFunction, removeSelectableChangedListener, removeSnapableChangedListener, removeThemeElementPosition, removeVisibleChangedListener, setAdditionalSetting, setAntialias, setBlendMode, setCaption, setClipRegion, setClipRegionEnabled, setCompleteLineSymbolDisplayed, setCrossroadOptimized, setDataset, setDeduplicateEnabled, setDeduplicateThreshold, setDeduplicateTolerance, setDescription, setDisplayControledLayer, setDisplayFilter, setDisplayFilterStr, setEditable, setExtensionUserInfo, setExternalInfo, setFillMarkerOrder, setFullLabelEnabled, setInteroperable, SetLayerCacheEnabled, SetLayerCacheRefresh, setLayerWeight, setMaxVisibleScale, setMinVisibleGeometrySize, setMinVisibleScale, setModified, setOpaqueRate, setOverlapDisplayed, setOverlapGeometryEnabled, setOverlapGeometryPixel, setOverlapGeometryThreshold, setRepresentationEnabled, setRepresentationField, setSelectable, setSelection, setSnapable, setSource, setSource, setSuperAndSubScript, setSwipeEnabled, setSymbolScalable, setSymbolScale, setThemeElementPosition, setTimeEndField, setTimeFilterEnable, setTimeFilterEnding, setTimeFilterStarting, setTimeStartField, setTimeStepInterval, setValueExpressions, setVisible, themeSymbolsToGeometries, themeSymbolsToGeometrys, themeToDatasetVector, toXML
public int getKernelRadius()
public void setKernelRadius(int radius)
核半径在热力图中所起的作用如下所述:
1) 热力图将根据设置的核半径值对每个离散点建立一个缓冲区。核半径数值的单位为:屏幕坐标;
2) 对每个离散点建立缓冲区后,对每个离散点的缓冲区,使用渐进的灰度带(完整的灰度带是0~255)从内而外,由浅至深地填充;
3) 由于灰度值可以叠加(值越大颜色越亮,在灰度带中则显得越白。在实际中,可以选择ARGB模型中任一通道作为叠加灰度值),从而对于有缓冲区交叉的区域,可以叠加灰度值,因而缓冲区交叉的越多,灰度值越大,这块区域也就越“热”;
4) 以叠加后的灰度值为索引,从一条有256种颜色的色带中(例如彩虹色)映射颜色,并对图像重新着色,从而实现热力图。
查找半径越大,生成的密度栅格越平滑且概化程度越高;值越小,生成的栅格所显示的信息越详细。
radius
- 用于计算密度的核半径。单位为:屏幕坐标。public Color getMaxColor()
public void setMaxColor(Color color)
color
- 高点密度的颜色,热力图图层将通过高点密度颜色(MaxColor)和低点密度颜色(MinColor)确定渐变的颜色方案。public Color getMinColor()
public void setMinColor(Color color)
color
- 低点密度的颜色,热力图图层将通过高点密度颜色(MaxColor)和低点密度颜色(MinColor)确定渐变的颜色方案。public void setMaxValue(double vlaue)
value
- public double getMaxValue()
public void setMinValue(double value)
value
- 一个最小值。当前热力图图层中最大值(MaxValue)与最小值(MinValue)之间栅格将使用MaxColor和MinColor所确定的色带进行渲染,其他大于MaxValue的栅格将以MaxColor渲染;而者小于MinValue的栅格将以MinColor渲染。public double getMinValue()
public void setIntensity(double value)
value
- 热力图中高点密度颜色(MaxColor)和低点密度颜色(MinColor)确定渐变色带中高点密度颜色(MaxColor)所占的比重,该值越大,表示在色带中高点密度颜色所占比重越大。public double getIntensity()
public void setFuzzyDegree(double value)
value
- 热力图中颜色渐变的模糊程度。public double getFuzzyDegree()
public void setWeightField(String field)
根据核半径(KernelRadius)确定的离散点缓冲区,其叠加确定了热度分布密度,而权重则是确定了点对于密度的影响力,点的权重值确定了该点缓冲区的对于密度的影响力,即如果点缓冲区原来的影响系数为1,点的权重值为10,则引入权重后,该点缓冲区的影响系数为1*10=10,以此类推其他离散点缓冲区的密度影响系数。
那么,引入权重后,将获得一个新的叠加后的灰度值为索引,在利用指定的色带为其着色,从而实现引入权重的热力图。
field
- 权重字段。热力图图层除了可以反映点要素的相对密度,还可以表示根据权重字段进行加权的点密度,以此考虑点本身的权重对于密度的贡献。public String getWeightField()
public boolean getIsUserDef()
IllegalStateException
- 当前对象已被释放public void setIsUserDef(boolean value)
value
- 是否使用用户自定义最值IllegalStateException
- 当前对象已被释放public double getInternalMaxValue()
IllegalStateException
- 当前对象已被释放public double getInternalMinValue()
IllegalStateException
- 当前对象已被释放public boolean getIsUseCurrentView()
IllegalStateException
- 当前对象已被释放public void setIsUseCurrentView(boolean value)
value
- 是否使用当前视图最值IllegalStateException
- 当前对象已被释放public double getCurrentWindowMaxValue()
IllegalStateException
- 当前对象已被释放public double getCurrentWindowMinValue()
IllegalStateException
- 当前对象已被释放public MemRecordset getMemRecordset()
public void updateData()
public void setUserdefMaxScale(double scale)
scale
- 原始点可见比例尺IllegalStateException
- 当前对象已被释放public double getUserdefMaxScale()
IllegalStateException
- 当前对象已被释放public AggregationFunctionType getAggregationFun()
public void setAggregationFun(AggregationFunctionType type)
type
- 热力图聚合字段应用的聚合函数。聚合函数支持对聚合字段进行求和、求最值、平均值等。public void setColorset(Colors colors)
colors
- 用于显示当前热力图的颜色集合。public Colors getColorset()
public void setGradientColorType(ColorType type)
type
- 热力图的颜色渐变模式,包含两种模式:HSB和RGB。public ColorType getGradientColorType()
Copyright © 2021–2024 SuperMap. All rights reserved.