Working with external data in GRASS 7: Difference between revisions

From GRASS-Wiki
Jump to navigation Jump to search
m (link trac)
Line 13: Line 13:


== Vector data ==
== Vector data ==
See {{twiki|Grass7/VectorLib/OGRInterface|trac wiki page}} for development issues.


External vector data can be linked via {{cmd|version=70|v.external}}. List of supported formats can be determined by
External vector data can be linked via {{cmd|version=70|v.external}}. List of supported formats can be determined by

Revision as of 09:07, 23 August 2011

This page explains how to work with external data in GRASS 7.

Raster data

External raster data can be linked via r.external. List of supported formats can be determined by

r.external -f

To link file-based data formats, eg. GeoTiff

r.external input=ncrast/urban.tif output=urban

Vector data

See trac wiki page for development issues.

External vector data can be linked via v.external. List of supported formats can be determined by

v.external -f

To link file-based data formats, eg. ESRI Shapefile

 v.external dsn=ncshape/ layer=railroads

Assuming that railroads.shp is located in directory ncshape.

To link database-based data formats, eg. PostGIS

v.external dsn=PG:dbname=pgis_nc -l

Data source <PG:dbname=pgis_nc> (format 'PostgreSQL') contains 4 layers:
bridges
...
v.external dsn=PG:dbname=pgis_nc layer=bridges output=b

Assuming that database pgis_nc has PostGIS layer named bridges. This layer is linked to GRASS mapset as vector map b.

Write access

OGR driver in GRASS 7 also supports write access to the external data. Showcase bellow:

v.external dsn=PG:dbname=pgis_nc layer=bridges output=b
v.out.ascii input=b where="cat < 10" --q

375171.4992779|317756.72097616|1
374247.5192779|317487.13697616|2
380230.2292779|316900.97897616|3
379191.4162779|316419.09697616|4
388958.8222779|316332.04697616|5
375875.2662779|316319.89597616|6
376393.5282779|316155.96797616|7
380647.5282779|316022.61797616|8
376739.6982779|315970.62597616|9
v.external.out dsn=PG:dbname=pgis_nc format=PostgreSQL
v.extract input=b output=b_9 where="cat < 10"
v.external dsn=PG:dbname=pgis_nc -l

Data source <PG:dbname=pgis_nc> (format 'PostgreSQL') contains 5 layers:
b_9
bridges
...

Example of direct access to external data without creating a link

v.out.ascii input=PG:dbname=pgis_nc@OGR layer=b_9

375171.4992779|317756.72097616|1
374247.5192779|317487.13697616|2
380230.2292779|316900.97897616|3
379191.4162779|316419.09697616|4
388958.8222779|316332.04697616|5
375875.2662779|316319.89597616|6
376393.5282779|316155.96797616|7
380647.5282779|316022.61797616|8
376739.6982779|315970.62597616|9

Using wxGUI

From menu

File -> Link external formats
Link external data - Layer Manager menu

or from toolbar in Layer Manager.

Link external data - Layer Manager toolbar (1)
Link external data - Layer Manager toolbar (2)