В ArcMap можно автоматически вычислять уникальные значения для растра, а затем применять разные стили к каждому уникальному значению (см. 1-е изображение).
Однако в QGIS мне нужно вручную добавлять значения для стиля при использовании стиля «Одноканальный псевдоцвет» (см. 2-е изображение). Есть ли способ автоматического заполнения уникальных значений, как это делает ArcMap?
ArcMap:
QGIS (как автоматически заполнить список значений уникальными значениями?):
qgis
raster
symbology
unique-value
Пит Уиттакер
источник
источник
Ответы:
Для тех, кто все еще ищет это. Уникальные растровые значения были добавлены в QGIS 3. "Добавил Nyall Dawson около 1 года назад
[FEATURE] Разрешить классификацию палитра рендера с использованием уникальных значений из растрового слоя
Добавляет простой способ стилизации дискретных растров, таких как классы землепользования, с использованием средства визуализации Paletted. Просто выберите палитра Renderer, выберите группу, а затем нажмите кнопку «Добавить уникальные значения». Уникальные значения пикселей будут получены из слоя, а цвет будет назначен каждому из них с использованием выбранной в данный момент цветовой шкалы ».
источник
Вот подход, который может быть полезным. Инструмент GRASS
r.report
способен вычислять базовую статистику для каждого уникального значения в растровом слое:Вывод может быть записан как простой текстовый файл, который выглядит следующим образом (слева: уникальные значения, справа: область, охватываемая каждым значением):
Следующий скрипт геообработки принимает этот текстовый файл в качестве входных данных и устанавливает подходящий рендерер (со случайными цветами для удобства) для растрового слоя (Вдохновленный LAWHEAD, J .: QGIS Python Programming Cookbook, стр. 135):
Благодаря легендарным возможностям обработки QGIS вы можете объединить эти два в графическом редакторе моделей и добавить параметр растра, чтобы просто выбрать загруженный растровый слой:
После сохранения модели, дважды щелкнув ее в панели инструментов обработки, ее можно использовать как обычный инструмент:
Результат выглядит примерно так (выход растеризованного набора данных natura2000):
Или в свойствах слоя:
Я думаю, что это требует некоторого уточнения в пользовательском опыте, но это первый шаг.
источник