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).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.
World UTM Grid
i World Countries
.UkladyWsp
.
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:
WKID=2177
, ETRS 1989 Poland CS92, jeżeli jeszcze nie został dodany, WKID=2180
,WKID=32633
,WKID=32634
,WKID=3857
,WKID=4258
,WKID=4326
.Map
.Coordinate Systems
i wyszukaj wszystkie podane powyżej systemy współrzędnych. Dodaj je do Favorites
.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.Catolog
kliknij PPM na warstwę World_Countries
, przejdź do Properties
.Source
i rozwiń Spatial Reference
sprawdź gdzie jest informacja o systemie współrzędnych.Wyszukaj układ UPS North
i UPS South
, są to układy które zostały zaprojektowane na potrzeby wizualizacji kartograficznej miejsc okołobiegunowych.
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, 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.
Dane do pobrania - powiaty wraz z liczbą ludności.
Insert
, rozwiń New Map
i dodaj New Map
. Następnie do nowego okna mapy dodaj dane pobrane - PowiatyLudnosc.shp
.Contents
wskaż LPM warstwę Powiaty
. W głównym menu wybierz Feature Layer
, następnie rozwiń Symbology
, wybierz Unique Values
.Symbology
w polu Field 1
wybierz JPT_NAZWA_
.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.Contents
wybierz powiat który ma powielony symbol i wskaż LPM na symbol.Symbology
, następnie Properties
rozwiń paletę kolorów i wybierz unikalny kolor.Contents
warstwę Powiaty
.Symbology
, w polu Field 1
wybierz WERSJA_OD
.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.
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.
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.
Natural Breaks (Jenks)
.Ludnosc
z użyciem metody Natural Breaks (Jenks)
.Ludnosc
z użyciem metody Equal Interval
.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.
Bivariate Colors
.
Unclassed Colors
, Graduated Symbols
, Proportional Symbols
i Dot Density
.Single Symbol
. Zmień kolor granicy obiektu na czarny i grubość 1 pt.Properties
wybierz Layers
zmień Solid fill
na Hatched fill
.Pattern
zmień Angle
i Separation
zgodnie z rysunkiem.Powiaty
.PowiatyLudnosc
oraz wskaż ją w Contents
.Single Symbol
i wybierz kolor wypełnienia szary.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.
Labeling
w Label Class
w Field
wybierz Nazwa
i włącz przycisk Label
pierwszy z lewej strony.Powiat
. W menu głównym obok pola Field
wciśnij przycisk Expression
.Label Class
dopisz + "\n" +
, a następnie 2LPM na wynagrodzenie
.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ć.
Expression
wprowadź round($feature.wynagrodze, 2)
zamiast $feature.wynagrodze
.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].
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
:
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.
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.
Insert
a następnie wybierz New Map
.GDA selekcja
, 2LPM na Map1
i w General
wprowadź nazwę.PL.PZGiK.336.2261__OT_BUBD_A
do projektu.Contents
wskaż warstwę budynków a następnie przejdź w menu głównym do Select By Attributes
.FUNOGBUD
wybierz obiekty reprezentujące budynki jednorodzinne. Następnie zatwierdź przez OK
.Wybranych jest 23 728 - sprawdź w tabeli atrybutowej (wynik może różnić się w zależności od aktualizacji danych).
Na wybranych obiektach wykonamy kolejną selekcje wykorzystując pole area
w którym przechowywana jest powierzchnia obiektów.
Selection Type
na Select subset from the current selection
oraz wprowadź zapytanie Where area is greater than or equal to 100
.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
.
Clear
w menu głównym - Map
.Select By Attributes
i wprowadź warunki zapytania połączone przez spójnik and
.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.
Select By Attributes
i wybierz budynki mieszkalne (posiłkuj się tabelą klas).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].
Geoprocessing
- przejdź do menu głównego i wybierz Analysis/Tools
.Geoprocessing
wyszukaj narzędzia Feature To Point
oraz uruchom klikając LPM na nazwę Feature To Point
.Inside
. Uruchom poprzez Run
, nowa warstwa doda się automatycznie do projektu.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.
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
.
Select By Attributes
- menu główne Map
i wybierz narzędzie.FUNSZCZ LIKE '%garaz%'.
.Po wykonaniu selekcji wygeneruj na podstawie wybranych obiektów centroidy garaży. Wykonaj analogicznie jak w przypadku budynków jednorodzinnych.
Geoprocessing
wyszukaj narzędzia Feature To Point
oraz uruchom klikając LPM na nazwę Feature To Point
.Inside
. Uruchom poprzez Run
, nowa warstwa doda się automatycznie do projektu.Contents
wskaż tę warstwę. Następnie w menu głównym wybierz Select By Location.Select By Location
wprowadź warstwę centroid budynków mieszkalnych jako Selecting Features
. Zatwierdź poprzez \textit{Apply}.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.
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
.Używane skróty:
Autor: Adam Inglot, mail: adam.inglot@pg.edu.pl