Geovisualization frequently requires us to consider spatial data of different types from a variety of 'formal' and 'informal'
sources using
vector
and
raster
data models at various scales. In this tutorial we have used
KML
to specify 'maps' that are cartographically and geographically informed and have seen how spatial data that
are transformed and manipulated in a
GIS
can be coded in
KML
.
Geobrowsers
such as
Google Earth
allow us to visually integrate
these various inputs into our geovisualization. They support the exploratory process with ancillary data from a variety of
sources and some
useful interactions.
Using
KML
to specify the geometry, cartography and structure of our data allows us to visualize it in
Google Earth
for consideration and visual comparison with a range of ancillary data (such as recent air
photography, place names, road networks and data from the 'Geographic Web'.).
Using
Google Earth
allows us to explore detail in a number of ways : spatial detail by zooming in and
'geographic filtering' as well as attribute detail by inspecting individual items and requesting 'details on demand'. Despite
its rich
source of data and quick interactive interface
Google Earth
does not have sophisticated geographic
information processing functionality currently, but using a
GIS
such as
LandSerf
allows us to produce visual output in forms that are acceptable to the
geobrowser
.
Our argument is that the mashup creates a whole that is greater than sum of parts as surfaces can be compared with point,
line and area-based
data, ancillary photographic data and multimedia from informal and formal sources. The
KML
/
Google Earth
combination provides the 'glue' to integrate data sources and facilitate interaction. It
allows us to filter by space, time and attribute to support this process and provides a useful and flexible environment for
the kind of open
exploration that is typical of geovisualization in which data and functionality needs change rapidly (Dykes 2005). These
capabilities may be useful for developing geovisualization mashups in applied situations (Wood et al. 2007).
To use the analysis performed by LandSerf in Google Earth we need to export the new surfaces from LandSerf into a format Google
Earth can
read. You may have noted that the last line of the LandScript file in the previous section created a file called flickrChi.kmz.
A .kmz file is simply a compressed version of one or more KML files. In this case the file contains
two compressed files - image.png and image.kml. The former is a
high resolution version of the map explored in LandSerf, the latter provides the georeferencing instructions for Google Earth.
It is shown below :
<?xml version="1.0" encoding="UTF-8"?><!--KML file created by LandSerf 2.3--><kml xmlns="http://earth.google.com/kml/2.1"><Document xmlns:xlink="http://www.w3/org/1999/xlink"><Region><LatLonAltBox><north>49.860764</north><south>24.985762</south><east>-66.68767</east><west>-124.97933</west></LatLonAltBox><Lod><minLodPixels>256</minLodPixels><maxLodPixels>-1</maxLodPixels></Lod></Region><GroundOverlay><name>Chi expectation surface</name><drawOrder>1</drawOrder><Icon><href>image.png</href></Icon><LatLonBox><north>49.860764</north><south>24.985762</south><east>-66.68767</east><west>-124.97933</west></LatLonBox></GroundOverlay></Document></kml>
The GroundOverlay element is used to position the image. In this example LandSerf also creates a
Region that is used to define the area in which the image is viewed. In this case, the region
simply repeats the georeferencing information used by the GroundOverlay, but Regions
can be used to define a set of multiple images to be displayed depending on where the user's viewpoint is relative to the
ground surface.
In particular the Lod ('Level of Detail') element is used to determine which images are displayed
depending on how many pixels wide an image would be drawn in Google Earth. This is the technique that is used by Google Earth
to replace
coarse satellite images with more detailed air photos as you zoom in towards a target.
A Googe Earth GIS Mashup
This final example integrates the various data sources that we have considered in this tutorial, and the exercise gives you
the opportunity
to explore them in
Google Earth
.
The following data have been generated and assembled for geovisualization in
Google Earth
and constitute
the mashup example that you will be using in the exercise :
The figure below shows an example of using the Chi distribution and Flickr point data in Google Earth. General spatial patterns of the observed and expected photo distributions can be compared with other geographic data. Additionally, individual photographs may be queried as part of the data exploration process.
Flickr and GIS surface data displayed in Google EarthFlickrChi.kmz and iPhoneChi.kmz
created by NetworkLink elements are used to integrate the data in a single downloadable You may find it useful to do so by reconsidering the questions that we posed at the outset ...
We believe that there is plenty of scope for using
KML
to describe our data in ways that are informed by
principles and techniques from
GI Science
. We encourage evaluation and reflection about the benefits
and problems associated with undertaking and supporting geovisualization in this way.
The vector representations used here in particular have limited scalability - there is a need to 'slice' the data as we have
done here
according to time, geography and 'interestingness'. Whilst
Google Earth
allows us to change scale rapidly
and load appropriate data, switching between overview, filter and detail is cognitively taxing as well as technically difficult.
The continual
use of the Internet in this synchronous tutorial has exacerbated the issue. If you would like to download a larger sample
of the
Flickr
data set then we encourage you to do so after any scheduled teaching has finished.
TimeStamp encodings introduced in the first session.
We conclude that there is considerable scope for supporting geovisualization using technologies and data sources that are open and that contain opportunities for development. Mashups, that combine data and functionality from a range of sources have potential for helping us understand and generate ideas from the data sets to which we have access.
We hope that this short 'hands-on' and example-based introduction has helped introduce you to some of these possibilities and given you some ideas as to how you might develop mashups.
We encourage you to use the examples provided here and the various references to inform your own visualization mashups. We would be pleased to hear about your work.