Краткая информация
Класс GraduatedSymbolsRenderer использует метод отображения градуированными символами для визуализации количественных различий значений объектов с помощью диапазона размеров символов.
Обсуждение
Эти свойства действуют примерно так же, как и опции, использующиеся в приложении. Например, изменение числа классов автоматически перестроит граничные значения и их подписи. Если вы измените upperBound в ClassBreak, classificationMethod автоматически изменится на ManualInterval. Вам также необходимо будет вручную обновить свойства labels и/или descriptions соответственно.
Свойства
| Свойство | Описание | Тип данных | 
| backgroundSymbol (чтение и запись) | Символ, который представляет символ фона для объектов в слое. Применяется только к классам полигональных объектов. | Symbol | 
| breakCount (чтение и запись) | Целое число, представляющее количество классов, использующихся с текущим методом классификации. | Integer | 
| classBreaks (чтение и запись) | Список объектов ClassBreak, который обеспечивает доступ к отдельным объектам, таким как label и description, а так же к отдельным символам объектов. | List | 
| classificationField (чтение и запись) | Строка, представляющая имя поля набора данных, использующегося для метода классификации. | String | 
| classificationMethod (чтение и запись) | Строка, представляющая корректный метод классификации. Корректными значениями являются следующие: 
 | String | 
| colorRamp (чтение и запись) | Предоставляет доступ к объекту ColorRamp. | ColorRamp | 
| deviationInterval (чтение и запись) | Число с плавающей точкой двойной точности, представляющее корректный интервал среднеквадратического отклонения, доступный только если classificationMethod установлен на StandardDeviation. Допустимыми значениями являются 1.0, 0.5, 0.333 и 0.25. Те же опции доступны и в приложении. | Double | 
| intervalSize (чтение и запись) | Число с плавающей точкой двойной точности, представляющее размер интервала, classificationMethod установлен на DefinedInterval. Допустимыми значениями являются 1.0, 0.5, 0.333 и 0.25. Те же опции доступны и в приложении. | Double | 
| maximumSymbolSize (чтение и запись) | Число с плавающей точкой двойной точности, представляющее максимальный размер градуированного символа. | Double | 
| minimumSymbolSize (чтение и запись) | Число с плавающей точкой двойной точности, представляющее минимальный размер градуированного символа. | Double | 
| normalizationField (чтение и запись) | Строка, представляющая имя поля в слое, использующегося для нормирования. | String | 
| normalizationType (чтение и запись) | Специальная строка, представляющая корректное ключевое слово нормирования. Например, чтобы удалить нормирование, попробуйте gradSymbols.renderer.nomalizationType = "<None>". 
 | String | 
| symbolTemplate (только чтение) | Возвращает символ, который представляет шаблон символа для всех объектов в слое. Для установки шаблона используйте метод updateSymbolTemplate. | Symbol | 
| type (только чтение) | Возвращает строку, которая отображает тип метода отображения. | String | 
Обзор метода
| Метод | Описание | 
| updateSymbolTemplate (symbol_template) | updateSymbolTemplate обеспечивает механизм изменения шаблона символа отображения. | 
Методы
updateSymbolTemplate (symbol_template)
| Параметр | Описание | Тип данных | 
| symbol_template | Ссылка на символ. (Значение по умолчанию — None) | Object | 
Метод updateSymbolTemplate позволяет изменить символы для всех классов единовременно. Управление шаблонами символов в приложении организовано иначе, чем управление другими свойствами отображения, например backgroundSymbol, поэтому необходим метод установки шаблона символа для отображения.
Пример кода
В следующем скрипте сначала тестируется, поддерживают ли символы слоя свойство renderer. Затем подтверждается, что метод отображения установлен на GraduatedSymbolsRenderer. Далее устанавливается backgroundSymbol и symbolTemplate. Далее скрипт меняет classificationField и breakCount а так же задает минимальный и максимальный размеры символа. Наконец, ColorRamp меняется на цветовую шкалу с именем От черного к белому.
import arcpy, os, sys
relpath = os.path.dirname(sys.argv[0])
p = arcpy.mp.ArcGISProject(relpath + r"\\GraduatedSymbols.aprx")
m = p.listMaps("Layers")[0]
l = m.listLayers("Natural*")[0]
sym = l.symbology
if hasattr(sym, 'renderer'):
  if sym.renderer.type == "GraduatedSymbolsRenderer":
    #set background symbol
    sym.renderer.backgroundSymbol.applySymbolFromGallery("Extent Transparent Wide Gray")
    #set symbol template
    symTemp = sym.renderer.symbolTemplate
    symTemp.applySymbolFromGallery('Square 1')
    sym.renderer.updateSymbolTemplate(symTemp)
    #modify graduated symbol renderer
    sym.renderer.classificationField = "Shape_Area"
    sym.renderer.breakCount = 6
    sym.renderer.minimumSymbolSize = 10
    sym.renderer.maximumSymbolSize = 25
    sym.renderer.colorRamp = p.listColorRamps("Black to White")[0]
    l.symbology = sym
p.saveACopy(relpath + r"\\SavedOutput.aprx")