Oglądając niektóre mapy np. te z
National Geographic można zauważyć, że przedstawione na nich
granice administracyjne są trochę szersze i odpowiednio
zacieniowane, tj ciemniejsze przy linii granicy, a jaśniejsze im
dalej od niej. Czy podobny efekt można uzyskać w QGIS?
Na początek można zastosować
buforowanie. Tworząc bufor o odpowiadającej nam szerokości a
następnie odcinając jego część (elementem tnącym będzie
granica obszaru), otrzymamy obiekt powierzchniowy, który po nadaniu
mu koloru będzie najprostszą wersją uwydatnienia granicy. Jednak w
obecnej wersji QGIS nie można zastosować gradientu w obiekcie
powierzchniowym (kolejne wersje programu prawdopodobnie już będą
miały taką opcję), dlatego też zastosowany kolor będzie
jednolity dla całej powierzchni.
Bardziej skomplikowaną wersją
cieniowania granicy może być wielokrotne zastosowanie buforów o
różnych szerokościach. Postępujemy podobnie jak w przypadku
opisanym wyżej, jednak wstawiamy bufory o coraz większych
szerokościach. Następnie ustawiamy warstwy buforów od najszerszego
na dole do najwęższego na górze i nadajemy im kolorystykę,
stosując paletę dla określonego koloru odpowiednio od
najjaśniejszego do najciemniejszego. Trochę więcej klikania, ale
efekt jest zdecydowanie bardziej zadowalający niż poprzednio.
Trzeci sposób wykonania cieniowanej
granicy wykorzystuje narzędzie do przeprowadzania analizy bliskości
przy użyciu funkcji w Raster > Analiza > Rastrowa mapa
sąsiedztwa (Proximity – raster distance). Opis przeprowadzenia
takiej analizy oraz działania tej funkcji w programie można znaleźć
w poście „Analiza bliskości w QGIS”. Po wygenerowaniu mapy
odległości we właściwościach warstwy, zmieniamy jej styl
wyświetlania. W poście użyłem jako sposobu wyświetlania –
jednokanałowy szary, gradient koloru – czarny w biały przy
wartościach min = 0.0 max = 0.2 oraz rozciągnięty kontrast do
min/max. Efekt wygląda następująco.
Nyall Dawson w
poście WAITING FOR QGIS 2.2 – GRADIENT FILLS na swoim blogu
nyalldawson.net sugeruje, że wersja 2.2 QGIS będzie pozwalała na
zastosowanie gradientu do poligonów, co zdecydowanie uatrakcyjni
możliwości wizualizacji w programie.
A nie jest bardziej celowym i poprawnym od strony metodologii oddzielenie warstwy prezentacji od danych i dopracowanie tego typu efektów w postprocessingu w oprogramowaniu graficznym?
OdpowiedzUsuńWitam, jeżeli chodzi o metodologię, to faktycznie jest trochę prawdy w tym co mówisz. Jednak wydaje mi się, że eksport mapy do formatu graficznego, a następnie jej obróbka, np. w gimpie, która ostatecznie prowadzi do podobnych rezultatów nie jest konieczna. Mając możliwość zrobienia tego, czego oczekujesz w oprogramowaniu, w którym tworzona jest mapa warto z niej skorzystać. Od strony praktycznej warstwy można zawsze pogrupować np. grupa projektowa i grupa prezentacyjna, pozwoli to zapanować nad ilością i przeznaczeniem warstw, szczególnie w dużych projektach. Poza tym, tak jak pisałem w poście, niedługo w QGIS pojawi się możliwość gradientowania poligonów, więc wprowadzenie na mapę odpowiedniego cieniowania będzie jeszcze prostsze.
UsuńPozdrawiam
Dzięki za odpowiedź. Ja standardowo obrabiam mapy w darmowym programie do edycji grafiki wektorowej - Inkscape, eksport do formatu svg z qgis. Dostrzegam w tym dwa duże plusy: oddzielenie prezentacji od treści i łatwość obróbki. Wiele z czynności, które w qgis zajmują sporo czasu w inkscape to kilka kliknięć (np. poprawka etykiet). Polecam spróbować.
OdpowiedzUsuńPozdrawiam
Inkscapa znam z robienia symboli do QGIS, faktycznie przyjazny, intuicyjny program. Nie edytowałem w nim mapy ale po takim opisie warto spróbować :)
OdpowiedzUsuń