Systemy Informacji Przestrzennej

Adam Inglot
Adiunkt w Katedrze Geodezji
Wydział Inżynierii Lądowej i Środowiska, Politechnika Gdańska
adam.inglot@pg.edu.pl

2022-08-21, aktualizacja 2023-01-03

© ainglot.pl, 2022. Udostępnianie i wykorzystanie zgodnie z licencją Creative Commons Attribution 4.0 International license (CC BY 4.0).
Projekt strony zapożyczony za zgodą autora - Paulo Raposo

CC By 4.0

Systemy współrzędnych

Systemy współrzędnych odgrywają ważną rolę w GIS, stanową podstawę budowania i wymiany danych przestrzennych. Brak informacji o systemie współrzędnych stanowi niejednokrotnie przeszkodę do wykonywania analiz przestrzennych. Dzięki usystematyzowaniu i ujednoliceniu stosowania systemów przestrzennych dla danych dotyczących polski, dane te są głównie przechowywane w jednym z dwóch państwowych układów współrzędnych geodezyjnych.

1. Uruchom w przeglądarce internetowej ArcGIS Hub. Ściągnij dane World UTM Grid i World Countries.

image

image

image

2. Przygotuj nowy projekt w ArcGIS, np. UkladyWsp.

3. Ściągnięte dane umieść w folderze (np. World) w nowo utworzonym projekcie ArcGIS. Rozpakuj i wyświetl w ArcGIS.

image image

W zależności od ustawień dane mogą wyświetlać się w różnej formie. Różnica wynika z różnych układów współrzędnych przypisanych do projektu a ściślej do otwartej karty mapy. Poznanie funkcji programu gdzie możemy zmienić czy poznać jaki jest układ współrzędnych będzie celem tego ćwiczenia.

Na początku pracy warto przygotować środowisko oprogramowania ArcGIS. Między innymi dodać do folderu Favorites systemy współrzędnych których najczęściej będziemy używać (na pierwszych ćwiczeniach dodawaliśmy układ PL-1992). Dane na których będziemy pracować dotyczą terenu Polski. Jednak będziemy potrzebowali układów o zasięgu lokalnym jak i globalnym np. do odczytania danych z odbiorników GPS. Wyszukaj i dodaj:

4. Przejdź do właściwości mapy, 2LPM na nazwę Map.

image

5. Następnie przejdź do zakładki Coordinate Systems i wyszukaj wszystkie podane powyżej systemy współrzędnych. Dodaj je do Favorites.

image

6. W Contents kliknij 2LPM na warstwę World_Countries, przejdź do zakładki Source, następnie rozwiń Spatial Reference sprawdź gdzie jest informacja o systemie współrzędnych.

image

7. Następnie w Catolog kliknij PPM na warstwę World_Countries, przejdź do Properties.

image

8. Następnie wybierz Source i rozwiń Spatial Reference sprawdź gdzie jest informacja o systemie współrzędnych.

image

Wyszukaj układ UPS North i UPS South, są to układy które zostały zaprojektowane na potrzeby wizualizacji kartograficznej miejsc okołobiegunowych.

9. Korzystając z powyższych informacji wyszukaj systemu współrzędnych UPS North oraz UPS South i zobacz efekt zmian.

image

10. Wyszukaj układ Vertical Perspective (world), ustaw punkt centralny na środek polski (19.4283, 52.1187).

image image

Sprawdź jaka jest różnica w kilometrach dla 1° długości geograficznej, użyć systemu współrzędnych WGS84, przeprowadź tę analizę dla szerokości 8° i 56° w oparciu o południk 15°, długość pomierz w systemie współrzędnych WGS 1984 UTM Zone 33N.

Symbolizacja i etykiety

Symbolizacja, nadawanie obiektom przestrzennym graficznej reprezentacji. Działanie to wykonywane jest wielokrotnie podczas pracy na danych przestrzennych, nie tylko do zwiększenia estetyki lecz również w celach przeglądu zbioru danych. Nadawanie obiektowi przestrzennemu symbolu kartograficznego jest jednym z elementów procesu tworzenia map topograficznych czy cyfrowych opracowań kartograficznych.

