delphi mapx 范围专题

var
 ds: CMapxDataset;
 lyr: CMapXLayer;
 thm: CMapXTheme;
 AllOthers: CMapXRangeCategory;
 styl: CMapXStyle;
begin
 lyr := Map1.Layers.Add('states.tab', 1);
 ds := Map1.Datasets.Add(miDataSetLayer,
  Map1.Layers.Item('STATES'), EmptyParam, EmptyParam,
  EmptyParam, EmptyParam, EmptyParam, EmptyParam);
  ds.Themes.Add( miThemeRanged, 'POP_1990', 'My Theme',
   false);
  thm := ds.Themes.Item('My Theme');

 thm.DataMin := 10000000;
 thm.DataMax := 30000000;

 thm.Visible := true;

 styl := Map1.DefaultStyle;
 styl.PickRegion;

 AllOthers := thm.ThemeProperties.RangeCategories.
  AllOthersCategory;
 AllOthers.Style := styl;
end;

 

自己总结的MapX 专题图的详细解释,发给大家做参考

1.范围值专题图:

 

属性名称

属性类型

属性含义

备注

AllowEmptyRanges

Boolean

决定是否允许范围个数为空,默认为False,不允许为空

如果DistMethod属性设为

miCustomRanges则忽略这个属性的设置而允许为范围个数空。

ApplyAttribute

miApplyAttributeAll = 0

miApplyAttributeColor = 1

miApplyAttributeSize = 2

应用于范围和独立值专题图将颜色和大小应用于专题图。默认的是

miApplyAttributeAll

miApplyAttributeAll(都应用)

miApplyAttributeColor(只应用颜色)

miApplyAttributeSize (只应用大小)

ColorMethod

miColorMethodRGB = 0

miColorMethodHSV = 1

指定颜色渐变的方式是以RGB还是以HSV颜色模型,默认的是:

miColorMethodRGB

只有当属性

SpreadBy=miSpreadByColor时有效

NumRanges

Int

指定范围专题图范围划分的个数,默认的的个数是5

 

DistMethod

miCustomRanges= 0

miEqualCountPerRange= 1

miEqualRangeSize= 2

miNaturalBreak = 3

miStandardDeviation = 4

指定划分范围的数学方法,其中miCustomRanges划分方法,将要用RangeCategories集合属性定义自己的范围。MapX不会自己计算范围

miCustomRanges(自定范围)

miEqualCountPerRange(等个数划分)

miEqualRangeSize(等数量划分)

miNaturalBreak

miStandardDeviation

RoundRanges

Boolean

决定是否将范围的边界值整数化

默认值为true

 

RoundBy

double

范围的边界值整数化要整数化的位数

 

只有当RoundRangestrue时有效

例:原:420-560 and 560-930

RoundBy100

变为400-600 and 600-900

SpreadBy

miSpreadByColor = 1

miSpreadByNone= 0

miSpreadBySize = 2

指定范围专题图起始值和终止值的计算方式

如果你为范围专题图的每个范围都指定了样式(比如说颜色),则必须将

SpreadBy指定为miSpreadByNone

InflectRanges

Boolean

是否允许专题图有范围转折点。

在一个范围专题图中范围转折点允许范围专题图将数据分两个部分,当InflectRangestrue时,范围专题中的颜色将会从起始点变化到拐点,在由拐点转化到终止点。默认点为False

 

FlectionRange

Double

传入那个范围将作为范围拐点,默认设为第二个范围作为拐点。

InflectRangestrue时有效

nflectionColor

OLE_COLOR

范围拐点的颜色

默认的设置为miColorWhite

InflectRangestrue时有效

RangeCategories

 

返回RangeCategories集合对象

详见RangeCategories集合介绍

 

2.柱状专题图:

 

属性名称

属性类型

属性含义

备注

BarFramed

Boolean

决定bar是否画背景

 

BarFrameStyle

CMapXStyle

决定bar背景的样式

 

BarStacked

Boolean

决定柱状图的Bar是左右排列还是上下排列。False为左右排列。默认为False

 

BarGraduatedStack

Boolean

柱状图在上下排列时大小是否随着总数的大小而改变。即是否等级化。默认为ture

只有当BarStackedtrue时有效。

BarIndependentScale

Boolean

柱状图独立比例,若属性为ture则每个Bar的高度与其他字段无关,适于作一些多值,每个值之间毫不相关的专题图。默认为False

 

Independent

Boolean

BarIndependentScale意义相同,为了向前兼容所以保留

 

BarWidth

Double

每个Bar的宽度,默认的是0.25英寸

单位在Map.Unit中改

Width

Double

每个Bar的宽度,默认的是0.25英寸

单位在Map.Unit中改

(两个一样的属性?)

BorderStyle

CMapXStyle

柱状专题图的边界样式

 

DataValue

Double

Size一起使用当专题图元以等级符号显示时,确定柱状图的大小。默认的是所有图元的最大值。

 

