zoukankan      html  css  js  c++  java
  • Dotspatial 唯一值专题图

    /// <summary>
    /// 分类专题图,如按林班号分类
    /// </summary>
    /// <param name="mapControl">Map</param>
    /// <param name="catalogFields">分类字段</param>
    public static void ThemeUniqueValues(Map mapControl, string catalogFields)
    {
    //check the number of layers from map control
    if (mapControl.Layers.Count > 0)
    {
    //Delacre a MapPolygonLayer
    MapPolygonLayer stateLayer = default(MapPolygonLayer);
    //Type cast the FirstLayer of MapControl to MapPolygonLayer
    stateLayer = (MapPolygonLayer) mapControl.Layers[0];
    //Check the MapPolygonLayer ( Make sure that it has a polygon layer)
    if (stateLayer == null)
    {
    MessageBox.Show("The layer is not a polygon layer.");
    }
    else
    {
    //Create a new PolygonScheme
    PolygonScheme scheme = new PolygonScheme();
    //Set the ClassificationType for the PolygonScheme via EditotSettings
    scheme.EditorSettings.ClassificationType = ClassificationType.UniqueValues;
    //Set the UniqueValue field name
    //Here STATE_NAME would be the Unique value field
    scheme.EditorSettings.FieldName = catalogFields; //"林班号";
    //create categories on the scheme based on the attributes table and field name
    //In this case field name is STATE_NAME
    scheme.CreateCategories(stateLayer.DataSet.DataTable);
    //Set the scheme to stateLayer's symbology
    stateLayer.Symbology = scheme;
    }
    }
    else
    {
    MessageBox.Show("Please add a layer to the map.");
    }
    }

    调用方法:

    //唯一值专题图
    string catalogFields = "关键字";
    Lzq_Theme.ThemeUniqueValues(mapMain, catalogFields);

  • 相关阅读:
    内存分配问题
    C++ assert 的一点说明
    强大的stringstream
    C++中随机数
    C++ 中new
    C++ 中string 详解 转载自 博客园
    未命名名字空间
    使用ifstream和getline读取文件内容[c++]
    6.bootstrap练习笔记-缩略图和list-group
    3.bootstrap练习笔记-媒体内容
  • 原文地址:https://www.cnblogs.com/kogame/p/12268668.html
Copyright © 2011-2022 走看看