Metody i narzędzia symbolizacji

Dane do pobrania - powiaty wraz z liczbą ludności.

11. W menu głównym przejdź do Insert, rozwiń New Map i dodaj New Map. Następnie do nowego okna mapy dodaj dane pobrane - PowiatyLudnosc.shp.

image

12. W Contents wskaż LPM warstwę Powiaty. W głównym menu wybierz Feature Layer, następnie rozwiń Symbology, wybierz Unique Values.

image

13. Przejdź do okna Symbology w polu Field 1 wybierz JPT_NAZWA_.

image

14. Każdy powiat ma indywidualną nazwę i przez to w Contents mamy podany każdy z 20 powiatów dla województwa pomorskiego. Paleta kolorów ma ograniczoną liczbę symboli, niektóre mogą się powtarzać, można zmienić ręcznie. W poniższym przykładzie powiat pucki i lęborski maja ten sam symbol. Dla powielonych symboli zmień ręcznie kolor wypełnienia.

15. W Contents wybierz powiat który ma powielony symbol i wskaż LPM na symbol.

image

16. Przejdź do Symbology, następnie Properties rozwiń paletę kolorów i wybierz unikalny kolor.

image

17. Efekt zmian widać poniżej.

image

18. Przejdź ponownie do symbolizacji warstwy wskazując w Contents warstwę Powiaty.

19. W oknie Symbology, w polu Field 1 wybierz WERSJA_OD.

20. Zwróć uwagę że mamy więcej powiatów niż unikalnych wartości dla dat. Data 21.03.2019 dotyczy trzech powiatów i te powiaty mają taki sam symbol.

image

W ArcGIS mamy dostępnych 7 metod podziału klasowego. Metoda Natural Breaks (Jenks) - polega na iteracyjnym przeprowadzeniu podziału klasowego tak aby wariancje w klasach były najbardziej zbliżone. Inaczej opisując, przedziały między klasami są tak dopasowane aby odchyłki pomiędzy wartościami w danej klasie, a środkiem klasy były jak najmniejsze, przy jednoczesnym warunku jak największej różnicy pomiędzy środkami klas [2, 3]. Jest to metoda często stosowana w wizualizacji kartograficznej metodą kartogramów.

image

image image

Quantile - jest to metoda podziału klasowego biorąca pod uwagę liczbę obserwacji. W przypadku tej metody, gdy liczba obserwacji nie dzieli się bez reszty przez liczbę klas, liczba obserwacji w przedziałach zliczana jest kumulacyjnie do uzyskania całkowitej liczby obserwacji.
Equal Interval - metoda ta polega na wyznaczeniu równych klas o długości C, dzieląc zakres na liczbę klas. W tej metodzie często dochodzić do sytuacji w której klasa jest pusta. $$C = \frac{z_n - z_1}{k}$$ Defined Interval - użytkownik sam definiuje rozpiętość przedziałów. Klasy są obliczane względem podanej wartości.

image

Manual Interval - użytkownik sam definiuje przedziały klasowe.
Geometric Interval - rozpiętość klas rośnie w mniejszym tempie niż w ciągu arytmetycznym. $$C = 10^\frac{|\log z_n| + |\log z_1|}{k}$$
Standard Deviation - przedziały klasowe tworzone są z równymi zakresami wartości, które stanowią część odchylenia standardowego.

21. Program automatycznie wykorzystuje wartość długości granicy obiektów i klasyfikuje metodą Natural Breaks (Jenks).

image

22. Wykorzystaj pole Ludnosc z użyciem metody Natural Breaks (Jenks).

image

23. Wykorzystaj pole Ludnosc z użyciem metody Equal Interval.

image

Symbolizacja dwóch parametrów jednocześnie może być wykonana za pomocą Bivariate colors. Wskazujemy dwa pola numeryczne których wartości mają większą różnorodność niż Grid Size, kolor jest dopasowywany względem osiągniętej klasy dla obu pól równocześnie.

