Article Index

Geographical Information Systems are now used for all sorts of purposes from town planning to epidemic monitoring.

GPS receivers are used extensively these days for recording the location of cave entrances. These data can be exported as a gpx file which can be opened in Google Earth. These will show as a waypoint or a Placemark as it's known in Google Earth. This is the simplest form of georeferencing. The points show on a map of the world and each point can be given a name and can have a symol assigned to it.

Some cave survey software has the ability to export cave data in many formats. Some of these formats can be used in other programs such as Google earth or GIS programs. Therion will export kml and esri. 

Bukit Agung on Google EarthWhen working in Therion one of the checks I make is to export a kml (keyhole markup language) file and open it in Google Earth. This allows me to quickly check if fixed stations put the cave in the correct geographical loacation. It's quite easy to mistype a coordinate or to reverse the x and y coordinates resulting in a Derbyshire cave appearing in the middle of the Pacific. Of course, you can only create a kml if you have a georeference point (ie some global coordinates). Most if not all cave survey software create surveys by default in a local or aribtrary coordinate sytem.

Peak Caves DistributionGIS or Geographical Information Systems give the abilty to interrogate data and there are many tools available for sorting and symbolising geographical data. In caving terms the ability to interrogate datasets can be quite useful. In it's simplest form it may be a matter of checking out where most entrances occur to enable searching for new caves to be more focussed. Perhaps the majority of caves are found around the periphery of a limestone area or between two altitudes maybe related to a particular bed. Of course the ability to perform these queries will depend on those data being available. If you only record the latitude and longitude you can find the altitude by looking at a map but if you know where the limestone boundary is or which beds are at which altitudes then you have more possibilites. Fortunately much of this data collection has already been done for us and may well be available for free on the internet.

I have started to use GIS for cave surveys but am still only scratching the surface.

ArcGis is commonly used commercially but is only available for the Windows platform and it's expensive.

The software I use is Quantum GIS or QGIS for short. This is open source and is free.

I have used Google Earth, Garmin Base Camp, Compass and Therion for producing the input data for QGIS.

I use Therion for producing surveys and one of the export options is an ESRI format. This is a GIS shape file which is basically a small database which defines the geographical information of the object. The object may be a survey, a cave or a whole cave system or even all the caves in a specific area.

To export an ESRI shape file from Therion there are two options, 2d Map or 3d Model

These are imported into QGIS as a vector layer. Here are examples of the layers produced for a single cave.

QGIS Layers

Option 1 - 2d Map

Therion command 'export map -output foldername -format esri'

This outputs the following entities which can be imported into a vector layer in QGIS

  • lines2d - lines in each scrap
  • outline2d - scraps in each map
  • points2d - points in each scrap

The llayer's attributes can be viewed in the layer's Attributes Table

lines2d attributes


outline2d Attributes Table

points2d Attribute Table

Option 2 - 3d Model

Therion command 'export model -output foldername -format esri'

This outputs the following entities

  • walls3d - scraps in each survey
  • shots3d - survey legs in each survey
  • stations3d - stations in each survey

walls3d Attributes Table

shots3d Attributes Table

shots3d Attributes Table

The 2d attributes have the following meaning


scrap_ID - ID of the scrap containing the line

type - centreline, wall, pit etc.

subtype - bedrock, blocks, pebbles etc.


  • scrap_id - id of scrap containing the point
  • type - station, entrance, sand,stalagmite etc.
  • typefc - NULL, 7, X not worked out what these are yet
  • typefcr - Angle of symbol orientation (rotation)
  • subtype - all seem to be NULL not worked out what these are yet
  • stname - station name
  • stsurvey - survey name


  • ID
  • name - scrap name
  • title - scrap title
  • map_ID - id of map containing the scrap
  • map_level - presumably level of map relative to other maps
  • map_title - self explanatory
  • survey - all seem to be NULL maybe because I'm not using a survey container
  • z - this seems to be an altitude probably for colouring scraps by altitude


  • id - id of scrap
  • name - name of scrap
  • survey - all are NULL maybe because I'm not using a survey container


  • from - station number
  • to - station number
  • survey - survey name
  • surface - flag all set to 1
  • duplicate - flag all set to 1
  • approxim - flag all set to 1
  • splay - flag all set to 1


  • id - id of station
  • uid - id but not sure to what it refers
  • name - station name
  • survey - survey name
  • surface- flag all set to 0
  • fixed - flag all set to 1
  • entrance - flag all set to 1
  • continuation - flag all set to 1
  • comment - entrance

The esri output functionality of Therion doesn't seem to be complete or maybe I just don't understand it properly. Many of the attributes aren't assigned any value or appear to have just a default value. These attributes are certainly used in Therion but are not exported.

In Part 2 I'll look at how to enter data into QGIS.