Version 33 (modified by Fran Boon, 14 years ago) ( diff )


User Guidelines for GIS Data

Assumes installation of the relevant tools: InstallationGuidelinesGISData

Import Data


  1. Unzip the downloaded country file (a TAB-separated list) from
    • e.g. PK.txt
  2. Transform each line in this file into XML by regular expression:

This can be done using an RE-capable editor (e.g. Kate), Perl or even Python. Note: Need to replace & with &amp; and to remove any invalid characters

  1. Transform into S3XRC-XML using XSLT, stylesheet is available at

To Do:

  • ADM1->ADM4, PPLx to Levels L1->L4 (done)
  • Link to L1 -> L0
  • Use hierarchy.txt to link L2->L1
    • unfortunately no data for L3/L4 :/
  • Remove L2->L4 for unaffected areas


We have a stylesheet to import .osm files, but this needs work to understand the admin hierarchy properly.


Inspect the data using qGIS.

Use ogr2ogr to convert the data:

ogr2ogr -f CSV TM_WORLD_BORDERS-0.3.csv TM_WORLD_BORDERS-0.3.shp
ogr2ogr -f geojson TM_WORLD_BORDERS-0.3.json TM_WORLD_BORDERS-0.3.shp

If needing to reproject (e.g. for the Haiti Departements):

ogr2ogr -f CSV haiti_departments Haiti_departementes_edited_01132010.shp -s_srs EPSG:32618 -t_srs EPSG:4326 -lco GEOMETRY=AS_WKT

NB AS_WKT requires OGR v1.6+

Some tools for importing locations from CSV files are available in controllers/

  • These will move to controllers/


It is possible to use the WFS Plugin to get data into qGIS & thence export into other formats

Display Data


e.g. Country Outlines:

Import into PostGIS (or use pgAdmin III GUI's Shapefile loader on plugins menu)

createdb gis
createlang plpgsql gis
psql -d gis -f /usr/share/lwpostgis.sql
psql -d gis -f /usr/share/spatial_ref_sys.sql
shp2pgsql -s 4326 -I TM_WORLD_BORDERS-0.3.shp public.countries | psql -U postgres -W -d gis

Get GeoServer to serve as WMS / WFS

Set up TileCache

  • tbc

Add WMS Layer to Sahana Eden

  • tbc


tbc: BluePrintGISGrid

Topographic Maps

Old Printed Maps

Old Printed Maps can be 'Rectified' to be overlaid on the base maps:

PostgreSQL management

  • Create a new spatially-enabled database:
    createdb my_spatial_db
    createlang plpgsql my_spatial_db
    psql -d my_spatial_db -f /usr/share/lwpostgis.sql
    psql -d my_spatial_db -f /usr/share/spatial_ref_sys.sql
  • Connect to Database (or use pgAdmin III GUI's PSQL Console on plugins menu)
    psql -d my_spatial_db -U username
  • Add Spherical Mercator projection (check
    INSERT into spatial_ref_sys (srid, auth_name, auth_srid, srtext, proj4text) values (900913 ,'EPSG',900913,'GEOGCS["WGS 84", DATUM["World Geodetic System 1984", SPHEROID["WGS 84", 6378137.0, 298.257223563,AUTHORITY["EPSG","7030"]], AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich", 0.0, AUTHORITY["EPSG","8901"]], NIT["degree",0.017453292519943295], AXIS["Longitude", EAST], AXIS["Latitude", NORTH],AUTHORITY["EPSG","4326"]], PROJECTION["Mercator_1SP"],PARAMETER["semi_minor", 6378137.0], PARAMETER["latitude_of_origin",0.0], PARAMETER["central_meridian", 0.0], PARAMETER["scale_factor",1.0], PARAMETER["false_easting", 0.0], PARAMETER["false_northing", 0.0],UNIT["m", 1.0], AXIS["x", EAST], AXIS["y", NORTH],AUTHORITY["EPSG","900913"]] |','+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +no_defs');
    • List Databases
    • List Tables
    • List Table structure
      \d tablename
      select field/* from tablename where field = 'value';

PostGIS functions

  • Centroids
    SELECT name, iso2, asText(ST_Transform(ST_Centroid(the_geom), 4326)) AS centroid FROM countries;

Data Sources



Attachments (12)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.