ELTE Meteorológiai Tanszék
=>
Oktatás =>
Magics++ oktatóanyag => MagML tartalom
Felhőborítottság térkép
Ebben a példában megnézünk egy újabb árnyékolási technikát, amivel a
felhőborítottságot ábrázolhatjuk. Továbbá azt is láthatjuk, miként
tehetünk színeket a térkép címébe. A megoldáshoz szükséges grib fájl
letölthető innen.
<magics
version='3.0'>
<drivers>
<png output_name='cloud_cover_asia'/>
</drivers>
<page>
<map
subpage_lower_left_longitude = '55.000000'
subpage_upper_right_longitude = '175.000000'
subpage_upper_right_latitude = '80.000000'
subpage_map_projection = 'cylindrical'
subpage_lower_left_latitude = '0.000000'
fitted_mode='crop'
margin_top='0'
margin_left='0'
margin_bottom='0'
margin_right='0'>
<coastlines map_coastline_sea_shade = 'on'
map_coastline_sea_shade_colour = 'white'
map_label = 'off'
map_coastline_land_shade_colour = 'cream'
map_grid = 'off'
map_coastline_colour = 'tan'
map_coastline_land_shade = 'on' />
<plot>
<grib grib_input_file_name = '../cloud_cover.grb' />
<contour contour_level_selection_type = 'interval'
contour_shade_colour_method = 'list'
contour_shade_technique = 'cell_shading'
contour_shade = 'on'
contour_reference_level = '-0.500000'
contour_hilo = 'off'
contour_min_level = '-0.500000'
contour_max_level = '63.500000'
contour = 'off'
contour_interval = '1.000000'
contour_shade_colour_list = "HSL(0,0,1)/
HSL(29,0.14,0.92)/
HSL(29,0.29,0.83)/
HSL(29,0.43,0.75)/
HSL(300,0.08,0.92)/
HSL(360,0.16,0.84)/
HSL(13,0.3,0.75)/
HSL(18,0.44,0.67)/
HSL(300,0.16,0.83)/
HSL(340,0.22,0.75)/
HSL(360,0.34,0.67)/
HSL(8,0.47,0.58)/
HSL(300,0.24,0.75)/
HSL(330,0.28,0.67)/
HSL(349,0.38,0.58)/
HSL(360,0.5,0.5)/
HSL(180,0.17,0.92)/
HSL(120,0.08,0.84)/
HSL(57,0.17,0.75)/
HSL(44,0.3,0.67)/
HSL(209,0.14,0.84)/
HSL(187,0,0.75)/
HSL(29,0.15,0.67)/
HSL(29,0.29,0.59)/
HSL(239,0.16,0.75)/
HSL(299,0.08,0.67)/
HSL(360,0.17,0.58)/
HSL(13,0.3,0.5)/
HSL(258,0.21,0.67)/
HSL(299,0.16,0.59)/
HSL(341,0.22,0.5)/
HSL(360,0.33,0.42)/
HSL(180,0.34,0.83)/
HSL(161,0.22,0.75)/
HSL(120,0.16,0.67)/
HSL(78,0.21,0.58)/
HSL(193,0.3,0.75)/
HSL(180,0.17,0.67)/
HSL(120,0.08,0.58)/
HSL(59,0.16,0.5)/
HSL(209,0.29,0.67)/
HSL(209,0.15,0.58)/
HSL(217,0,0.5)/
HSL(29,0.14,0.42)/
HSL(224,0.3,0.58)/
HSL(237,0.17,0.5)/
HSL(299,0.08,0.42)/
HSL(360,0.16,0.33)/
HSL(180,0.5, 0.75)/
HSL(169,0.38,0.67)/
HSL(150,0.28,0.58)/
HSL(120,0.24,0.5)/
HSL(188,0.47,0.67)/
HSL(180,0.34,0.59)/
HSL(160,0.22,0.5)/
HSL(120,0.16,0.42)/
HSL(198,0.44,0.58)/
HSL(193,0.3,0.5)/
HSL(180,0.17,0.42)/
HSL(120,0.08,0.33)/
HSL(209,0.43,0.5)/
HSL(209,0.29,0.42)/
HSL(209,0.14,0.33)/
HSL(191,0,0.25)"
/>
</plot>
<text
width='60%'
height='10%'
text_border='on'
text_border_colour='black'
text_box_blanking= 'on' >
<font colour='black' sizee='0.6' >
Cloud cover valid for <grib_info key='valid-date'/>
</font>
<br/>
<font colour='HSL(29,0.43,0.75)'> Low </font>
<font colour='HSL(360,0.5,0.5)'> L+M </font>
<font colour='HSL(300,0.24,0.75)'> Medium </font>
<font colour='HSL(209,0.43,0.5)'> M+H </font>
<font colour='HSL(180,0.5, 0.75)'> High </font>
<font colour='HSL(120,0.24,0.5)'> H+L </font>
</text>
<coastlines map_grid_colour = 'tan'
map_grid = 'on'
map_coastline_colour = 'tan'/>
</map>
</page>
</magics>
Programunkat a Magics verziójának meghatározásával kezdjük – mint
mindig. Ugyanis ezzel jelezzük a felhasználónak, hogy jelen MagML fájl
a Magics mely verziójával kompatibilis (jelen esetben a 3.0 verzióval).
A program elején a szokásos módon a drivers címkébe írjuk a kimeneti
fájl típusát és nevét.
A page
címkében található a program lényegi része, azaz itt határozzuk
meg a kirajzolni kívánt térkép (map címke)
és az ábrázolni kívánt mező
(plot
címke) paramétereit, illetve ezek tulajdonságait. Továbbá itt
adjuk meg az ábrán megjelenő szövegdoboz tartalmát és annak
tulajdonságait.
A map
címke alatt először a projekció paramétereit adjuk meg, vagyis a
térképi vetület típusát (cylindrical=hengervetület) és a kivágat
adatait a bal alsó és jobb felső pont koordinátáival. Jelen esetben
Ázsiát rajzoljuk ki. A margókat 0-ra vettük, tehát nincs keret.
Majd a coastlines
alcímke attribútumait állítjuk be. A tengerek
fehérek, a szárazföldi területek krémszínűek, míg a partvonalak barnák
(’tan’). A térkép rácsvonalai és azok feliratai nem jelennek meg.
A plot
címke alatt elsőként az adatforrás típusát és nevét adjuk meg
elérési útvonallal együtt. Ezután következik a kiválasztott mező
ábrázolása. Először a contour
alcímke attribútumait állítjuk be. A
felhőborítottság ábrázolása intervallumonként és egy egységenként
történik,
nincsenek izovonalak és feliratok, s nem jelöljük a legmagasabb és
legalacsonyabb értékeket. -0.5 és 63.5 értékek között mindent ábrázol a
program. A színlistát alább meghatározzuk, az árnyékolási technika
pedig ’cell-shading’. Ez a módszer hasonló a műhold képekhez, minden
cellát kiszínez a cella értéke alapján. Az alapbeállítás szerint – amit
most mi is használunk – a cella színét a legközelebbi grid pont adja. A
színeket HSL(A) formátumban, azaz 3 számmal adjuk meg. Az első szám egy
szög (0-360°) jelenti a színárnyalatot, a második (0-1) a
színtelítettséget, a harmadik szám (0-1) pedig a fényerőt
reprezentálja. Miután az ábrázolásnál használt színeinket listába
vettük, bezárjuk a plot címkét.
A text
címkében meghatározzuk a címet és annak tulajdonságait. Megadjuk
a szövegdoboz ábrához viszonyított szélességét és magasságát, valamint
fekete kerettel vesszük körbe, háttere pedig kitöltött (alapértelmezett
fehér). A betűk mérete 0.6, színüket pedig szavanként határozzuk meg. A
cím első fele fekete, és tartalmát a forrásfájlból veszi (az aktuális
dátum). A következő szavak színeit pedig szintén a HTML konvenciója
alapján adjuk meg, azaz a fentebb leírt HSL(A) formátumban.
Miután bezártuk a text címkét
ismét a coastlines
alcímke
attribútumainak adunk értéket. Egy következő rétegként megjelenítjük a
térképi rácsvonalakat barna (’tan’) színnel, valamint a partvonalakat
szintén barna (’tan’) színnel.
Végezetül bezárjuk a map és a page
címkéket, illetve lezárjuk programunkat.
Futtatás:
magmlx pelda_11.magml
Eredményül a következő térképet kapjuk:
|