24. Do kolejnych symbolizacji warstw wykorzystamy informację o przeciętnym wynagrodzeniu. Wybierz symbolizację Bivariate Colors.

image image image

25. Sprawdź jak będzie prezentowała się symbolizacja gdy zamiast klasyfikacji użyjemy palety kolorów. Wybierz symbolizacje za pomocą Unclassed Colors, Graduated Symbols, Proportional Symbols i Dot Density.

image

image

image

image

26. Powróć do symbolizacji Single Symbol. Zmień kolor granicy obiektu na czarny i grubość 1 pt.

27. W Properties wybierz Layers zmień Solid fill na Hatched fill.

image

28. Następnie w Pattern zmień Angle i Separation zgodnie z rysunkiem.

image

29. Wyłącz z wyświetlania warstwę Powiaty.

Wyświetlanie etykiety w oprogramowaniu GIS

30. Włącz wyświetlanie warstwy PowiatyLudnosc oraz wskaż ją w Contents.

image

31. Zmień sposób wyświetlania na Single Symbol i wybierz kolor wypełnienia szary.

image

Wskazanie warstwy - część narzędzi dostępnych w menu głównym lub w oknach dodatkowych odnosi się do wskazanej, podświetlonej warstwy w Contents. Tak, jak w tym przykładzie gdzie chcemy wyświetlić etykiety dla warstwy powiaty, należy ją wskazać a następnie przejść do menu głównego.

32. W menu głównym przejdź do Labeling w Label Class w Field wybierz Nazwa i włącz przycisk Label pierwszy z lewej strony.

image

image

33. Usuń w wyświetlaniu etykiet powtarzający się we wszystkich nazwach początek Powiat. W menu głównym obok pola Field wciśnij przycisk Expression.

image

34. W oknie Label Class dopisz + "\n" +, a następnie 2LPM na wynagrodzenie.

image

image

W wyniku wyświetlania liczby zmiennoprzecinkowych pojawia się problem braku zaokrąglenia liczb. Możemy to wykonać używając funkcji round, która potrzebuje dwóch argumentów, tj. liczby do zaokrąglenia i liczby całkowitej określającej liczbę miejsc po przecinku jaką chcemy zachować.

35. Będąc dalej w oknie Expression wprowadź round($feature.wynagrodze, 2) zamiast $feature.wynagrodze.

image

image

Selekcja obiektów przestrzennych w GIS

Selekcja jest operacją jednoargumentową, określoną przez warunek dotyczący wartości kolumn danej relacji. Wynikiem jej jest relacja zawierające te wszystkie encje (wiersze) wyjściowej relacji, których atrybuty spełniają dany warunek [1]. Podstawą funkcjonowania bazy danych w GIS jest relacyjny model danych. Relacyjna baza danych to taka baza danych, w której dane są uporządkowane i zorganizowane w postaci relacji [2]. Natomiast relacja to zbiór egzemplarzy encji mających te same atrybuty wraz z wartościami tych atrybutów; relacja może być zapisana jako tablica, której wiersze odpowiadają egzemplarzom encji, a kolumny atrybutom [2].

W systemach informacji geograficznej relacje dotyczą nie tylko atrybutów bazy danych lecz również obiektów przestrzennych, mówimy wtedy o relacjach przestrzennych. Relacje przestrzenne – relacje dotyczące wzajemnego położenia przynajmniej dwóch obiektów w przestrzeni geograficznej. Relacje przestrzenne dzielimy na metryczne i topologiczne. Jako pierwsi relacje topologiczne zaproponowali Egenhofer i Herring jako rozszerzony o wymiar model dziewięciu przecięć topologinczych DE-9IM [3].

image

image

Metody i narzędzia selekcji w ArcGIS

