Class: GraphThemeLayer

GraphThemeLayer

统计专题图图层。

L.supermap.GraphThemeLayer(name, chartsType, options)

leaflet/overlay/GraphThemeLayer.js, line 18

统计专题图通过为每个要素绘制统计图表来反映其对应的专题值的大小。它可同时表示多个字段属性信息,在区域本身与各区域之间形成横向和纵向的对比。
统计专题图多用于具有相关数量特征的地图上,比如表示不同地区多年的粮食产量、GDP、人口等,不同时段客运量、地铁流量等。 目前提供的统计图类型有:柱状图(Bar),折线图(Line),饼图(Pie),三维柱状图(Bar3D),点状图(Point),环状图(Ring)。

Name Type Description
name string

专题图表名称

chartsType string

图表类型。目前可用:"Bar", "Bar3D", "Line","Point","Pie","Ring"。

options Object

待设置得参数。如:
isOverLay - {boolean} 是否进行压盖处理,如果设为 true,图表绘制过程中将隐藏对已在图层中绘制的图表产生压盖的图表,默认值:true。
chartsType :图表类型。目前可用:"Bar", "Line", "Pie"。
chartsSetting:各类型图表的 chartsSetting 对象可设属性请参考具体图表模型类的注释中对 chartsSetting 对象可设属性的描述。

  • chartsSetting 对象通常都具有以下 5 个基础可设属性
  • width - {number}专题要素(图表)宽度,必设参数。
  • height - {number}专题要素(图表)高度,必设参数。
  • codomain - {Array} 值域,长度为 2 的一维数组,第一个元素表示值域下限,第二个元素表示值域上限,必设参数。
  • XOffset - {Number} 专题要素(图表)在 X 方向上的偏移值,单位像素。
  • YOffset - {Number} 专题要素(图表)在 Y 方向上的偏移值,单位像素。
  • dataViewBoxParameter - {Array{Number}} 数据视图框 dataViewBox 参数, 它是指图表框 chartBox (由图表位置、图表宽度、图表高度构成的图表范围框)在左、下,右,上四个方向上的内偏距值,长度为 4 的一维数组。
  • decimalNumber - {number}数据值数组 dataValues 元素值小数位数,数据的小数位处理参数,取值范围:[0, 16]。 如果不设置此参数,在取数据值时不对数据做小数位处理。

Extends

Methods

addFeatures(features)

leaflet/overlay/GraphThemeLayer.js, line 71

向专题图图层中添加数据, 支持的feature类型为:iServer返回的feature json对象 或L.supermap.themeFeature类型

Name Type Description
features L.features

待添加得要素

inherited addTFEvents()

leaflet/overlay/theme/ThemeLayer.js, line 365

将图层添加到地图上之前用户要求添加的事件监听添加到图层。

clear()

leaflet/overlay/GraphThemeLayer.js, line 342

清除图层。清除的内容包括数据(features) 、专题要素、缓存。

clearCache()

leaflet/overlay/GraphThemeLayer.js, line 302

清除缓存数据。

createThematicFeature(feature)

leaflet/overlay/GraphThemeLayer.js, line 146

创建专题要素(图表)

Name Type Description
feature L.features

待创建得要素

inherited destroyFeatures(features)

leaflet/overlay/theme/ThemeLayer.js, line 122

销毁某个要素

Name Type Description
features SuperMap.Feature.Vector

将被销毁的要素

drawCharts()

leaflet/overlay/GraphThemeLayer.js, line 168

绘制图表。包含压盖处理。

inherited getEvents(){Object}

leaflet/overlay/theme/ThemeLayer.js, line 37

获取图层事件

Returns:
Type Description
Object 返回图层支持的事件

inherited getFeatureBy(property, value)

leaflet/overlay/theme/ThemeLayer.js, line 221

在专题图的要素数组 features 里面遍历每一个 feature,当 feature[property] === value 时,返回此 feature(并且只返回第一个)。

Name Type Description
property string

要素得某个属性名

value string

对应属性名得值

inherited getFeatureById(featureId)

leaflet/overlay/theme/ThemeLayer.js, line 240

通过给定一个 id,返回对应的矢量要素,如果不存在则返回 null

Name Type Description
featureId number

要素id

inherited getFeatures(){Array}

leaflet/overlay/theme/ThemeLayer.js, line 206

查看当前图层中的有效数据。

Returns:
Type Description
Array 返回图层中的有效数据。

inherited getFeaturesByAttribute(attrName, attrValue){Array}

leaflet/overlay/theme/ThemeLayer.js, line 249

通过给定一个属性的 key 值和 value 值,返回所有匹配的要素数组。

Name Type Description
attrName string

key 值

attrValue string

value 值

Returns:
Type Description
Array 返回所有匹配的要素数组。

