Classification

Numeric data items (see value types Numerical) can be numerical or categorical.

  1. Numerical data need to be classified before it can presented in a map view. Classify means grouping the values of the original distribution in a limited set of classes. A class unit and a class break attribute are used for this purpose, see example 1.
  2. Categorical data does not have to be classified before it can be presented in a map view, as it is already available in a limited set of classes. Still it can be useful to classify also this type of data, e.g. to reclassify groups to Low, Middle and High, see example 2.

For each class of a class unit, visualisation styles (like colors) and labels can be configured. Labels describe the classes in the map view legend or in the table. The combination of class breaks (if necessary), the set of visualisation styles and labels is called a Classification Scheme. Classification schemes in the GeoDMS are usually configured in a Classifications Container.

classification schemes

The following examples show the configuration of Classification Schemes for Numerical (1.1 and 1.2) and Categorical (2) data:

example 1.1: Numerical data, explicitly defined colors

unit<float32> meter := baseunit('m', float32)
,   cdf = "Classifications/m_4K/ClassBreaks";

unit<uint8> m_4K: NrofRows = 4
{
  attribute<meter> ClassBreaks: DialogType = "Classification",
      [0, 200, 400, 800];
  attribute<uint32> SymbolColor: DialogType = "SymbolColor",
      [rgb(128,255,0), rgb(0,128,0), rgb(0,64,128), rgb(255,0,0)];
  attribute<string> Labels: DialogType = "LabelText",
      ['0 - 200 meter','200 - 400 meter','400 - 800 meter','>= 800 meter'];
}

example 1.2: Numerical data, multiple color ramp

> unit Ratio_12K: nrofrows = 12 { attribute ClassBreaks: DialogType = "Classification", [ 0,.5,.55,.575,.6,.625,.65,.675,.7,.725,.75,.8]; attribute<int32> b := max_elem(int32(0),min_elem(int32(255),( ramp(-120,int32(250), .)))); attribute<int32> r := max_elem(int32(0),min_elem(int32(255),( ramp(int32(250),-120, .)))); attribute<int32> g := max_elem(int32(0),min_elem(int32(255),( (int32(250) - b - r) *int32(2)))); attribute<uint32> BrushColor := rgb(r,g,b) ,DialogType = "BrushColor"; ) </pre> *example 2: Categorical data*
unit<uint8> LS_pres: nrofrows = 3
{
   attribute<uint32> BrushColor: DialogType = "BrushColor",
      [rgb(255,255,198),rgb(0,0,200),rgb(0,215,0)];
   attribute<string> Label: DialogType = "LabelText",
      ['Low','Medium','High'];
}