Pierwsze zadanie jakie wykonamy aby zapoznać się z narzędziami selekcji to jedno z podstawowych zapytań do bazy danych. Sprawdzimy, ile w Gdańsku jest budynków jednorodzinnych których powierzchnia jest większa lub równa 100 ㎡? Jak wykonać to zadanie? Po pierwsze musimy dowiedzieć się w jaki sposób przechowywana jest informujący o funkcji budynku. Jak zaglądniemy do rozporządzenia BDOT10k [4] zo znajdziemy atrybut określony jako funkcja ogólna budynku:

image

Wybierzmy obiekty których atrybut jest równy budynkiMieszkalneJednorodzinne. Do wybranych budynków jednorodzinnych musimy dołożyć kolejny warunek minimalnej powierzchni. Zrealizujemy to poprzez zapytanie do bazy o powierzchnię obliczoną na podstawie geometrii obiektów.

36. Uruchom ArcGIS Pro, można wykorzystać projekt GDA lub uruchomić nowy.

Jeżeli wybierzemy już istniejący projekt, można otworzyć nowe okno mapy. To pozwoli na prace bez zawartości w oknie Contents a jednocześnie mamy dostęp do danych które były używane w projekcie.

37. Przejdź w menu głównym do Insert a następnie wybierz New Map.

image

38. Zmień nazwę karty na GDA selekcja, 2LPM na Map1 i w General wprowadź nazwę.

image

39. Dodaj dane budynków z Gdańska - PL.PZGiK.336.2261__OT_BUBD_A do projektu.

40. W Contents wskaż warstwę budynków a następnie przejdź w menu głównym do Select By Attributes.

image

41. Korzystając z atrybutu budynku FUNOGBUD wybierz obiekty reprezentujące budynki jednorodzinne. Następnie zatwierdź przez OK.

image

Wybranych jest 23 728 - sprawdź w tabeli atrybutowej (wynik może różnić się w zależności od aktualizacji danych).

42. Sprawdź wynik otwierając tabele atrybutową.

image

Na wybranych obiektach wykonamy kolejną selekcje wykorzystując pole area w którym przechowywana jest powierzchnia obiektów.

43. Przejdź do selekcji atrybutowej, zmień Selection Type na Select subset from the current selection oraz wprowadź zapytanie Where area is greater than or equal to 100.

image

Wynikiem jest 11 172 budynków spełniających podane warunki. Do otrzymanego rezultatu można wykorzystać jedno zapytanie do bazy danych łącząc spójnikiem and.

44. Wyczyść selekcję korzystając z narzędzia Clear w menu głównym - Map.

image

45. Przejdź ponownie do okna Select By Attributes i wprowadź warunki zapytania połączone przez spójnik and.

image

Wykonajmy teraz kolejne zadanie. Sprawdź ile jest w Gdańsku nieruchomości gruntowych na których położone są budynki typu mieszkalnego i jednocześnie co najmniej jeden garaż. Budynki które zaliczamy do budynków mieszkalnych to obiekty o atrybutach: "budynkiMieszkalneJednorodzinne", "budynkiODwochMieszkaniach", "budynkiOTrzechIWiecejMieszkaniach" lub "budynkiZbiorowegoZamieszkania". Przyjmij że budynek znajduje się na danej działce gdy jego centroida zawiera się w niej.

Dane działek ewidencyjnych można pobrać za pomocą linka: działki ewidencyjne Gdańsk.

46. Dodaj warstwę działek ewidencyjnych do projektu.

47. Przejdź do Select By Attributes i wybierz budynki mieszkalne (posiłkuj się tabelą klas).

image

Wynik to 33 589 wybranych budynków. Wynik może różnić się w zależności od aktualizacji danych. Po wykonaniu selekcji, dla czytelności prowadzenia analiz wykonamy konwersje obiektów poligonowych do centroidy obiektu, zgodnie z opisem zadania. Czym jest centroida?

Centroida - punkt wewnątrz wielokąta reprezentującego pewien obiekt; punktowi temu przyporządkowuje się pewne informacje o obiekcie, a jego położenie wewnątrz wielokąta może być określone, np. jako środek ciężkości, lub wybrane przez użytkownika [2].

