根据给定的矢量数据集、分段字段表达式、分段模式、相应的分段参数、颜色渐变填充模式和外部连接表项生成默认的分段专题图。
命名空间:
SuperMap.Mapping程序集: SuperMap.Mapping (in SuperMap.Mapping)
版本: dll
语法
C# |
---|
public static ThemeRange MakeDefault( DatasetVector dataset, string rangeExpression, RangeMode rangeMode, double rangeParameter, ColorGradientType colorGradientType, JoinItems joinItems ) |
参数
- dataset
- Type: SuperMap.Data..::.DatasetVector
矢量数据集。
- rangeExpression
- Type: System..::.String
分段字段表达式。
- rangeMode
- Type: SuperMap.Mapping..::.RangeMode
分段模式。包括等距离分段法,平方根分段法,标准差分段法,对数分段法,等计数分段法,以及自定义距离法
- rangeParameter
- Type: System..::.Double
分段参数。当分段模式为等距离分段法,平方根分段,对数分段法,等计数分段法其中一种模式时,该参数为分段个数;
当分段模式为标准差分段法的时候,该参数不起作用;
当分段模式为自定义距离时,该参数表示自定义距离。
- colorGradientType
- Type: SuperMap.Data..::.ColorGradientType
颜色渐变模式。
- joinItems
- Type: SuperMap.Data..::.JoinItems
外部表连接项。如果要将制作的专题图添加到地图中,作为地图中的图层,需要对该专题图图层的 Layer.DisplayFilter 属性进行设置,该属性的值为 QueryParameter 对象,这里要通过将 QueryParameter.JoinItems 属性值指定为该方法的 joinItems 参数值,将该专题图的外部表连接项指定给该专题图图层的 Layer 对象,这样所做的专题图在地图中显示才正确。
返回值
根据参数构造得到一个新的ThemeRange的对象实例。备注
注意:通过连接外部表的方式制作专题图时,对于UDB数据源,连接类型不支持内连接,即JoinType类不支持INNERJOIN。
示例
以下代码示范了如何根据给定的矢量数据集、分段字段表达式、分段模式、相应的分段参数、颜色渐变填充模式和外部连接表项生成默认的分段专题图。
CopyC#
public void MakeThemeRangeMap3(DatasetVector targetDataset, DatasetVector relatedTableDataset ) { //设置外部连接表 //假设Capital和World数据集中都有Country字段,将利用这个字段建立两个表的连接 JoinItems joinItems = new JoinItems(); JoinItem joinItem = new JoinItem(); joinItem.ForeignTable = relatedTableDataset.TableName; joinItem.JoinFilter = String.Format("{0}.Country={1}.Country", targetDataset.TableName, relatedTableDataset.TableName); joinItems.Add(joinItem); //制作分段专题图 ThemeRange themeRangeMap = ThemeRange.MakeDefault(targetDataset, relatedTableDataset.TableName + ".Area", RangeMode.EqualInterval, 15, ColorGradientType.Rainbow, joinItems); mapControl1.Map.Workspace = workspace; mapControl1.Map.Layers.Add(targetDataset, themeRangeMap, true); mapControl1.Map.Refresh(); }