new SuperMap.Feature.Theme.Pie(data, layer, fields, setting, lonlat)
图表 Pie 配置对象 chartsSetting(
Name | Type | Description |
---|---|---|
data |
SuperMap.Feature.Vector |
用户数据,必设参数。 |
layer |
SuperMap.Layer.Graph |
此专题要素所在图层,必设参数。 |
fields |
Array.<string> |
data 中的参与此图表生成的字段名称,必设参数。 |
setting |
Object |
图表配置对象,必设参数。 |
lonlat |
SuperMap.LonLat |
专题要素地理位置。默认为 data 指代的地理要素 Bounds 中心。 |
Example
// sectorStyleByCodomain 的每个元素是个包含值域信息和与值域对应样式信息的对象,该对象(必须)有三个属性:
// start: 值域值下限(包含);
// end: 值域值上限(不包含);
// style: 数据可视化图形的 style,这个样式对象的可设属性: 。
// sectorStyleByCodomain 数组形如:
[
{
start:0,
end:250,
style:{
fillColor:"#00CD00"
}
},
{
start:250,
end:500,
style:{
fillColor:"#00EE00"
}
},
{
start:500,
end:750,
style:{
fillColor:"#00FF7F"
}
},
{
start:750,
end:1500,
style:{
fillColor:"#00FF00"
}
}
]
sectorHoverStyle - {Object} 饼图扇形 hover 状态时的样式,sectorHoverAble 为 true 时有效。
sectorHoverAble - {Object} 是否允许饼图扇形使用 hover 状态,默认允许。同时设置 sectorHoverAble 和 sectorClickAble 为 false,可以直接屏蔽饼图扇形对专题图层事件的响应。
sectorClickAble - {Object} 是否允许饼图扇形被点击,默认允许。同时设置 sectorHoverAble 和 sectorClickAble 为 false,可以直接屏蔽饼图扇形对专题图层事件的响应。
Extends
Members
-
chartBoundsSuperMap.Bounds
-
图表 Bounds 随着 lonlat、XOffset、YOffset 更新,注意 chartBounds 是图表像素范围,不是地理范围。
-
chartBoxArray.<number>
-
专题要素(图表)区域,即图表框,长度为 4 的一维数组,数组的 4 个元素依次表示图表框左端 x 坐标值、 下端 y坐标值、 右端 x坐标值、 上端 y 坐标值;[left, bottom, right, top]。
-
dataValuesArray.<number>
-
图表展示的数据值,通过 fields 从数据feature属性中获得。
-
dataViewBoxArray.<number>
-
数据视图框,长度为 4 的一维数组,[left, bottom, right, top]。 dataViewBox 是统计专题要素最核心的内容,它负责解释数据在一个像素区域里的数据可视化含义, 这种含义用可视化图形表达出来,这些表示数据的图形和一些辅助图形组合在一起构成统计专题图表。
-
DVBCenterPointArray.<number>
-
数据视图框中心点,长度为 2 的一维数组,第一个元素表示 x 坐标,第二个元素表示 y 坐标。
-
DVBCodomainArray.<number>
-
数据视图框的内允许展示的数据值域,长度为 2 的一维数组,第一个元素表示值域下限,第二个元素表示值域上限。 dataViewBox 中允许的数据范围,对数据溢出值域范围情况的处理需要在 assembleShapes 中进行。
-
DVBHeightnumber
-
数据视图框高度。
-
DVBOrigonPointArray.<number>
-
数据视图框原点,数据视图框左上角点,长度为 2 的一维数组,第一个元素表示 x 坐标,第二个元素表示 y 坐标。
-
DVBParameterArray.<number>
-
数据视图框参数,长度为 4 的一维数组(数组元素值 >= 0),[leftOffset, bottomOffset, rightOffset, topOffset],chartBox 内偏距值。 此属性用于指定数据视图框 dataViewBox 的范围。
-
DVBUnitValuestring
-
单位值。在 assembleShapes() 中初始化其具体意义,例如:饼图的 DVBUnitValue 可以定义为"360/数据总和", 折线图的 DVBUnitValue 可以定义为 "DVBCodomain/DVBHeight"。
-
DVBWidthnumber
-
数据视图框宽度。
-
fieldsArray.<string>
-
数据{SuperMap.Feature.Vector}属性字段。
-
heightnumber
-
专题要素(图表)高度 ,必设属性。
-
origonPointArray.<number>
-
专题要素(图表)原点,图表左上角点像素坐标,是长度为 2 的一维数组,第一个元素表示 x 坐标,第二个元素表示 y 坐标。
-
origonPointOffsetArray.<number>
-
数据视图框原点相对于图表框的原点偏移量,长度为 2 的一维数组,第一个元素表示 x 偏移量,第二个元素表示 y 偏移量。
-
RelativeCoordinatebool
-
图形是否已经计算了相对坐标。
-
settingObject
-
图表配置对象,该对象控制着图表的可视化显示。
下面是此配置对象的 7 个基础可设属性:
Symbolizer properties:
width - {number}专题要素(图表)宽度,必设参数。
height - {number}专题要素(图表)高度,必设参数。
codomain - {Array} 值域,长度为 2 的一维数组,第一个元素表示值域下限,第二个元素表示值域上限,必设参数。
XOffset - {number} 专题要素(图表)在 X 方向上的偏移值,单位像素。
YOffset - {number} 专题要素(图表)在 Y 方向上的偏移值,单位像素。
dataViewBoxParameter - {Array} 数据视图框 dataViewBox 参数,它是指图表框 chartBox (由图表位置、图表宽度、图表高度构成的图表范围框)在左、下,右,上四个方向上的内偏距值。
decimalNumber - {number}数据值数组 dataValues 元素值小数位数,数据的小数位处理参数,取值范围:[0, 16]。 如果不设置此参数,在取数据值时不对数据做小数位处理。
除了以上 7 个基础属性,此对象的可设属性在不同子类中有较大差异,不同子类中对同一属性的解释也可能不同。 请在此类的子类中查看 setting 对象的可设属性和属性含义。 -
shapeFactorySuperMap.Feature.ShapeFactory
-
内置的图形工厂对象,调用其 createShape 方法创建图形。
-
shapeParametersObject
-
当前图形参数对象,
的子类对象。 -
widthnumber
-
专题要素(图表)宽度 ,必设属性。
-
XOffsetnumber
-
专题要素(图表)在 X 方向上的偏移值,单位像素。
-
YOffsetnumber
-
专题要素(图表)在 Y 方向上的偏移值,单位像素。
Methods
-
assembleShapes()
common/overlay/Pie.js, line 85 -
装配图形(扩展接口)。
-
destroy()
common/overlay/Pie.js, line 77 -
销毁此专题要素。调用 destroy 后此对象所以属性置为 null。
-
inherited getLocalXY(lonlat)
common/overlay/Graph.js, line 452 -
地理坐标转为像素坐标。
Name Type Description lonlat
SuperMap.Lonlat 带转换的地理坐标。
Returns:
屏幕像素坐标。 -
inherited initBaseParameter(){Boolean}
common/overlay/Graph.js, line 226 -
初始化专题要素(图表)基础参数。在调用此方法前,此类的图表模型相关属性都是不可用的 ,此方法在 assembleShapes 函数中调用。
调用此函数关系到 setting 对象的以下属性。
width - {number} 专题要素(图表)宽度,必设参数。
height - {number} 专题要素(图表)高度,必设参数。
codomain - {Array} 值域,长度为 2 的一维数组,第一个元素表示值域下限,第二个元素表示值域上限,必设参数。
XOffset - {number} 专题要素(图表)在 X 方向上的偏移值,单位像素。
YOffset - {number} 专题要素(图表)在 Y 方向上的偏移值,单位像素。
dataViewBoxParameter - {Array} 数据视图框 dataViewBox 参数,它是指图表框 chartBox。
(由图表位置、图表宽度、图表高度构成的图表范围框)在左、下,右,上四个方向上的内偏距值。
decimalNumber - {number} 数据值数组 dataValues 元素值小数位数,数据的小数位处理参数,取值范围:[0, 16]。如果不设置此参数,在取数据值时不对数据做小数位处理。Returns:
Type Description Boolean 初始化参数是否成功。 -
inherited resetLinearGradient()
common/overlay/Graph.js, line 356 -
resetLocation中调用 图表的相对坐标存在的时候,重新计算渐变的颜色。(目前用于二维柱状图渐变色 所以子类实现此方法)
-
inherited resetLocation(lonlat){Array.<number>}
common/overlay/Graph.js, line 327 -
根据地理位置 lonlat 重置专题要素(图表)位置。
Name Type Description lonlat
SuperMap.LonLat 专题要素新的像素中心位置。
Returns:
Type Description Array.<number> - 新专题要素像素参考位置。长度为 2 的数组,第一个元素表示 x 坐标,第二个元素表示 y 坐标。
-
inherited shapesConvertToRelativeCoordinate()
common/overlay/Graph.js, line 364 -
将(构成图表)图形的节点转为相对坐标表示,此函数必须且只能在 assembleShapes() 结束时调用。