Код: Выделить всё
sym.renderer.classificationMethod = "ManualInterval"
Но даже после этого Arcgis pro все еще отображает слой как классифицированный с использованием StandardDeviation, как в диалоговом окне «Свойства слоя». Метки Breaks появляются правильно, но базовые перерывы и метод классификации игнорируются или сброшены. < /P>
Вот упрощенная версия моей функции: < /p>
def apply_symbology(self, layer, field_name, breaks, labels):
sym = layer.symbology
sym.updateRenderer("GraduatedColorsRenderer")
sym.renderer.classificationField = field_name
sym.renderer.classificationMethod = "ManualInterval"
sym.renderer.breakCount = len(breaks) - 1
layer.symbology = sym # required to initialize classBreaks
# Manually override breaks
sym = layer.symbology
for i in range(len(breaks) - 1):
brk = sym.renderer.classBreaks
brk.upperBound = breaks[i + 1]
brk.description = labels
layer.symbology = sym
< /code>
Тем не менее, результат на карте по -прежнему показывает стандартное отклонение в качестве метода классификации, хотя применяются разрывы и метки.
Что я попробовал: < /p>
Confirmed that breaks and labels are applied programmatically.
Used layer.symbology = sym after modification to force update.
Tried setting the classification method both before and after breaks.
Using other methods like "EqualInterval" works — but "ManualInterval" is ignored.
Manually changing the method in ArcGIS Pro after running the script does work — so this seems like an ArcPy-specific bug or undocumented behavior.
< /code>
Мои вопросы: < /p>
Is "ManualInterval" no longer supported or broken in recent ArcGIS Pro versions?
Is there an alternative way to fully enforce manual classification using ArcPy?
How can I prevent ArcGIS from defaulting back to "StandardDeviation"?
< /code>
Я использую: < /p>
ArcGIS Pro: 3.3.1
Python: 3.9.x (ArcGIS Pro default)
Renderer: GraduatedColorsRenderer on a feature layer
< /code>
Спасибо! < /p>
Вот некоторые подробности о значениях в моем наборе данных и вводе ввода. Функция Apply_symbology усыпает. 0,833, 1,25, 1,667, 2,083, 2,5]
Метки: ['0-0,42%', «0,42-0,83%», «0,83-1,25%», 1,25-1,67%', 1,67-2,08%', 2,08-2,50%>
Подробнее здесь: https://stackoverflow.com/questions/797 ... tion-how-t