GRASS 6 Tutorial/Vector data management/es
Manejo de datos vectoriales
Importación de datos vectoriales
Los módulos v.in.*
and v.out.*
manejan la importación y exportación de datos vectoriales.
v.in.ogr
es muy usado y simplifica la importación de datos vectoriales; OGR soporta una gran variedad de formatos.
v.out.ogr
siempre exporta todo el mapa vectorial (independientemente de la Computational region/es región computacional.
Importando un Shapefile de ESRI
El siguiente ejemplo muestra el uso sencillo de v.in.ogr
, realiza la importación de un archivo Shapefile de ESRI al formato vectorial nativo:
v.in.ogr dsn=boundary_county.shp out=boundary_county
Sin embargo, v.in.ogr
tiene muchas opciones para importar subconjuntos (definidos espacialmente, o con SQL) y tipos de datos vectoriales.
Se puede hacer lo mismo usando la interfaz gráfica (GUI). La importación se realiza a través del Administrador de capas, en el menú Archivo->Importar datos vectoriales->Formatos de importación comunes [r.in.ogr]:
Se puede seleccionar un 'subconjunto de sus datos especificando la extensión espacial, o una consulta SQL definida con el parámetro where
:
v.in.ogr --o dsn=./ output=subset layer=boundary_county where="NAME = 'DUPLIN' OR NAME = 'WAKE'"
+----------------------------------------------------------------------------+ | Layer: subset | | Mapset: PERMANENT | | Location: nc_spm_08_geostat | | Database: /home/daniel/GRASSWiki/data | | Title: | | Map scale: 1:1 | | Map format: native | | Name of creator: daniel | | Organization: | | Source date: Wed Nov 7 16:10:01 2012 | |----------------------------------------------------------------------------| | Type of Map: vector (level: 2) | | | | Number of points: 0 Number of areas: 2 | | Number of lines: 0 Number of islands: 2 | | Number of boundaries: 2 Number of faces: 0 | | Number of centroids: 2 Number of kernels: 0 | | | | Map is 3D: No | | Number of dblinks: 1 | | | | Projection: Lambert Conformal Conic | | N: 258121.97732598 S: 106860.16001618 | | E: 732841.78315847 W: 610047.98051883 | | | | Digitization threshold: 0 | | Comments: | | | +----------------------------------------------------------------------------+
Enlace virtual a un Shapefile de ESRI
Si prefiere no importar los datos vectoriales al formato nativo de GRASS, puede crear un enlace usando el módulo v.external
:
Por ejemplo:
v.external dsn=./ output=boundary_county layer=boundary_county Building topology for vector map <boundary_county>... Number of nodes: 1707 Number of primitives: 1981 Number of points: 0 Number of lines: 0 Number of boundaries: 1055 Number of centroids: 926 Number of areas: 1055 Number of isles: 1055 Number of areas without centroid: 129
Importación de un archivo ASCII XY/XYZ
También puede generar un mapa de puntos vectoriales a partir de un archivo de texto que contenga coordenadas X,Y. Por ejemplo:
642934|95324 675695|139878 623277|158224 716318|138568 742527|164776 735975|196227 755631|200158
Redirija las coordenadas al módulo v.in.ascii
:
cat coords.txt | v.in.ascii out=points
Añada las categorías a los puntos vectoriales, para facilitar la unión con atributos:
v.category in=points out=points_final op=add v.category points_final op=report
También puede añadir una nueva tabla de atributos al mapa vectorial, usando v.db.addtable
:
v.db.addtable map=points
Es posible replicar el mismo procedimiento con datos tridimensionales (XYZ), modificando los argumentos de v.in.ascii
.
Es sencillo generar el mapa vectorial en GRASS a partir de un archivo de coordenadas X,Y,Z:
642934|95324|212 675695|139878|233 623277|158224|211 716318|138568|219 742527|164776|240 735975|196227|221 755631|200158|210
cat coords.txt | v.in.ascii -z out=points
Importar una tabla XY a partir de un DBMS o una hoja de cálculo (spreadsheet)
Si tiene una lista de coordenadas (x,y) con los atributos asociados guardada en una hoja de cálculo (DBF, CSV, Excel, etc). Es sencillo generar el mapa usando v.in.db
. En el siguiente ejemplo se importa la tabla "meteostations" que tiene las columnas 'east', 'north', 'quota' (z) y algunas columnas de atributos.
v.in.db driver=pg database="host=myserver.itc.it,dbname=mydb,user=name" table=meteostations x=east y=north z=quota key=id output=meteostations
Este comando crea un nuevo mapa vectorial (formato nativo) con los la tabla de atributos en un archivo DBF.
Podemos visualizar estos puntos en un monitor y consultarlos:
d.mon start=x0 d.vect meteostations d.what.vect
Importar un archivo DXF
Se pueden importar archivos DXF 2D o 3D a GRASS usando el módulo v.in.dxf
. Hacerlo desde la línea de comandos es muy sencillo:
v.in.dxf -1 Masterplanxy.dxf
100% Following DXF layers found: Layer 1: line Building topology for vector map <Masterplanxy>... Registering primitives... 64302 primitives registered 405521 vertices registered Building areas... 100% 0 areas built 0 isles built Attaching islands... Attaching centroids... 100% Number of nodes: 71142 Number of primitives: 64302 Number of points: 0 Number of lines: 64302 Number of boundaries: 0 Number of centroids: 0 Number of areas: 0 Number of isles: 0
También es posible realizarlo desde la GUI:
Y visualizarlo en el visualizador de mapas
Exportación de datos vectoriales
Usando el módulo v.out.ogr
es posible exportar datos vectoriales del formato nativo de GRASS a una gran variedad de formatos:
ESRI_Shapefile,MapInfo_File,TIGER,S57,DGN,Memory,BNA,CSV,GML,GPX,KML,GeoJSON,GMT,SQLite,ODBC,MSSQLSpatial, PostgreSQL,MySQL,PCIDSK,DXF,Geoconcept,GeoRSS,GPSTrackMaker,PGDump,GPSBabel,
Información introductoria sobre el procesamiento de datos vectoriales está disponible en las páginas del manual de GRASS.
Grass Six Tutorial Attribute Management
http://grass.osgeo.org/grass57/tutorial/attrib_storage.html
- General notes on Attribute management; Managing the default settings; Examples; Database Schema