FRAMES | NO FRAMES
Renderer Objects

Overview

This document discusses the JSON renderer objects as returned by the REST API.

The following renderers are discussed here:

Simple Renderer

A renderer that uses one symbol only. The type property for simple renderers is simple.

JSON Syntax

{
  "type" : "simple",
  "symbol" :  <symbol>,
  "label" : "<label>",
  "description" : "<description>"
}

JSON Example

{  
   "type": "simple",
   "symbol": 
   {
    "type": "esriSMS",
    "style": "esriSMSCircle",
    "color": [255,0,0,255],
    "size": 5,
    "angle": 0,
    "xoffset": 0,
    "yoffset": 0,
    "outline": 
	{
     "color": [0,0,0,255],
     "width": 1
    }
   },
   "label": "",
   "description": ""
}

Unique Value Renderer

A unique value renderer symbolizes groups of features that have matching field values. The type property for unique value renderers is uniqueValue.

JSON Syntax

{
  "type" : "uniqueValue",
  "field1" : "<field1>",
  "field2" : "<field2>",
  "field3" : "<field3>",
  "fieldDelimiter" : "<fieldDelimiter>",
  "defaultSymbol" :  <symbol>,
  "defaultLabel" : "<defaultLabel>",
  "uniqueValueInfos" : [
    {
      "value" : "<value1>",
      "label" : "<label1>",
      "description" : "<description1>",
      "symbol" :  <symbol1>
    },
    {
      "value" : "<value2>",
      "label" : "<label2>",
      "description" : "<description2>",
      "symbol" :  <symbol2>
    }
  ]
}

JSON Example

{
      "type" : "uniqueValue", 
      "field1" : "SubtypeCD", 
      "field2" : null, 
      "field3" : null, 
      "fieldDelimiter" : ", ", 
      "defaultSymbol" : 
      {
        "type" : "esriSLS", 
        "style" : "esriSLSSolid", 
        
        "color" : [130,130,130,255], 
        "width" : 1
      }, 
      "defaultLabel" : "\u003cOther values\u003e", 
      "uniqueValueInfos" : [
        {
          "value" : "1", 
          "label" : "Duct Bank", 
          "description" : "Duct Bank description", 
          "symbol" : 
          {
            "type" : "esriSLS", 
            "style" : "esriSLSDash", 
            
            "color" : [76,0,163,255], 
            "width" : 1
          }
        }, 
        {
          "value" : "2", 
          "label" : "Trench", 
          "description" : "Trench description", 
          "symbol" : 
          {
            "type" : "esriSLS", 
            "style" : "esriSLSDot", 
            
            "color" : [115,76,0,255], 
            "width" : 1
          }
        }
      ]
}

Class Breaks Renderer

A class breaks renderer symbolizes each feature based on the value of some numeric field. The type property for class breaks renderers is classBreaks.

New in 10.1

JSON Syntax

{
  "type" : "classBreaks",
  "field" : "<field>",
  "classificationMethod" : "<classification method>", 
  "normalizationType" : "<esriNormalizeByField | esriNormalizeByLog | esriNormalizeByPercentOfTotal>",
  "normalizationField" : "<normalization field>", //when normalizationType is esriNormalizeByField
  "normalizationTotal" : <total value>, //when normalizationType is esriNormalizeByPercentOfTotal
  "defaultSymbol": <symbol>,
  "defaultLabel": "<label>",
  "backgroundFillSymbol": <simple fill symbol>, //supported only for polygon features
  "minValue" : <minValue>,
  "classBreakInfos" : [
    {
      "classMinValue" : <classMinValue1>, //optional
      "classMaxValue" : <classMaxValue1>,
      "label" : "<label1>",
      "description" : "<description1>",
      "symbol" :  <symbol1>
    },
    {
      "classMinValue" : <classMinValue2>,
      "classMaxValue" : <classMaxValue2>,
      "label" : "<label2>",
      "description" : "<description2>",
      "symbol" :  <symbol2>
    }
  ]
}

JSON Example

This example contains 3 classes, with a discontinuous break between classes 2 and 3. Any feature whose value is in 5001.000000 - 8000.000000 range is symbolized using the defaultSymbol.
  1. Class 1 is used to symbolize features whose values are in the range 10.000000 - 1000.000000
  2. Class 2 is used to symbolize features whose values are in the range 1000.000001 - 5000.000000
  3. Class 3 is used to symbolize features whose values are in the range 8000.000001 - 10000.000000
{ 	
      "type" : "classBreaks", 
      "field" : "Shape.area", 
      "classificationMethod" : "esriClassifyManual", 
      "defaultSymbol": {
        "type": "esriSFS",
        "style": "esriSFSDiagonalCross",
        "color": [255,0,0,255],
        "outline": {
          "type": "esriSLS",
          "style": "esriSLSSolid",
          "color": [110,110,110,255],
          "width": 0.5
        }
      }
      "minValue" : 10.0, 
      "classBreakInfos" : [
        {
          "classMaxValue" : 1000, 
          "label" : "10.0 - 1000.000000", 
          "description" : "10 to 1000", 
          "symbol" : 
          {
            "type" : "esriSFS", 
            "style" : "esriSFSSolid", 
            
            "color" : [236,252,204,255], 
            "outline" : 
            {
              "type" : "esriSLS", 
              "style" : "esriSLSSolid", 
              
              "color" : [110,110,110,255], 
              "width" : 0.4
            }
          }
        }, 
        {
          "classMaxValue" : 5000, 
          "label" : "1000.000001 - 5000.000000", 
          "description" : "1000 to 5000", 
          "symbol" : 
          {
            "type" : "esriSFS", 
            "style" : "esriSFSSolid", 
            
            "color" : [218,240,158,255], 
            "outline" : 
            {
              "type" : "esriSLS", 
              "style" : "esriSLSSolid", 
              
              "color" : [110,110,110,255], 
              "width" : 0.4
            }
          }
        }, 
        {
          "classMinValue" : 8000,
          "classMaxValue" : 10000, 
          "label" : "8000.000001 - 10000.000000", 
          "description" : "1000 to 5000", 
          "symbol" : 
          {
            "type" : "esriSFS", 
            "style" : "esriSFSSolid", 
            
            "color" : [255,255,0,255], 
            "outline" : 
            {
              "type" : "esriSLS", 
              "style" : "esriSLSSolid", 
              
              "color" : [110,110,110,255], 
              "width" : 0.4
            }
          }
        }
      ]
}