Professional Documents
Culture Documents
Meteorological Applications - 2012 - Wang - MeteoInfo GIS Software For Meteorological Data Visualization and Analysis
Meteorological Applications - 2012 - Wang - MeteoInfo GIS Software For Meteorological Data Visualization and Analysis
ABSTRACT: MeteoInfo is a suite of software tools which has been developed for meteorological data visualization and
analysis. It includes a .NET class library for software developers and a desktop application for end users. MeteoInfo also
supports several basic GIS functions and can read widely several used meteorological data formats such as NetCDF and
GRIB. Complex meteorological analyses of grid and station data can be processed using provided data models. The class
library can be conveniently used to develop software routines for manipulating spatial and meteorological data. The desktop
application has a user friendly GUI and is a powerful tool to view and examine meteorological data sets. MeteoInfo can
also be run automatically using scripting with the IronPython language.
2. Data models and supported data formats and GIS fields. ESRI shape file is a widely used geospatial
vector data format for GIS software which stores geometries
2.1. Data models
of point, polylines and polygons, and their associated attribute
The natural features of the atmosphere are in three spatial information. MeteoInfo supports shapefile, the map data defined
dimensions (3D). Such features may change in time so four in GrADS, and custom wmf map data. In addition to vector
dimensional data (4D, space and time) are normally used data, the bmp, jpg, tiff, png and gif image data formats are also
in meteorological fields. In traditional GIS applications, this supported by applying the geolocation world file.
dynamic and multi-dimensional space is usually abstracted as Meteorological data formats currently supported by
static 2D (or 2.5D, such as Digital Elevation Models) objects by MeteoInfo are listed in Table 1 with details about the data type,
means of orthogonal projection and planar tessellation. There- file type, decoding level of difficulty, development organization
fore, the existing GIS applications are limited in their ability and primary users. The remainder of this section summarizes
to represent the spatiotemporal dynamics of natural phenomena these formats.
(Burrough, 1996; Wilhelmi and Brunskill, 2003). The study of NetCDF is a set of software libraries and self-describing,
dynamic and multi-dimensional GIS started in the mid 1980s. machine-independent data formats that support the creation,
Many spatiotemporal data models have been proposed, such access, and sharing of array-oriented scientific data. It is com-
as the Snapshot Data Model (Armstrong, 1988), the Space- monly used in climatology, meteorology and oceanography
Time Composite Data Model (Langran and Chrisman, 1988), applications, especially for four dimensional gridded data sets
the Event-based Data Model (Peuquet and Duan, 1995), and the from model output. Several conventions, e.g. Climate and Fore-
Object-oriented Data Model (Worboys, 1992; Rapper and Liv- cast (CF) and Cooperative Ocean/Atmosphere Research Data
ingstone, 1995). However, meteorological data modelling has
Service (COARDS), were adopted to promote the interchange
not been fully implemented in such spatiotemporal data mod-
and sharing of files created with the NetCDF API. The format
els. Further research is needed to develop data models better
is supported by many software packages, e.g. NCL, GrADS,
suited for meteorological data and to implement these models
NCO (Zender, 2008) and ArcGIS. In MeteoInfo, NetCDF grid
in GIS software applications.
data with CF conventions can be opened. NetCDF data from
At present, a feasible and effective approach is to develop
a comprehensive software tool which has the ability to handle WRF and CMAQ model output are also supported.
both 4D meteorological data and traditional vector and raster GRIB is a data format commonly used in meteorology to
GIS data. In this case, the 4D meteorological data model and store and exchange historical and forecast weather grid data.
2D/2.5D GIS data model are independent of each other as they It is standardized by the World Meteorological Organisation’s
are implemented in separate data analysis functions. The link- (WMO) Commission for Basic Systems. Currently there are two
age between them is to create 2D/2.5D vector or raster layers versions of GRIB in operational use. Data formatted according
from the results of 4D meteorological data analyses. The cre- to the first GRIB edition are slowly being converted over to the
ated GIS layers can be visualized and further analysed using second GRIB edition. GRIB is a self-describing binary format
GIS spatial analysis methods. and the data are packed to increase storage efficiency.
In the GrADS data format, raw binary data and metadata
2.2. Supported data formats are stored in separate files. The metadata file is called the data
descriptor file and contains a complete description of the binary
As meteorological GIS software, MeteoInfo was developed to data as well as instructions for decoding tools such as where to
support several popular data formats used in the meteorological find the data and how to read it. The GrADS data format and
Table 1. Supported meteorological data formats in MeteoInfo.
the software were developed and maintained by the Institute of has first to create an object of MeteoDataInfo class, then use
Global Environment and Society (IGES). the OpenNCData method to obtain the information in x, y, z
HDF-EOS (Hierarchical Data Format – Earth Observing and time dimensions. Two or one dimensional grid data can be
Systems) is a self-describing file format based upon HDF for obtained by the GetGridData method according to the dimen-
transfer of various types of data between different machines. It sion setting.
is a standard format to store data collected from EOS satellites. The data types mainly used in meteorological fields are grid
HDF-EOS5 is based on the HDF5 data model. data and station data which are implemented by the classes of
ARL packed data format is used by the NOAA Air Resource GridData and StationData, respectively. The GridData class has
Laboratory. An ARL packed data file consists of a series of the members of one-dimensional x and y co-ordinate arrays, a
fixed length records, one for each meteorological variable. The two-dimensional double data array and an undefined data value.
records are arranged in a time series with surface fields followed The StationData class has a two-dimensional array with the first
by upper air fields. Each record contains an ASCII header and dimension containing x, y, and the data value, and the second
is followed by the packed binary data, one byte per gird point. dimension containing the data point index. It also has a list
The HYSPLIT (Hybrid Single-Particle Lagrangian Integrated of station identifiers and an undefined data value. Both of the
Trajectory) model is popular for computing air mass trajectories data classes override the normal operators for data calculation.
and complex dispersion simulations using input meteorological A DataMath static class is also provided to implement com-
data in the ARL packed data format (Draxler and Hess, 1998). mon or special meteorological function operations for grid and
The output trajectory, concentration and particle data formats station data. It is similar to the raster analysis in conventional
are also supported in MeteoInfo. GIS software, but it is done without pre-created raster layers.
MICAPS (Meteorological Information Comprehensive Anal- Using these functions, several meteorological analyses are easy
ysis and Process System) is an operational data visualiza- to perform such as the calculation of wind divergence fields
tion software tool for forecasters in the China Meteorological from U - and V -components along x and y co-ordinates.
Bureau (CMA). It defines many kinds of meteorological data
formats for surface or upper observations, model outputs, satel- 3.2. Shape and layer
lite observations and typhoon pathways.
Several ASCII station data and grid data formats are also Geometric objects available in MeteoInfo are the point, polyline
supported by MeteoInfo to meet the demand of using simple and polygon, which are implemented by the classes PointShape,
and human readable data under some conditions. SYNOP is PolylineShape and PolygonShape, respectively.
a numerical code, called FM-12 by WMO, used for report- Three layer types are included and are implemented by
ing weather observations made by manned and automated VectorLayer, RasterLayer and ImageLayer classes. A vector
weather stations. METAR is an aviation routine weather layer contains a set of shape objects of a certain type (i.e. point,
report with the description of the meteorological elements polyline or polygon) and the attribute records of the shapes. A
observed at an airport at a specific time. It is highly stan- raster layer contains a grid data object which can be used for
dardized through the International Civil Aviation Organization further raster analysis. An image layer has an image object and
(ICAO). At present only the cycle METAR data of NOAA the respective geo-location parameters.
(http://weather.noaa.gov/weather/metar.shtml) is directly sup- The key step in the integration of meteorological data sets
ported by MeteoInfo. NOAA ISH is a worldwide database of with GIS is to create layers from the data set. A grid data set is
hourly and synoptic data. Longitude/latitude Station Data for- usually displayed as a polyline or polygon vector layer through
mat is a custom station data format in MeteoInfo. Two ASCII contour analysis which is performed using the wContour class
grid data formats are supported: ESRI ASCII Grid Data; and library (Wang, 2011). The contour analysis is normally slow
Surfer ASCII Grid Data. for data with a large number of grid cells and in this case using
a raster layer is a preferred choice. There is a specific polyline
vector layer to represent streamlines generated by the wContour
3. MeteoInfo class library components library from U - and V -component grid data. A station data set
can be directly displayed as a point layer and can include the
The MeteoInfo .NET class library is the core of the software. types of wind arrow, wind barb and station model. Stations data
It includes the main components of multi-source data read- can be also displayed as a contour polyline or polygon layer
ing/writing and analysis, layer management, rendering, projec- through interpolation and contour analysis of the data. Inverse
tion, map and layout controls. The key namespaces and classes Distance Weighted (IDW) and Cressman interpolation methods
of the library are shown in Figure 1. The assembly namespace is (Cressman, 1959) are provided by the wContour library (Wang,
MeteoInfoC, and includes the main namespaces of Data, Shape, 2011). Attribute data are also assigned when shape objects are
Layer, Map, Legend, Layout, Projection and Geoprocess. Each created from meteorological data sets so that further analysis
of these namespaces is described in more detail below. with the attribute data is possible.
The Data namespace has two sub-namespaces – MapData The three main user controls in the MeteoInfo library are
and MeteoData. The MapData namespace includes classes to MapView, MapLayout and LayersLegend which are under the
manipulate traditional GIS data formats such as shape file, while namespaces of Map, Layout and Legend respectively. The
the supported meteorological data formats can be handled by MapView control includes a list of layers and provides the ren-
the classes in the MeteoData namespace. dering functions to draw the layers in the control according
The traditional four-dimensional data model is implemented to their LegendScheme objects. This control uses the Win-
with the MeteoDataInfo class which includes data set informa- dows graphics device interface plus (GDI+) library which is
tion objects. For example, to read a NetCDF data set, the user enabled to work with Linux-like systems based on Mono. The
NetCDF, ...
MeteoData
Data MeteoDataInfo
GridData, StationData
DataMath
MeteoInfoC
Map MapView
Layout MapLayout
Projection
Geoprocess GeoComputation
MIApp
Figure 1. Key namespaces and classes in the MeteoInfo class library. Namespaces are in rounded rectangles and classes are in square-cornered
rectangles.
LayersLegend control is used to organize layer management the MeteoData namespace. The GeoComputation class in the
such as changing layer properties and order. The MapLayout Geoprocess namespace was developed to handle certain other
control contains the components for the map, legend, scale spatial analyses of vector data such as the evaluating whether
bar, north arrow and graphic for preparing publication quality a point resides in a polygon, clipping of geometric objects, and
figures. The layer is rendered according to its legend scheme length and area calculations.
object which uses the values of a field present in the layer’s
attribute table. Labels from the attribute table can also be ren- 3.5. Software development using MeteoInfo class library
dered in the MapView control. The MapView object is packed
in a MapFrame class which is an intermediate class between The basic GIS and meteorological data management functions
the MapView and LayersLegend classes. Multiple MapFrame can be called easily from the MeteoInfo library to develop
objects are supported in the LayersLegend and MapLayout con- meteorological data viewing and analysis software further. For
trols so the library can manipulate multi-panel plots. example, TrajStat, an air mass back trajectory statistical analysis
The projection code comes from DotSpatial which is an tool (Wang et al., 2009), was re-developed based on the library
open source .NET GIS project (http://dotspatial.codeplex.com/) with new capabilities for meteorological data views, on-the-fly
released under GNU (GNU’s Not Unix) Lesser General Public projection, and map layout.
License, in which the Proj4 C code is transferred to C# for the To demonstrate the usage of the library, a demonstration
most commonly used projections (Dunsford, 2010). Based on program was developed using C# in Microsoft Visual Studio
the projection functions, on-the-fly projection ability has been 2008 Express Edition. The source code of the demonstration
implemented in the MapView control; this capability is essential program and the library help documentation are provided on
for meteorological data viewing. the website (http://www.meteothinker.com).
3.4. Geoprocess
4. MeteoInfo desktop application and scripting
The spatial analysis capabilities of MeteoInfo are implemented 4.1. Desktop application
through different approaches. Spatial interpolation and contour
analysis algorithms are provided in the wContour library. The MeteoInfo desktop application was developed based on
Grid and station data calculation functions are included in the MeteoInfo class library for users to manipulate multi-source
meteorological data interactively. The main user interface of the U - and V -components are needed for the wind vector, barb and
desktop application includes the general sections: menu; tools; streamline options. The application will try to identify the U
status; layer management; map and layout visualization; and and V variables automatically according to their names or users
a meteorological data management dialogue (Figure 2). Layer can assign them manually. Figure 2 shows an example of the
properties and order can be controlled in the layer management layers wind barb, streamline and wind speed (shaded) created
section. The layers are plotted in the map section according from a grid data set.
to the order and legend setting. Users can adjust the map, Section plot functions are provided in the meteorological
title, legend, illustration and graphic components in the layout data dialogue so data with dimension settings other than x/y
section before outputting the plot. Zooming and panning tools can be plotted. Two-dimensional grid data can be obtained
can be used in the map plot. The vector layers also have with two ranged dimensions and the other two dimensions
attribute data which can be identified using the ‘Identifier’ tool fixed. For example, Figure 3(a) shows a shaded plot with
and the layers can be labelled by the attribute data accessed by range dimensions of z/y or level/latitude. One-dimensional
fields. Users can interactively draw new graphics (point, label, data can be obtained when only one dimension is ranged and
line, polygon and rectangle) using the drawing tools provided the other three dimensions are fixed (Figure 3(b)). The one-
by the application. A ‘Measurement’ tool is also provided to dimensional plot is implemented with the ZedGraph library
calculate the length or area of the selected or user-plotted
(http://sourceforge.net/projects/zedgraph).
polyline or polygon objects.
A point layer can be created from station data. Station
Meteorological data with the supported formats can be
model, wind vector and barb, and weather symbol layers can
opened in the meteorological data dialogue and the informa-
be generated if the station data set includes some of the normal
tion about dimensions and variables are read out. The default
meteorological variables such as temperature, wind direction,
dimension setting is x/y or longitude/latitude so the meteo-
rological plot can be overlaid on map layers. The other two wind speed, cloud cover and weather phenomena (Figure 4).
dimensions can be fixed by setting ‘Time’ and ‘Level’ options The visible status of each shape in the station model layer
in the dialogue as well as a variable which needs to be selected. is automatically set according to the view extent of the map
A simple math parser function is included so users can define to ensure the shapes will not overlap. Interpolation functions
a new variable by inputting a formula that operates on exist- (IDW and Cressman methods) can be used for interpolating
ing variables. For example, Figure 2 shows a new wind speed station data to grid data and then a contour or shaded layer can
variable created from existing ‘uwnd ’ and ‘vwnd ’ variables. be created. For example, Figure 4 shows a shaded precipitation
For grid data, the drawing types of contour, shaded, grid fill, layer created from a station data set.
grid point, vector, barb, streamline and raster are available. A A layout arrangement sample is also presented in Figure 4.
polyline or polygon layer is created by contour analysis of the The projections normally used in meteorological fields can be
grid data using contour or shaded options. With the grid fill, set in the projection setting dialog for on-the-fly map projection.
grid point or raster options, the grid data will be presented For example, in Figure 4 the layers were projected into Lambert
as a polygon, point or raster layer without contouring. The Conformal projection. Longitude/latitude grid lines and labels
raster option is a much faster option than the other options for can be plotted automatically in the layout section. The legend,
grid data with a large number of cells. Two grid data sets of plot title, scale bar and north arrow were also added. A map
Figure 2. Main user interface of the MeteoInfo desktop application. The plot also shows the layers created from grid data. This figure is available
in colour online at wileyonlinelibrary.com/journal/met
Figure 3. (a) Sample two-dimensional section plot and (b) one-dimensional plot. This figure is available in colour online at wileyonlinelibrary.com/
journal/met
of the South China Sea area was plotted using the multi- in a given district represented by a polygon object can be
MapFrame function. Users can set a polygon layer as a mask- selected from a larger network of stations. Shaded polygons
out layer so that only the contents inside the polygon shapes analysed by contouring a meteorological data set can be clipped
are visible. For example, in Figure 4 the precipitation shaded by the given district and the areas of the clipped polygons inside
layer was masked out by a China administration layer. the district can be calculated.
Trajectory data, e.g. an air mass trajectory or a typhoon path,
can be plotted as a polyline or point layer to view the pathway 4.2. Scripting
and the properties at each node point. Users can plot a weather
analysis or forecast map by using the drawing tools. The data The ability to write scripting programs for data analysis
are presented as various layers which make it easy to elucidate and automatic execution is quite important for managing
and compare the various properties of the data set. large data sets and for daily operational work. The script-
The functions of clipping and selection by attributes and/or ing capability also provides much greater flexibility for data
location support further spatial analysis of geometric objects in analysis. A commonly used scripting language, IronPython
vector layers. For example, the meteorological stations located (http://ironpython.codeplex.com/) has been incorporated into
Figure 4. Sample plot from station data. The plot is projected with Lambert Conformal projection and arranged in the layout interface. This
figure is available in colour online at wileyonlinelibrary.com/journal/met
Figure 5. Sample plot showing a water vapour flux divergence field calculated from other parameters using the MeteoInfo scripting program.
This figure is available in colour online at wileyonlinelibrary.com/journal/met
selecting by location. The analysis functions available for grid Dunsford HA. 2010. Design and Development of an Extensible, Inter-
data in the meteorological data models, including interpolation changeable Component Architecture for Open-Source Geographic
and contouring, should also be implemented for the GIS raster Information Systems. Idaho State University: Pocatello, ID.
layer to improve the spatial analysis ability of raster data. More Dyras I, Dobesch H, Grueter E, Perdigao A, Tveito OE, Thornes JE,
Wel Fvd, Bottai L. 2005. The use of geographic information systems
spatial functions such as buffering and overlay are needed to in climatology and meteorology: COST 719. Meteorol. Appl. 12:
enhance the ability to analyse vector data. 1–5.
Dyras I, Serafin-Rek D. 2005. The application of GIS technology for
precipitation mapping. Meteorol. Appl. 12: 69–75.
Acknowledgements Elbir T. 2004. A GIS based decision support system for estimation,
This research was supported by grants from the National Key visualization and analysis of air pollution for large Turkish cities.
Project of Basic Research (2011CB403401), Key Project of Atmos. Environ. 38: 4509–4517.
the National Science & Technology Pillar Program (Grant No. Feidas H, Kontos T, Soulakellis N, Lagouvardos K. 2007. A GIS tool
for the evaluation of the precipitation forecasts of a numerical
2008BAC40B01) and CAMS project (2010Z002). I am grateful weather prediction model using satellite data. Comput. Geosci. 33:
to anonymous reviewers for their constructive suggestions 989–1007.
and comments. Thanks are also extended to Dr Jay Turner Hochadel M, Heinrich J, Gehring U, Morgenstern V, Kuhlbusch T,
(Washington University in St. Louis) for editing the manuscript. Link E, Wichmann H-E, Krämer U. 2006. Predicting long-term
average concentrations of traffic-related air pollutants using GIS-
based information. Atmos. Environ. 40: 542–553.
References Langran G, Chrisman NR. 1988. A framework for temporal geographic
Armstrong MP. 1988. Temporality in spatial databases. Proceedings: information. Cartographica 25: 1–14.
GIS/LIS’88 2: 880–889. Lennon JJ, Turner JRG. 1995. Predicting the spatial distribution of
Bell VA, Moore RJ. 1998. A grid-based distributed flood forecasting climate temperature in Great Britan. J. Anim. Ecol. 64: 370–392.
model for use with weather radar data: part 1. Formulation. Hydrol. McKenney DW, Hutchinson MF, Kesteven JL, Venier LA. 2001.
Earth Syst. Sci. 2: 265–281. Canada’s plant hardiness zones revisited using modern climate
Bradley AV, Thornes JE, Chapman L, Unwin D, Roy M. 2002. interpolation techniques. Can. J. Plant. Sci. 81: 129–143.
Modeling spatial and temporal road thermal climatology in rural Matuschek O, Matzarakis A. 2011. A mapping tool for climatological
and urban areas using a GIS. Clim. Res. 22: 41–55. applications. Meteorol. Appl. 18: 230–237.
Burrough PA. 1996. Natural objects with indeterminate boundaries.
Menkir A, Kling JG, Jagtap SS, Aliu BA. 2000. GIS based classifica-
In Geographic Objects with Ineterminate Boundaries, Burrough PA,
Frank AU (eds). Taylor and Francis: Bristol, UK; 2–28. tion of maize testing locations in West and Central Africa. Maydica
45: 143–150.
Chapman L, Thornes JE. 2003. The use of geographical information
systems in climatology and meteorology. Prog. Phys. Geog. 27: Ninyerola M, Pons X, Roure JM. 2000. A methodological approach of
313–330. climatological modelling of air temperature and precipitation through
Cressman GP. 1959. An operational objective analysis system. Mon. GIS techniques. Int. J. Climatol. 20: 1823–1841.
Weather Rev. 87: 367–374. Peuquet DJ, Duan N. 1995. An event-based spatiotemporal data model
Dai J, Rocke DM. 2000. A GIS-based approach to spatial allocation of (ESTDM) for temporal analysis of geographical data. Int. J. Geogr.
area source solvent emissions. Environ. Modell. Softw. 15: 293–302. Inf. Syst. 9: 7–24.
Draxler RR, Hess GD. 1998. An overview of the HYSPLIT 4 Rapper J, Livingstone D. 1995. Development of a geomorphological
modelling system for trajectories, dispersion, and deposition. Aust. spatial model using object-oriented desing. Int. J. Geogr. Inf. Syst.
Meteorol. Mag. 47: 295–308. 9: 359–384.
Rebolj D, Sturm PJ. 1999. A GIS based component-oriented integrated Wang YQ. 2011. wContour: A .NET class library of contour-related
system for estimation, visualization and analysis of road traffic air algorithms. Comput. Geosci. DOI: 10.1016/j.cageo.2011.1012.1003.
pollution. Environ. Modell. Softw. 14: 531–539. Wang YQ, Zhang XY, Draxler R. 2009. TrajStat: GIS-based software
Shipley ST. 2005. GIS applications in meteorology, or adventures in a that uses various trajectory statistical analysis methods to identify
parallel universe. Bull. Am. Meteorol. Soc. 86: 171–173. potential sources from long-term air pollution measurement data.
Shipley ST. 2006. Classroom exercises in GIS meteorology. 15th Environ. Modell. Softw. 24: 938–939.
Symposium on Education of 86th AMS Annual Meeting, Atlanta, GA; Wilhelmi OV, Brunskill JC. 2003. Geographic information systems
P1.26. in weather, climate, and impacts. Bull. Am. Meteorol. Soc. 84:
Tarhule A, Saley-Bana Z, Lamb PJ. 2009. Rainwatch: a prototype GIS 1409–1414.
for rainfall monitoring in West Africa. Bull. Am. Meteorol. Soc. 90:
1607–1614. Worboys MF. 1992. A model for spatio-temporal information.
Tveito OE, Bjørdal I, Skjelvåg AO, Aune B. 2005. A GIS-based agro- Proceedings: The 5th International Symposium on Spatial Data
ecological decision system based on gridded climatology. Meteorol. Handling, Charleston, SC.
Appl. 12: 57–68. Yin Z-Y, Liu XD, Zhang XQ, Chung C-F. 2004. Using a geographic
Tveito OE, Førland E. 1999. Mapping temperatures in Norway information system to improve Special Sensor Microwave Imager
applying terrain information, geostatistics and GIS. Nor. Geogr. precipitation estimates over the Tibetan Plateau. J. Geophys. Res.
Tidsskr. – Norw. J. Geogr. 53: 202–212. 109: 110, DOI: 110.1029/2003JD003749.
Ustrnul Z, Czekierda D. 2005. Application of GIS for the development Zender CS. 2008. Analysis of self-describing gridded geoscience
of climatological air temperature maps: an example from Poland. data with netCDF operators (NCO). Environ. Modell. Softw. 23:
Meteorol. Appl. 12: 43–50. 1338–1342.