Использование непрерывной цветной полосы для растровой легенды в QGIS легенде композитора?


32

Я ищу способ вставить непрерывную легенду цвета для растрового слоя. Мне удалось создать дискретные символы со значениями вдоль панели, но я хотел бы иметь непрерывную панель с некоторыми значениями на панели, аналогично старому плагину «One-Band Raster», который не работает с версией QGIS. выше 1,7

Я попытался установить в свойствах-> стиль, где я выбрал тип рендеринга «Псевдополосный однополосный» и увидел окно «Создать новый цветовой график». Я пробовал оба «Непрерывный» или «Равный интервал». Однако в Composer легенда всегда отображается с дискретными символами.

Есть ли способ заставить QGIS Composer отображать хорошую непрерывную полосу для растрового слоя?


Боюсь, что в QGIS это невозможно для предмета легенды. Обходной путь - создать изображение и вставить его в композитор. Для непрерывных цветов растра выберите линейную интерполяцию.
Radouxju

Ответы:


40

Другой вариант - добавить в композицию форму прямоугольника, а затем оформить прямоугольник, используя градиентную заливку с тем же цветовым изменением, что и растр. Это можно сделать непосредственно в QGIS, без редактирования изображений или HTML.

введите описание изображения здесь


Это не обеспечивает необходимые измерения для легенды, хотя
Шон

Должен предоставить информацию о версии QGIS.
Чанг

11

Обходной путь без картинок - добавить градиент, используя фрейм HTML и немного магии CSS:

<html> <head> <style type="text/css"> 
body { background: -webkit-linear-gradient(left,red,orange,yellow,green);  }
* { color: white;  font-family: "Source Sans Pro", Arial, sans; font-size: 24px;  }
</style></head>
<body> <div style="float:left">low value</div>
       <div style="float:right">high value</div>
</body> </html>

введите описание изображения здесь


9

Немного хака, чтобы заставить композитора сделать это в QGIS 3

Добавьте вашу легенду, затем отрегулируйте размер символа в вашей легенде до чего-то маленького (например, 1,5 мм). Вы по-прежнему будете видеть белые линии, разделяющие цветные полосы, они, похоже, относятся к размеру шрифта для текста легенды, поэтому установите его на ноль.

Затем вы можете добавить ручные метки вдоль градиента и прямоугольника, чтобы замаскировать текст легенды, или установить этот текст в белый цвет.

Это не дает идеального градиента, так как остаются небольшие белые линии, но для моих целей этого было достаточно.

Редактировать; Это было проверено на QGIS версии 3.4.1-Мадейра

Как ниже;

введите описание изображения здесь


Я присудил награду за этот ответ, потому что он был единственным, кто упомянул номер версии (хотя и только основной выпуск), к которой он относится.
PolyGeo

Вам также может понадобиться настроить «Пространство символов» в разделе «Интервал» и снять флажок «Рисовать штрих для растровых символов» в разделе «Символ»
Брайан Фишер

3

Эта опция не включена в QGIS, но вот что я делаю:

Сначала классифицируйте с использованием желаемой цветовой шкалы. Затем перейдите в Настройки -> Менеджер стилей -> Цветовая шкала (показано на рисунке ниже): введите описание изображения здесь

Теперь вы можете использовать 'Snipping Tool' для копирования используемой вами рампы. Например, на приведенном ниже рисунке показана цветовая шкала «Блюз», скопированная с помощью инструмента «Обрезка»:

введите описание изображения здесь

Теперь в «Composer Manager» используйте «Добавить метку» и «Добавить изображение», чтобы добавить непрерывную цветную шкалу вместе с легендой. Чтобы получить значения «Макс» и «Мин» для непрерывной цветовой шкалы, используйте Свойства слоя -> Стиль.


3

еще один вариант, но ограниченный рампами cpt-city.

Это работает

  • если у вас установлен плагин Color Manager и
  • вы решили установить рампы cpt-city

Вы можете поместить файл рампы svg на холст как изображение. В моей настройке Ubuntu они появляются в ~ / .qgis2 / cpt-city /

введите описание изображения здесь


3

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

  1. При необходимости поверните шкалу, чтобы выровнять ее по рампе.
  2. Удалите метку единиц или поместите соответствующую метку. Это будет работать для линейных единиц с равным интервалом. Для нелинейных масштабов вы можете наложить несколько масштабных баров с различными единицами измерения и сегментами.

Я все еще выясняю, как повернуть текст


Это самое близкое решение, которое я мог бы рассмотреть, но это все же взлом. Интересно, что стало причиной прекращения плагина One-Band Raster?
Богдан

3

Для этого в главном репозитории есть плагин qgis: Color Scale Bar для одноканальных растров, и он хорошо работает для меня для QGIS 2.X https://github.com/BC-Consulting/bccscbar или QGIS 3.X https : //github.com/BC-Consulting/geoprocalgos

введите описание изображения здесь


Не могли бы вы добавить инструкции по установке?
Луис де Соуза

Сначала я думал, что установил его неправильно, но, похоже, этот плагин просто не работает. Вы можете пересмотреть или обновить свой ответ.
Луис де Соуза

Плагин работает очень хорошо, и вы найдете его в основном репозитории плагинов для Color Scale Bar
Spanish_Inquisition

1
Этот плагин не для QGIS 3; разработан для QGIS 2.x и обратно совместим с .qml, сгенерированными с QGIS версий 1.x.
Шон

Этот плагин больше не доступен даже для LST V2.18. Веб-ссылка в начале ответа также недействительна.
Хаснейн Тарек
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.