On Wed, 15 Dec 2010, Pierre Roudier wrote:

Roger,

The latest (0.6-23) spgrass6 has a fix for a specific problem in the layer
parameter of v.out.ogr in GRASS7 - I see that you are using the previous
spgrass6. Could you try updating spgrass6?


I did update and got the same error on both GRASS 6.4 and GRASS 7.0

Pierre,

Please use a toy example, with a common data set such as spearfish. You have 355021 areas, which must be getting close to maxing out what a shapefile can take.

Using GML is almost certainly a bad idea, as everything gets converted to text.

The main problem of trying to use other drivers than "ESRI Shapefile" is that each driver has very specific requirements of the dsn and olayer strings. The interface functions for vector data presuppose "ESRI Shapefile", so dsn is a directory, and olayer is the shared file name within the directory. This is what you are seeing in the error messages below. ESRI Shapefile works with a directory as dsn, GML doesn't; ESRI Shapefile doesn't work with a file as dsn, GML does. For GML, KML, and some others, the dsn is a file name, and olayer is a placeholder. Providing the driver-specific modifications is arguably not a robust way to proceed.

I'm unsure about the advisability of persisting with a driver= argument. I'd welcome arguments for or against, and if for, some R code to match the drivers to the dsn/olayer formats, that does not presuppose the presence of drivers that have external dependencies.

I would suggest that you try to install the GRASS plugin for GDAL/OGR, and try to use that, since an intermediate file solution with the standard driver seems undesirable.

I'm also very unsure about what you want to do with the data in R. Visualising will be painfully slow, and if you need to do analysis on the attribute data alone, you may as well transfer just that, not the geometries.

Have you considered using a database back-end?

Note that you have problems in ph_cl which require the c flag.

Roger


If that doesn't work, please move thread only to grass-stats, and try using
v.out.ogr to export the vector to the GRASS mapset temporary directory
manually - use g.tempfile to find out what the path to that directory is. If
v.out.ogr appears to complete without problems, do check the temporary
directory to be sure.


The output of g.tempfile is:

/home/roudierp/Documents/GRASSDATA/NZTM2000/nitrif_inhib/.tmp/A208_RoudierP/18058.0

When using that tempfile for export as Shapefile it fails:

v.out.ogr in=ph_cl
dsn='/home/roudierp/Documents/GRASSDATA/NZTM2000/nitrif_inhib/.tmp/A208_RoudierP/18058.0'
format=ESRI_Shapefile
WARNING: The map contains islands. To preserve them in the output map, use
        the -c flag
ERROR 1: 
/home/roudierp/Documents/GRASSDATA/NZTM2000/nitrif_inhib/.tmp/A208_RoudierP/18058.0
is not a directory.

ERROR: Unable to open OGR data source
      
'/home/roudierp/Documents/GRASSDATA/NZTM2000/nitrif_inhib/.tmp/A208_RoudierP/18058.0'

However, if I specify the tmp folder that works:
v.out.ogr in=ph_cl
dsn='/home/roudierp/Documents/GRASSDATA/NZTM2000/nitrif_inhib/.tmp/A208_RoudierP/'
format=ESRI_Shapefile

BUT - and that's where it gets tricky, if I want to use the GML
driver, this is the opposite situation:

v.out.ogr in=ph_cl
dsn='/home/roudierp/Documents/GRASSDATA/NZTM2000/nitrif_inhib/.tmp/A208_RoudierP/'
format=GML
ERROR 4: Failed to create GML file
/home/roudierp/Documents/GRASSDATA/NZTM2000/nitrif_inhib/.tmp/A208_RoudierP/.
ERROR: Unable to open OGR data source
      
'/home/roudierp/Documents/GRASSDATA/NZTM2000/nitrif_inhib/.tmp/A208_RoudierP/'

While this works:

v.out.ogr in=ph_cl
dsn='/home/roudierp/Documents/GRASSDATA/NZTM2000/nitrif_inhib/.tmp/A208_RoudierP/18628.0'
format=GML
Exporting 355021 areas (may take some time)...

Any idea?

Pierre

Roger


And GDAL 1.7.1 is not the current
version, which is 1.7.3. Did you install GDAL and/or GRASS from source,
or
from binaries (in my experience, installing from source ensures more
consistency, and the GDAL/OGR GRASS plugins are often the source of
problems
because of version mismatch).

I installed both GRASS 6.4 and GDAL/OGR from binaries, yes.

PS. The best list is probably:

http://grass.osgeo.org/statsgrass/index.php

OK. I am sending that message to that list, and keep R-sig-geo for
consistency. Sorry for cross-posting.

Thanks again,

Pierre


Roger


as it is more specific, and also seen by GRASS developers.


I tried to play with the different options but I did not succeed>
Here's more info about my data and platform:

Here is the output of v.info for the data I want to load:
GRASS 7.0.svn (NZTM2000):~ > v.info ph_cl


+----------------------------------------------------------------------------+
| Name:            ph_cl
  |
| Mapset:          nitrif_inhib
   |
| Location:        NZTM2000
   |
| Database:        /home/roudierp/Documents/GRASSDATA
   |
| Title:
  |
| Map scale:       1:1
  |
| Map format:      native
   |
| Name of creator: roudierp
   |
| Organization:
   |
| Source date:     Mon Dec 13 11:30:11 2010
   |


|----------------------------------------------------------------------------|
|   Type of map: vector (level: 2)
  |
|
   |
|   Number of points:       0               Number of centroids:  236847
  |
|   Number of lines:        0               Number of boundaries: 892041
  |
|   Number of areas:        355021          Number of islands:    79124
   |
|
   |
|   Map is 3D:              No
  |
|   Number of dblinks:      1
   |
|
   |
|   Projection: Transverse Mercator
   |
|
   |
|               N:  6190887.80270169    S:  4823266.04395524
  |
|               E:  2091804.65744429    W:   1170289.3071784
  |
|
   |
|   Digitization threshold: 0
   |
|   Comment:
  |
|
   |


+----------------------------------------------------------------------------+

And finally some metadata about the software packages I used:

here's the sessionInfo():

sessionInfo()

R version 2.12.0 (2010-10-15)
Platform: x86_64-unknown-linux-gnu (64-bit)

locale:
[1] LC_CTYPE=en_GB.UTF-8       LC_NUMERIC=C
[3] LC_TIME=en_GB.UTF-8        LC_COLLATE=en_GB.UTF-8
[5] LC_MONETARY=C              LC_MESSAGES=en_GB.UTF-8
[7] LC_PAPER=en_GB.UTF-8       LC_NAME=C
[9] LC_ADDRESS=C               LC_TELEPHONE=C
[11] LC_MEASUREMENT=en_GB.UTF-8 LC_IDENTIFICATION=C

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base

other attached packages:
[1] spgrass6_0.6-21 XML_3.2-0       rgdal_0.6-31    sp_0.9-74

loaded via a namespace (and not attached):
[1] grid_2.12.0     lattice_0.19-13

library(spgrass6)

Loading required package: sp
Loading required package: rgdal
Geospatial Data Abstraction Library extensions to R successfully loaded
Loaded GDAL runtime: GDAL 1.7.1, released 2010/02/08
Path to GDAL shared files: /usr/share/gdal
Loaded PROJ.4 runtime: Rel. 4.7.1, 23 September 2009
Path to PROJ.4 shared files: /usr/share/proj/
Loading required package: XML
GRASS GIS interface loaded with GRASS version: 7.0.svn
and location: NZTM2000

I got the last CRAN version of sp.

This runs on a linux machine:
GRASS 7.0.svn (NZTM2000):~ > uname -a
Linux A208_RoudierP 2.6.34.7-0.5-xen #1 SMP 2010-10-25 08:40:12 +0200
x86_64 x86_64 x86_64 GNU/Linux


Cheers,

Pierre

_______________________________________________
R-sig-Geo mailing list
[email protected]
https://stat.ethz.ch/mailman/listinfo/r-sig-geo


--
Roger Bivand
Economic Geography Section, Department of Economics, Norwegian School of
Economics and Business Administration, Helleveien 30, N-5045 Bergen,
Norway. voice: +47 55 95 93 55; fax +47 55 95 95 43
e-mail: [email protected]




--
Roger Bivand
Economic Geography Section, Department of Economics, Norwegian School of
Economics and Business Administration, Helleveien 30, N-5045 Bergen,
Norway. voice: +47 55 95 93 55; fax +47 55 95 95 43
e-mail: [email protected]


--
Roger Bivand
Economic Geography Section, Department of Economics, Norwegian School of
Economics and Business Administration, Helleveien 30, N-5045 Bergen,
Norway. voice: +47 55 95 93 55; fax +47 55 95 95 43
e-mail: [email protected]
_______________________________________________
grass-stats mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/grass-stats

Reply via email to