48. Na podstawie wybranych obiektów wykonaj nową warstwę przedstawiającą centroidy wybranych budynków. Uruchom okno Geoprocessing - przejdź do menu głównego i wybierz Analysis/Tools.

image

49. W oknie Geoprocessing wyszukaj narzędzia Feature To Point oraz uruchom klikając LPM na nazwę Feature To Point.

image

50. Wprowadź nazwę pliku wyjściowego i zaznacz Inside. Uruchom poprzez Run, nowa warstwa doda się automatycznie do projektu.

image

Wyszukiwanie budynków które mają przypisaną wartość atrybutu garaż musi się odbyć w oparciu o atrybut FUNSZCZ - funkcja szczegółowa. Jednak wyszukiwanie w obrębie tego atrybutu jest bardziej skomplikowane. Na czym polega komplikacja? Jak wyświetlimy atrybut w formie etykiet to dostrzeżemy, że do obiektu może być dopisana więcej niż jedna funkcja.

image

Jeżeli w zapytaniu do bazy danych podamy FUNSZCZ = 'garaz' to wyszukamy jedynie te budynki których funkcja szczegółowa to garaż, żadnej inne funkcji nie pełnią. Wpisując to zapytanie dostaniemy 1 371. W przypadku zapytania rozszerzonego, które zaraz wykonamy wynik będzie powiększony o kilka obiektów - 1 375.

We wcześniejszych zapytaniach używaliśmy znak równości =, czyli obiekty spełniające warunek musiały mieć dokładnie takie wyrażenie do którego przyrównujemy np. 'garaż', czy wczesniej 'budynkiMieszkalneJednorodzinne'. Tym razem chcemy wyszukać te obiekty które zawierają w wartości atrybutu 'garaż' i użyjemy do tego metody LIKE. Metoda ta wymaga zastosowania dodatkowych operatorów: % i\lub _, znak % oznacza że liczba znaków przed lub po (w zależności od ustawienie przed, po szukanej frazy) szukanej frazie nie ma znaczenia, znak _ zastępuje pojedynczy znak w ciągu wyrazów. W naszym zapytaniu wykorzystamy znak % przed i po wyrażeniu 'garaż'. Ostatnia uwaga o jakiej należy wspomnieć, atrybut FUNSZCZ nie przechowują polskich znaków, czyli będziemy wykorzystywać wyrażenie garaz.

51. Przejdź do Select By Attributes - menu główne Map i wybierz narzędzie.

image

52. Wprowadź zapytanie do bazy danych: FUNSZCZ LIKE '%garaz%'..

image

Po wykonaniu selekcji wygeneruj na podstawie wybranych obiektów centroidy garaży. Wykonaj analogicznie jak w przypadku budynków jednorodzinnych.

53. W oknie Geoprocessing wyszukaj narzędzia Feature To Point oraz uruchom klikając LPM na nazwę Feature To Point.

image

54. Wprowadź nazwę pliku wyjściowego i zaznacz Inside. Uruchom poprzez Run, nowa warstwa doda się automatycznie do projektu.

image

55. Dodaj warstwę działek ewidencyjnych. W Contents wskaż tę warstwę. Następnie w menu głównym wybierz Select By Location.

image

56. W oknie Select By Location wprowadź warstwę centroid budynków mieszkalnych jako Selecting Features. Zatwierdź poprzez \textit{Apply}.

image

Wynik jaki otrzymaliśmy po pierwszym kroku selekcji to 28 579 działek ewidencyjnych spełniających warunek posiadania centroidę budynku mieszkalnego. Wynik może różnić się w zależności od aktualizacji danych. Następnie rozszerzymy warunek o zawieranie centroidy garażu w obrębie wybranych działek.

57. W oknie Select By Location zamień warstwę centroid budynków mieszkalnych na warstwę centroid garaży, oraz zmień w oknie Selection type na Select subset from current selection i zatwierdź OK.

image

Używane skróty:

Autor: Adam Inglot, mail: adam.inglot@pg.edu.pl