GRASS 6 Tutorial/Vector data management/es

From GRASS-Wiki
Revision as of 14:21, 4 August 2016 by ⚠️Dat (talk | contribs) (GRASS 6 Tutorial/Vector data management/es)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

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
cats and layers in GRASS GIS
Imagen tomada de Vector Database Management