Czy wiesz, że ... Mathematica to nie tylko matematyka |
![]() |
Geografika, czyli geografia w środowisku Mathematica |
Przykłady operacji na danych geograficznych w środowisku Mathematica
Środowisko programu Mathematica wyposażone jest w szereg procedur z zakresu wykonywania obliczeń i tworzenia wizualizacji w oparciu o mapę świata. Obliczenia te są ściśle powiązane z systemem Wolfram|Alpha i wykorzystaniem bazy wiedzy. Dlatego obliczenia i wizualizacje z tego zakresu wymagają połączenia z Wolfram Knowledgebase.
Geograficzny region kołowy
Jedną z prostszych funkcji jest wyznaczanie regionu kołowego lub w formie wycinku koła, w którego środku znajduje się określona lokalizacja geograficzna. Region kołowy wyznaczany jest przez procedurę GeoDisk, a za jego wyświetlenie odpowiedzialna jest procedura graficzna GeoGraphics.
Aby wyznaczyć współrzędne geograficzne środka regionu wykorzystywana jest baza danych geograficznych. Na poniższym przykładzie współrzędne centrum Krakowa zostały pobrane z tej bazy. Drugim argumentem funkcji GeoDisk jest promień regionu, który aby łatwo wprowadzić w formie liczby mianowanej wykorzystano kombinację klawiszy [CTRL] =. Rysunek pokazuje region kołowy o promieniu 7 km do puntu uznanego za geograficzne centrum Krakowa.
Region można ograniczyć do wycinka koła podając kątowe ograniczenie wycinka koła.
W środowisku Wolfram Language funkcjonują tak zwane proste obiekty graficzne (graphics primitives), wykorzystywane w grafice 2D i 3D wykonywanej za pomocą procedur Graphics i Graphics3D. GeoDisk jest prostym obiektem graficznym dla procedury GeoGraphics.
Obszary geograficzne
Funkcja Polygon to również prosty obiekt graficzny, który może być używany wewnątrz dyrektywy GeoGraphics. Kształt poligonu może w tym wypadku być określony np. przez granice państw. Opcja GeoBackground pozwala ingerować w sposób wyświetlania obszarów poza granicami kraju.
![]() |
![]() |
![]() |
![]() |
Stosując różne warianty listy obiektów wyświetlanych przez procedurę GeoGraphics można uzyskać wiele interesujących efektów wizualizacji. Poniżej pokazany został kontur granic Polski z siecią drogową oraz ukształtowaniem terenu.
Mapa Polski z ukształtowaniem terenu w formie mapy izolinii.
Flagi krajów wrysowane w kontur ich granic.
Odległość punktów
GeoDistance to procedura pozwalająca wyliczać odległość między punktami określonymi przez współrzędne geograficzne. GeoListPlot to odpowiednik procedury ListPlot ale na powierzchni Ziemi.
Przykład w skali lokalnej odległości z Krakowa do Lublina ...
... i w skali globalnej z Chicago do Moskwy.
Punkty w najbliższym sąsiedztwie
Prostym przykładem procedur z tej grupy niech będzie wyznaczenie miast położonych w promieniu 50 km od centrum Warszawy.
Funkcja GeoNearest wyznacza miasta położone w określonym otoczeniu wskazanej lokalizacji, a za pomocą GeoListPlot można wyświetlić mapę z zaznaczonymi punktami odszukanych miast.
Po najechaniu wskaźnikiem myszy na punt wyświetlona zostaje nazwa miasta oraz współrzędne geograficzne jego położenia, ale ten efekt będzie widoczny po uruchomieniu interaktywnego pliku CDF.
Uwaga: Wersja interaktywna tego panelu będzie udostępniona wkrótce na podstronie Portalu dla Użytkowników.
Procedura GeoNearest może być wykorzystywana nie tylko do odszukania punktów, ale i całych obszarów leżących w określonym promieniu od danej lokalizacji, na przykład obszarów podziału administracyjnego (powiaty) położonych w określonej odległości od wybranego punktu. W poniższym przykładzie zmienna obszaryAdministracyjne zawiera dane powiatów położonych w zdefiniowanym otoczeniu Poznania.
Zostały one pokazane aa mapie poniżej, gdzie po najechaniu wskaźnikiem myszy na obszar powiatu pojawia się jego nazwa oraz kontur granic na tle mapy reliefowej ukształtowania pionowego obszaru powiatu. Efekt interaktywny będzie widoczny po uruchomieniu pliku CDF.
Uwaga: Wersja interaktywna tego panelu będzie udostępniona wkrótce na podstronie Portalu dla Użytkowników.
Trasa połączeń drogowych
Wyznaczanie trasy połączeń drogowych to jedna z procedur obliczeniowych z zakresu przetwarzania informacji geograficznej. Wystarczy podać lokalizację początkowa i końcową, a procedura TravelDirections wyznaczy przebieg trasy między tymi punktami.
Wyznaczoną trasę można pokazać na mapie ...
... lub wyświetlić jej charakterystyki jako obiektu typu Dataset.
Sławne twarze Europy
Wolfram Knowledgebase to nie tylko geografia, to baza wiedzy z wszelkich dziedzin. Poniżej wymienione zostały nazwiska pięciu kompozytorów, którzy rozsławili swoje kraje: Ravel, Albeniz, Chopin, Mozart i Bach. Poniższa dyrektywa pobiera dane o nich z bazy wiedzy Wolfram Knowledgebase.
Możemy teraz wyświetlić wizerunki kompozytorów, a po najechaniu wskaźnikiem myszy na zdjęcie zobaczymy nazwisko kompozytora oraz miejsce i datę urodzenia oraz śmierci.
Za pomocą komendy GeoGraphics możemy teraz wizerunki kompozytorów wpisać w kontur kraju ich pochodzenia.
Obraz dowolnego obszaru w skali świata
Baza wiedzy Wolfram KnowledgeBase pozwala wyświetlać mapy i dokonywać obliczeń w obrębie całej powierzchni Ziemi. Poniżej pokazany został widok na Kilimandżaro oraz lista szczytów w otoczeniu Mont Everestu.
Widok na Kilimandżaro.
Szczyty w odległości do 80 km od Mont Everestu.
Ulokowanie wybranych szczytów na mapie, a po najechaniu wskaźnikiem myszy na punkt pojawia się nazwa szczytu, jego wysokość oraz zdjęcie, ale informacje te będą widoczne po uruchomieniu pliku CDF.
Uwaga: Wersja interaktywna tego panelu będzie udostępniona wkrótce na podstronie Portalu dla Użytkowników.
Poniżej coś z “lokalnego podwórka”, otoczenie Giewontu w promieniu 7 km . Niestety baza wiedzy Wolfram Knowledgebase nie zna (jeszcze) Kasprowego Wierchu.
Żeby nie było wątpliwości, czy to ten sam Giewont, możemy wyświetlić zdjęcie z bazy Wolfram Knowledgebase.
Lot z Madrytu do Aten
Wyznaczymy linię prostą z Madrytu do Aten i sprawdzimy jak wygląda przekrój powierzchni ziemi na tej trasie.
Zdefiniujemy punkt początkowy i końcowy.
Wyznaczymy dystans i kierunek trasy.
Wyznaczymy 1000 punktów na trasie lotu, definiując odległość wzdłuż linii lotu oraz współrzędne geograficzne każdego z puntów trasy.
Profil trasy wyznaczymy za pomocą funkcji GeoElevationData.
I na koniec dwa rysunki. Pierwszy to profil trasy, gdzie kolor niebieski to lot nad morzem Śródziemnym, a lekko pomarańczowy to przelot nad lądami. Jakie to lądy łatwo możemy się zorientować z drugiego rysunku, który pokazuje trasę lotu na tle mapy Europy.
Największa głębia na trasie lotu wystąpi gdzieś w połowie lotu między Sardynią i półwyspem Apenińskim.
Niniejsze opracowanie nie jest pełnym wykazem możliwości środowiska Wolfram Language w zakresie przetwarzania informacji geograficznej. Jest to tylko prezentacja jego wybranych procedur.