inherited getLocalXY(coordinate)

leaflet/overlay/theme/ThemeLayer.js, line 379

地理坐标转为像素坐标

Name Type Description
coordinate array

-

getShapesByFeatureID(featureID)

leaflet/overlay/GraphThemeLayer.js, line 194

通过 FeatureID 获取 feature 关联的所有图形。如果不传入此参数,函数将返回所有图形。

Name Type Description
featureID number

要素ID

getWeightFieldValue(feature, fields, defaultValue)

leaflet/overlay/GraphThemeLayer.js, line 356

获取权重字段的值。

Name Type Description
feature SuperMap.Feature.Vector

矢量要素。

fields Array.<string>

字段名数组。

defaultValue number

当通过 weightField 获取不到权重值时,使用 defaultValue 作为权重值。

isChartInMap(mapPxBounds, chartPxBounds)

leaflet/overlay/GraphThemeLayer.js, line 279

判断图表是否在地图里。

Name Type Description
mapPxBounds SuperMap.Bounds

地图像素范围。

chartPxBounds Array.<Object>

图表范围的四边形节点数组。
例如:[{"x":1,"y":1},{"x":3,"y":1},{"x":6,"y":4},{"x":2,"y":10},{"x":1,"y":1}]。

isPointInPoly(pt, poly)

leaflet/overlay/GraphThemeLayer.js, line 263

判断一个点是否在多边形里面。(射线法)

Name Type Description
pt Object

需要判定的点对象,该对象含有属性x(横坐标),属性y(纵坐标)。

poly Array.<Object>

多边形节点数组。
例如一个四边形:[{"x":1,"y":1},{"x":3,"y":1},{"x":6,"y":4},{"x":2,"y":10},{"x":1,"y":1}]

isQuadrilateralOverLap(quadrilateral)

leaflet/overlay/GraphThemeLayer.js, line 216

判断两个四边形是否有压盖。

Name Type Description
quadrilateral Array.<Object>

四边形节点数组。

Example
[{"x":1,"y":1},{"x":3,"y":1},{"x":6,"y":4},{"x":2,"y":10},{"x":1,"y":1}]。
quadrilateral2 - {Array}  第二个四边形节点数组。
    

    


        
            

inherited off(event, callback, context)

leaflet/overlay/theme/ThemeLayer.js, line 348

移除专题要素事件监听。

Name Type Description
event Event

监听事件

callback function

回调函数

context string

信息

inherited on(event, callback, context)

leaflet/overlay/theme/ThemeLayer.js, line 332

添加专题要素事件监听。添加专题要素事件监听。

Name Type Description
event Event

监听事件

callback function

回调函数

context string

信息

inherited onAdd(map)

leaflet/overlay/LabelThemeLayer.js, line 81

添加专题图

Name Type Description
map L.map

要添加的地图

inherited onRemove(map)

leaflet/overlay/theme/ThemeLayer.js, line 55

删除某个地图

Name Type Description
map L.map

要删除的地图

redraw()

leaflet/overlay/GraphThemeLayer.js, line 332

重绘该图层,成功则返回true,否则返回false。

redrawThematicFeatures(bounds)

leaflet/overlay/GraphThemeLayer.js, line 103

重绘所有专题要素 此方法包含绘制专题要素的所有步骤,包含用户数据到专题要素的转换,压盖处理,缓存等步骤。地图漫游时调用此方法进行图层刷新。

Name Type Description
bounds L.bounds

重绘得范围

removeAllFeatures()

leaflet/overlay/GraphThemeLayer.js, line 322

清除当前图层所有的矢量要素。

removeFeatures(features)

leaflet/overlay/GraphThemeLayer.js, line 311

从专题图中删除 feature。这个函数删除所有传递进来的矢量要素(数据)。

Name Type Description
features L.features

待删除得要输

setChartsType(chartsType)

leaflet/overlay/GraphThemeLayer.js, line 61

设置图表类型,此函数可动态改变图表类型。在调用此函数前请通过 chartsSetting 为新类型的图表做相关配置。图表类型,目前支持:"Bar", "Bar3D", "Line","Point","Pie","Ring"。

Name Type Description
chartsType string

图表类型。目前可用:"Bar", "Bar3D", "Line","Point","Pie","Ring"。

inherited setOpacity(opacity)

leaflet/overlay/theme/ThemeLayer.js, line 298

设置图层的不透明度,取值[0-1]之间。

Name Type Description
opacity number

不透明度

inherited update(bounds)

leaflet/overlay/theme/ThemeLayer.js, line 269

更新图层

Name Type Description
bounds L.bounds

图层范围

Documentation generated by JSDoc 3.5.5 on Tue Nov 28 2017 00:02:11 GMT+0800 (中国标准时间)