Ćwiczenia. Praca z mapami wektorowymi - podstawy
Zmień tzw. working folder na C:\Cwiczenia\AEP 504d\”Twój folder”\Zajęcia nr 7
Otwórz DISPLAY Launcher, wybierz zakładkę warstwy wektorów i otwórz plik MASSTOWNS (pierwszy w okienku, bez znaku plusa). Wybierz opcję Advanced Palette / Symbol Selection. Ponieważ każdy z poligonów identyfikowany jest za pomocą numeru ID nie zawiera informacji ilościowej można wybrać atrybut Qualitative (w zakładce Data relationship) oraz color Variety (black outline). /otworzono mapę wektorową stanu Massachusetts który jest podzielony na 351 obszarów miejskich - kliknięcie na poligon za pomocą Cursor Inquiry, ujawnia informację o numerze ID obszaru miejskiego/.
Ponownie otwórz DISPLAY Launcher i wyświetl mapę wektorową POP2000 z kolekcji MASSTOWNS (druga w okienku, ze znakiem plusa). Ponieważ informacja w POP2000 jest informacją ilościową wybierz znacznik Quatitative, jako kolor wybierz Unipolar (ramp from white). Upewnij się że Currnet Selection to: PolyUnipolarWred. Wybierz OK. /schematy koloru Unipolar pokazują postęp w sekwencji od najmniejszego do największego, pokazuje to legenda ale kolorystyka mapy nie jest dobrze dobrana - populacja Bostonu za bardzo się różni od reszty dlatego poza Bostonem mamy przewagę jasnych kolorów. Należy to skorygować poprzez wybranie przedziałów Quantiles na zakładce Display Parameters w menu Layer Properties - zobacz jak zmieniła się mapka poprzez utworzenie 16 grup o równej ilości obszarów miejskich.
Upewnij się, że aktywnym oknem jest MASSTOWNS.POP2000, następnie kliknij ikonę Database Workshop (ikonka tabelki na przyborniku). Automatycznie otworzy się baza danych zawierająca informację o populacji miast Stanu (plik masstowns.vlx, który jest plikiem „łącznikiem” między bazą danych .mdb a mapą wektorową .vct) /w terminologii baz danych kolumna nazywana jest polem (fiels) zaś wiersz rekordem (record). Przełącz kursor w tryb Cursor Inquiry Mode i klikając w poszczególne poligony zaobserwuj zmiany w bazie danych.
Kliknij gdzieś w polu POPCH80_90 (zmiana populacji od roku 1980 do roku 1990). Kliknij Display Current Field as Map Layer (pierwsze polecenie z menu podręcznego dostępnego po naciśnięciu prawego przycisku myszy lub przedostatnia ikonka w menu Database Workshop (tożsama z ikonką Display). /Kiedy mapa wektorowa jest połączona z bazą danych każde pole może być wyświetlone na mapie tematycznej/. Możesz wyłączyć mapę oraz moduł Database Workshop (Window List w głownym meny IDRISI polecenie Close All Windows)
Jak utworzyć połączenie między bazą danych a mapą wektorową? Otwórz moduł Database Workshop. Otwórz w nim plik MASSTOWNS.VLX, upewnij się że otwarta tabela to Census 2000 i otwórz Establish Display Link w menu Query /lub trzecia ikonka od końca w menu Database Workshop/ - zanotuj że na łącznik składają się trzy komponenty: pierwszy z nazwą pliku łącznika (.vlx), drugi z nazwą warstwy (mapy) wektorowej (.vct) oraz trzeci z nazwą pola bazy danych która ma niepowtarzalne ID. Zamknij (bez zmian) Establish Display Link.
Eksport pola do mapy wektorowej. Kliknij gdzieś w polu POPCH90_00. Z menu Database Workshop wybierz File/Export/Field/to Vector File. Zauważ, że program sam podpowiada sugestywną nazwę. Jeżeli zgadzasz się na nią kliknij OK. /program sam uzupełni metadane pobrawszy je z wsadowej mapy wektorowej - wyświetl je za pomocą Layer Properities/Properities/View Metadata/.
Eksport pola do mapy rastrowej. Kliknij gdzieś w polu AREA a następnie kliknij w ikonę Create IDRISI Raster Image (ikonka szachownicy) /zauważ że obok jest ikonka Create IDRISI Vector File/. Zostanie zaproponowana nazwa rastra. Po wybraniu OK zostanie wyświetlone okno w którym można dokonać zmian w ustawieniach rastra - bezpieczniej jest jednak skopiować ustawienia z pliku towns /wspólne koordynaty przestrzenne pozwalają nakładać warstwy rastowe lub/i wektorowe/.
Import danych do istniejącej bazy danych. Wybierz raster STATEENVEREGIONS z DISPLAY Launcher'a, użyj palety barw o tym samym brzmieniu. /Raster zawiera informację o podziale stanu na regiony środowiskowe dla których zbierane są informacje i przeprowadzane analizy stanu środowiska./ W tabeli CENSUS2000 wybierz Add Fields z menu Edit, nazwij pole ENVREGION z danymi typu integer. /Pole pojawi się na końcu tabeli z prawej strony/. Z menu File wybierz Import/Fields/from Raster Image otworzy się okienko Import Raster gdzie jako feature definition image należy wybrać raster TOWNS i raster STATEENVEREGIONS, wybierz max jako Summary type (bezpieczniejsze niż pozostałe) jako Output wybierz Update existing field, jako Linking field name powinno być wybrane TOWN_ID, zaś update field name to nowoutworzone pole ENVREGION. Wyświetl pole ENVREGION jako oddzielną mapę. Usuń pole ENVREGION.
Ćwiczenia. Praca z mapami wektorowymi - analizy i SQL
Praca z filtrami
Otwórz DISPLAY Launcher, wybierz POPCH90_00 z kolekcji MASSTOWNS. Użyj Default Quantitave palette. Otwórz Database Workshop. Przesuń tabele w dolny prawy róg okna IDRISI, zmniejsz rozmiar okna mapy tak by okna nie zachodziły na siebie.
Naciśnij ikonkę Filter Table (wygląda jak okulary przeciwsłoneczne) - jest to fliter SQL /Structured Query Language - lewa strona zawiera informacje o zapytaniu do bazy danych gdzie From oznacza tabele do której odnosi się pytanie, Where to miejsce, w które wpisuje się warunek testujący rekordy pod względem logicznej prawdy bądź fałszu, Order By to opcjonalne wskazanie miejsca docelowego wyniku zapytania, zaś prawa to narzędzie ułatwiające zadawanie zapytań (edytor). Do naszych celów wybierzemy z bazy danych te miasta które miały negatywne zmiany populacji w dwu okresach od 1980 do 1990 oraz od 1990 do 2000/.
Wpisz bezpośrednio w okienku zapytań albo wybierz za pomocą edytora SQL następujące zapytanie [popch80_90] < 0 and [popch90_00] < 0 /Jeżeli pytanie zostało wprowadzone prawidłowo wyniki pojawią się na mapie zaznaczone na czerwono, te poligony które nie spełniają warunku pojawią się na ciemnoniebiesko/. Użyj Cursor Inquiry Mode i odczytaj wartości z czerwonych i niebieskich poligonów /dla niebieskich wartość rekordu nie powinna być odnaleziona/
Na koniec kliknij ikonę Remove Filter (okulary normalne) aby usunąć filrt.
Praca z kalkulatorem
Zamknij wszystkie mapy związane z tabelą (Window List w głownym meny IDRISI polecenie Close All Map Windows) /będziemy dodawać nowe dane do bazy danych, a można to uczynić (ze względów bezpieczeństwa) tylko jeżeli wszystkie powiązane z nią mapy zostaną zamknięte/
Wejdź do Edit w menu Database Workshop i wybierz opcję Add Field. Nazwij nowe pole POPCH80_00 i ustaw typ danych na Real, kliknij Ok.
Wybierz ikonę Calculate Field Values (+=) z paska Database Workshop. Z listy Set wybierz POPCH80_00 zaś w zakładce „=” wpisz: ( ([POP2000] - [POP1980]) / [POP2000]) * 100 /Jeżeli wszystkie spacje zostały uwzględnione program zapyta czy zmodyfikować bazę danych, potwierdź i zobacz wynik/
Zapisz bazę danych. Upewnij się, że aktywna komórka znajduje się w polu POPCH80_00 a następnie wyświetl mapę za pomocą Display. Usuń pole POPCH80_00. Zapisz bazę danych.
Praca z Advanced SQL
Wyczyść ekran. Otwórz bazę danych MASSACHUSETTS. Sprawdź czy zawiera trzy tabele: CENSUS2000, HOSPITALS, SCHOOLS
Przejdź do tabeli CENSUS2000. Wybierz ikonę Establish Display Link. Wybierz vektor link file: MASSTOWNS, vector file: MASSTOWNS i Link Field Name: TOWN_ID.
Jak połączenie zostanie ustanowione umieść kursor gdzieś w polu POPCH90_00 i wyświetl mapę wektorową obrazującą zmiany dodatnie oraz ujemne w populacji miast w okresie od 1990 do 2000.
Załóżmy że chcemy wybrać z nich te miasta które mają szpitale. Z Query menu wybieramy Advanced SQL: select * into [townhosp] from [census2000] , [hospitals] where [census2000].[TOWN] = [hospitals].[TOWN] /czyli “wybierz do tabeli townhosp z tabeli census 2000 oraz tabeli hospitals te miasta które występują w obydwu tabelach”/.
Zamknij bazę danych bez zapisywania zmian.