Назначить несколько цветов объектам в одном векторном слое

21

Я хочу дать несколько цветов для разных объектов в шейп-файле на основе значений атрибутов, возможно ли это в QGIS?

Если да, какова процедура?

Есть ли способ обеспечить цвет с помощью шестнадцатеричных кодов?

GeoH2O
источник
3
Проект QGIS предлагает очень хорошее руководство: qgis.org/en/documentation/manuals.html . Я предлагаю прочитать это.
Подземье

Ответы:

30

Вы можете изменить стили файла формы в свойствах слоя. Дважды щелкните слой и выберите стиль.

Выберите Категоризованный стиль и выберите поле, которое вы хотите визуализировать. Не забудьте классифицировать свои значения перед выходом из диалога.

Диалог стиля в QGIS 2.

LauriK
источник
7

если я вас правильно понял, этот замечательный учебник должен ответить на ваш вопрос: http://woostuff.wordpress.com/2011/06/06/one-of-my-favorite-features-of-qgis/

PS от того же автора есть также продолжение: http://woostuff.wordpress.com/2012/01/25/improvements-to-the-qgis-rule-based-rendering/

Kurt
источник
1
да, на самом деле ваш ответ более относится к моему вопросу, но я принял другой, поскольку ответ был для более общего случая
GeoH2O
5

В качестве альтернативы категориальному стилю, если вы хотите немного поиграть с цветом, вы можете попробовать написать его самостоятельно:

CASE 
    WHEN Field = 'Value1' THEN color_rgb(0, 176, 80) 
    WHEN Field = 'Value2' THEN color_rgb(255, 255, 0)
    WHEN Field = 'Value3' THEN color_rgb(255, 192, 0)
    WHEN Field = 'Value4' THEN color_rgb(255, 0, 0)
    WHEN Field = 'Value5' THEN color_rgb(192, 0, 0) 
    WHEN Field = 'Value6' THEN color_rgb(255, 0, 255)
    ...
ELSE
    color_rgb(0, 0, 0)    
END

Вы также можете применить функцию rand внутри color_rgb

wastek
источник
1
Использование Graduatedстиля даст тот же результат, без необходимости кодирования.
Хаким