wiki:UserGuidelines/GIS/Data

Version 41 (modified by Fran Boon, 11 years ago) ( diff )

--

User Guidelines for GIS Data

Assumes installation of the relevant tools: InstallationGuidelinesGISData

Import Data

Geonames

  1. Unzip the downloaded country file (a TAB-separated list) from http://download.geonames.org/export/dump/
    • e.g. PK.txt
  2. Transform each line in this file into XML by regular expression:
    ^(\d*)\t([^\t]*)\t([^\t]*)\t([^\t]*)\t([0-9\.]*)\t([0-9\.]*)\t[^\t]*\t([A-Z]*).*
    
    into:
    
    <location>
           <id>$1</id>
           <name>$2</name>
           <asciiName>$3</asciiName>
           <localNames>$4</localNames>
           <lat>$5</lat>
           <lon>$6</lon>
           <featureClass>$7</featureClass>
    </location>
    
    

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

OpenStreetMap

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

Shapefiles

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/bulk_gis.py

  • These will move to controllers/importer.py

WFS

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

Display Data

GeoServer

Shapefiles

e.g. Country Outlines:

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

su postgres
shp2pgsql -s 4326 -I TM_WORLD_BORDERS-0.3.shp public.countries | psql -d gis

To reproject the data into 900913 for a slight performance advantage:

drop constraint srid;
update table set geomcolumn=transform(geomcolumn,900913);

Get GeoServer to serve as WMS / WFS

Set up TileCache

  • tbc

Add WMS Layer to Sahana Eden

  • tbc

Grid

tbc: BluePrintGISGrid

Topographic Maps

Old Printed Maps

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

PostgreSQL management

  • Connect to Database (or use pgAdmin III GUI's PSQL Console on plugins menu)
    su postgres
    psql
    

or

psql -d my_spatial_db -U username
  • List Databases
    \l
    
  • List Tables
    \d
    
  • 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

OGC (WMS/WFS)


GIS

Attachments (12)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.