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 |
范围的边界值整数化要整数化的位数
|
只有当RoundRanges=true时有效 例:原:420-560 and 560-930 RoundBy:100 变为400-600 and 600-900 |
SpreadBy |
miSpreadByColor = 1 miSpreadByNone= 0 miSpreadBySize = 2 |
指定范围专题图起始值和终止值的计算方式 |
如果你为范围专题图的每个范围都指定了样式(比如说颜色),则必须将 SpreadBy指定为miSpreadByNone |
InflectRanges |
Boolean |
是否允许专题图有范围转折点。 在一个范围专题图中范围转折点允许范围专题图将数据分两个部分,当InflectRanges=true时,范围专题中的颜色将会从起始点变化到拐点,在由拐点转化到终止点。默认点为False |
|
FlectionRange |
Double |
传入那个范围将作为范围拐点,默认设为第二个范围作为拐点。 |
当InflectRanges=true时有效 |
nflectionColor |
OLE_COLOR |
范围拐点的颜色 默认的设置为miColorWhite |
当InflectRanges=true时有效 |
RangeCategories |
|
返回RangeCategories集合对象 |
详见RangeCategories集合介绍 |
2.柱状专题图:
属性名称 |
属性类型 |
属性含义 |
备注 |
BarFramed |
Boolean |
决定bar是否画背景 |
|
BarFrameStyle |
CMapXStyle |
决定bar背景的样式 |
|
BarStacked |
Boolean |
决定柱状图的Bar是左右排列还是上下排列。False为左右排列。默认为False。 |
|
BarGraduatedStack |
Boolean |
柱状图在上下排列时大小是否随着总数的大小而改变。即是否等级化。默认为ture |
只有当BarStacked=true时有效。 |
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 方法 |
|
Min |
Double |
这个范围的最小值。初始值在专题图创建时建立,并依赖于ThemeProperties.DistMethod 方法 |
2.如果DistMethod被设置成miCustomRanges,你将自己设置最小值 |
NumItems |
int |
在这个范围之间的专题图元的个数 |
|
Style |
CMapXStyle |
每个范围的样式 |
|
IndividualValueCategories集合对象
属性名称 |
属性类型 |
属性含义 |
备注 |
AllOthersCategory |
|
|
|
Count |
|
IndividualValueCategories集合中IndividualValueCategories对象个数 |
|
item |
|
返回IndividualValueCategories对象 |
|
IndividualValueCategory对象
属性名称 |
属性类型 |
属性含义 |
备注 |
Value |
Double |
设置独立值的值 |
仅当Theme.ComputeTheme为Fasle时可设置 |
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