Краткая информация
Класс ClassBreak представляет собой границу класса, доступную для классов GraduatedColorsRenderer и GraduatedSymbolsRenderer.
Обсуждение
Он обеспечивает доступ к индивидуальным свойствам границ класса, таким как label, description и upperBound , а также к объекту границы класса symbol.
Свойства
Свойство | Описание | Тип данных |
description (чтение и запись) | Получает и настраивает описание для данной границы класса. | String |
label (чтение и запись) | Получает и настраивает подпись для данной границы класса. | String |
symbol (чтение и запись) | Получает и настраивает символ для данной границы класса. | Symbol |
upperBound (чтение и запись) | Получает и задает максимальное значение для границы класса. | Double |
Пример кода
Следующий скрипт изменяет символы полигонального слоя, использующего отображение градуированными цветами. Он задает classificationField и breakCount, и повторно проходит каждую границу класса, изменяя upperBound, label, description и такие свойства символов, как color, outlineColor и size. В формат надписей границ вносится разделитель разрядов. Цвет заливки меняется от красного к синему, цвет рамки – от синего к красному, размер у каждой границы увеличивается.
# -*- coding: utf-8 -*-
import arcpy, os, sys, locale
relpath = os.path.dirname(sys.argv[0])
p = arcpy.mp.ArcGISProject(relpath + r"\\GraduatedColors.aprx")
m = p.listMaps("Layers")[0]
l = m.listLayers("Natural*")[0]
sym = l.symbology
sym.renderer.classificationField = "Shape_Area"
sym.renderer.breakCount = 7
breakVal = 100000000000
cv = 0
lw = 1
for brk in sym.renderer.classBreaks:
brk.upperBound = breakVal
brk.label = "\u2264" + str(locale.format("%d", breakVal, grouping=True))
brk.description = "Description " + str(cv)
brk.symbol.color = {'HSV' : [cv, 100, 100, 100]}
brk.symbol.outlineColor = {'HSV' : [240-cv, 100, 100, 100]}
brk.symbol.size = lw
breakVal +=100000000000
cv += 40
lw += 0.5
l.symbology = sym
p.saveACopy(relpath + r'\\SavedOutput.aprx')