Size`

Double

Size一起使用当专题图元以等级符号显示时,确定柱状图的大小。默认的是0.25英寸。

可以用Map.PaperUnit修改长度的单位。

GraduateSizeBy

miGraduateBySquareRoot = 0

miGraduateByConstant = 1

miGraduateByLogarithm = 2

控制数值和符号大小之间的关系

miGraduateBySquareRoot(平方根)

miGraduateByConstant(常量)

miGraduateByLogarithm(对数)

MultivarCategories

 

 

 

 

3.等级符号专题图

 

属性名称

属性类型

属性含义

备注

GraduateSizeBy

miGraduateBySquareRoot = 0

miGraduateByConstant = 1

miGraduateByLogarithm = 2

控制数值和符号大小之间的关系

miGraduateBySquareRoot(平方根)

miGraduateByConstant(常量)

miGraduateByLogarithm(对数)

ShowNegativeValues

Boolean

控制是否显示反方向的等级符号

 

NegativeSymbolStyle

CMapXStyle

控制反方向的等级符号的样式

 

PositiveSymbolStyle

CMapXStyle

控制正方向的等级符号的样式

 

SymbolStyle

CMapXStyle

PositiveSymbolStyle,仅做向前兼容用

 

DataValue

Double

Size一起使用当专题图元以等级符号显示时,确定柱状图的大小。默认的是所有图元的最大值。

 

 

4.饼状专题图

 

属性名称

属性类型

属性含义

备注

PieGraduated

Boolean

饼状专题图的图元是否等级化

默认值为True

 

Graduated.

Boolean

PieGraduated,仅做向前兼容用

 

PieClockwise

Boolean

开始绘制的方向

默认值为True,为顺时针方向

 

PieHalfPies

Boolean

控制显示是否为半饼图

默认值为True

 

PieStartAngle

Integer

控制第一块饼的起始方向

单位为度数。

 

DataValue

Double

Size一起使用当专题图元以等级符号显示时,确定柱状图的大小。默认的是所有图元的最大值。

 

GraduateSizeBy

miGraduateBySquareRoot = 0

miGraduateByConstant = 1

miGraduateByLogarithm = 2

控制数值和符号大小之间的关系

miGraduateBySquareRoot(平方根)

miGraduateByConstant(常量)

miGraduateByLogarithm(对数)

Size`

Double

Size一起使用当专题图元以等级符号显示时,确定柱状图的大小。默认的是0.25英寸。

可以用Map.PaperUnit修改长度的单位。

BorderStyle

CMapXStyle

柱状专题图的边界样式

 

MultivarCategories

 

 

 

 

5.点密度专题图

 

属性名称

属性类型

属性含义

备注

DotColor

OLE_COLOR

点的颜色值

 

DotSize

miDotSizeSmall= 0

miDotSizeLarge= 1

点的大小

 

ValuePerDot

double

一个点所代表的数值

 

 

6.独立值专题图

 

属性名称

属性类型

属性含义

备注

IndividualValueCategories

 

返回IndividualValueCategories集合对象

详见IndividualValueCategories集合介绍

ApplyAttribute

miApplyAttributeAll = 0

miApplyAttributeColor = 1

miApplyAttributeSize = 2

应用于范围和独立值专题图将颜色和大小应用于专题图。默认的是

miApplyAttributeAll

miApplyAttributeAll(都应用)

miApplyAttributeColor(只应用颜色)

miApplyAttributeSize (只应用大小)

 

附录1

 

RangeCategories集合对象:

 

属性名称

属性类型

属性含义

备注

AllOthersCategory

 

 

 

Count

 

RangeCategories集合中RangeCategory对象个数

 

item

 

返回RangeCategory对象

 

 

RangeCategorie 对象:

 

属性名称

属性类型

属性含义

备注

Max

Double

这个范围的最大值。初始值在专题图创建时建立,并依赖于ThemeProperties.DistMethod

方法

  • 如果DistMethod被设置成miEqualCountPerRange, miEqualRangeSize miNaturalBreak, miStandardDeviation,当重新计算时就会更新。
  • 如果DistMethod被设置成miCustomRanges,你将自己设置最大值

Min

Double

这个范围的最小值。初始值在专题图创建时建立,并依赖于ThemeProperties.DistMethod

方法

  • 如果DistMethod被设置成miEqualCountPerRange, miEqualRangeSize miNaturalBreak, miStandardDeviation,当重新计算时就会更新。

2.如果DistMethod被设置成miCustomRanges,你将自己设置最小值

NumItems

int

在这个范围之间的专题图元的个数

 

Style

CMapXStyle

每个范围的样式

 

 

IndividualValueCategories集合对象

 

属性名称

属性类型

属性含义

备注

AllOthersCategory

 

 

 

Count

 

IndividualValueCategories集合中IndividualValueCategories对象个数

 

item

 

返回IndividualValueCategories对象

 

 

IndividualValueCategory对象

 

属性名称

属性类型

属性含义

备注

Value

Double

设置独立值的值

仅当Theme.ComputeThemeFasle时可设置

NumItems

int

在这个范围之间的专题图元的个数

 

Style

CMapXStyle

每个独立值的样式

 

 

附录2

 

几个对象共有的属性:

属性名称

属性类型

属性含义

在哪几个专题图中共有

ApplyAttribute

miApplyAttributeAll = 0

miApplyAttributeColor = 1

miApplyAttributeSize = 2

决定是否允许范围个数为空,默认为False,不允许为空

范围专题图,独立值专题图

DataValue

Double

Size一起使用当专题图元以等级符号显示时,确定柱状图的大小。默认的是所有图元的最大值。

等级符号专题图,饼状专题图,柱状专题图。

GraduateSizeBy

miGraduateBySquareRoot = 0

miGraduateByConstant = 1

miGraduateByLogarithm = 2

控制数值和符号大小之间的关系

等级符号专题图,饼状专题图,柱状专题图

Size`

Double

Size一起使用当专题图元以等级符号显示时,确定柱状图的大小。默认的是0.25英寸。

饼状专题图,柱状专题图。

BorderStyle

CMapXStyle

柱状和饼状专题图的边界样式

饼状专题图,柱状专题图。

MultivarCategories

 

 

饼状专题图,柱状专题图。

 

作者:乔乔

时间:2003-6-2

你可能感兴趣的:(Delphi)