[GRASSLIST:6029] Re: problems with grass6beta2 and R

I'm forwarding to the list my off-list reply to Pete Lancashire, to which
he has not had the courtesy to respond, in particular to my offer (at foot
of message) to interact with him in trying to find a resolution to his
immediate needs. The only response was to post a *bug* report on the known
fact that the GRASS5.* interface to R doesn't work in compiled mode with
GRASS6 - reports indicate that it seems to work in interpreted mode for
raster layers.

I will be establishing a sourceforge sandbox to publish ideas (see
discussion below), and am grateful to Paolo Cavallini and Miha Staut for
their ideas so far. I will post the address when ready.

Roger Bivand

---------- Forwarded message ----------
Date: Sat, 5 Mar 2005 21:46:24 +0100 (CET)
From: Roger Bivand <Roger.Bivand@nhh.no>
To: Pete Lancashire <list@pdxeng.com>
Subject: Re: [GRASSLIST:5891] Re: problems with grass6beta2 and R

Pete:

On Sat, 5 Mar 2005, Pete Lancashire wrote:

I just want to add a voice to this.

I'm trying to 'promote' the use of OSS withing a
very conservative industry and am putting together
a demo that includes Grass with PostGIS and R.

Doing a demo with Grass with R would have been a 90%
winner. And believe that if successful development
money could surface.

I would hope that in the future the Grass dev. team
take into consideration input from other projects
that are helping make Grass a valid alternative.
Saying that, I do want to add my greatest admiration
for the project so far.

My only recourse is to "down grade" to 5.4, but that
will then kill some of the other demo's.

The interface was just for rasters in 2D, and was extended to sites. The
problem that has occurred is because a very quick decision was made to
alter a fundamental file structure for 6.0, a file structure that has been
fixed essentially since GRASS began. If I change the current interface,
which works for most users, their work will be broken. 6.0 is not yet
released, and is a fast moving codebase, which is by definition hard to
interface to.

My repeated requests to the list for advice and help from
people who actually use 6.0.0beta* has yielded a two-line script using
system() in R - which could be elaborated for handling vectorised sites,
and an offer to try out anything I happen to write. But *no* offers of
code or working examples of loose coupling (writing the GRASS vector
layer(s) to file as a shapefile or e00, reading into R, writing from R as
a file, importing into GRASS).

We also have rgdal as the GDAL bindings for R, and it is quite possible
that alpha code for OGR could get to where you need to be. But that isn't
what you are putting on the table, is it?

(At least part of the problem is that GRASS6 vector also involves using
(as you include below) various databases, which R can talk to directly -
so the R/GRASS interface remains just R/GRASS for raster, but potentially
becomes R/(GRASS hands off a driver to) many different databases -
designing for this could potentially drop GRASS and just go to the
databases, or even reverse roles and embed the R engine inside GRASS or
the database. I suspect that this includes so many local variants that
the vector interface will have to be loose-coupled, or tightly
customised with the database drivers; R could also be embedded elsewhere
I think, depending on the distribution of tasks and which process is "in
charge" - now R runs on top of GRASS with the user using the R
interface, but with embedding, this can be done differently - see:
http://www.est.ufpr.br/myR/ for an example. See also:
http://www.math.uni-klu.ac.at/~agebhard/preDSC2003.pdf).

-pete "A frustrated at times OSS Promoter"

Well, just imagine how frustrated volunteer overtime developers and
especially maintainers feel! You add new fun stuff and get current users
all over you very quickly!

P.S. Demo would have included Grass6, R, GDAL, PostGIS,
MySQL, data exchange with Oracle 10g, PHP, Perl, Apache,
and a Beowulf Clusters.

Please describe in detail what needs to be passed between GRASS and R, and
how much time you can give me to try it out - you have the examples, I
don't - and I'll try and give you some pointers and R scripts. Please
also state the version of your platform and at least GRASS, GDAL, and
R. The GRASS interface (note 5.0!) began that way. If it's simple enough -
write a shapefile from GRASS, read a shapefile into R, do stuff, write
shapefile or raster (Arc ASCII GRID works anyway) or whatever with new
stuff, read into GRASS, it's doable.

Roger

On Wed, 2005-02-23 at 10:39, Roger Bivand wrote:
> On Wed, 23 Feb 2005, Carlos Henrique Grohmann wrote:
>
> > Hello all,
> >
> > is there anything wrong about grass6 and R?
>
> This has now been raised many times. The GRASS/R interface was broken by
> the imposition of 3D windows in GRASS 6 (and sites have gone away too). It
> is reported to work with the interp= argument set to TRUE, that is, not
> using the compiled interface, but exchanging text files. Please note the
> full title of the GRASS package in R: "Interface between GRASS 5.0
> geographical information system and R" - in fact 5.4 still works as
> designed, but 6.0 does not.
>
> I am open to offers of help to rectify this, and suggested doing this on
> sourceforge so that others can contribute. Many users depend on GRASS 5
> and the interface, so the current structure must be maintained;
> development of a 6.0 version can be done, but needs contributions from
> people actually using 6.0 and willing to help replace the sites functions
> and write vector functions.
>
> >
> > I tried to run it today and look what I get:
> >
> >
> > > library(GRASS)
> > GRASS environment variables in: /tmp/grass6-guano-5178/gisrc
> > > G<-gmeta()
> > Error in gmeta() : Bad or no region for current mapset
> > >
> >
> > I installed the R GRASS package with:
> > > R CMD INSTALL --configure-args=--grass5=/usr/local/bin/grass60
> > GRASS_0.2-23.tar.gz
> >
>
> The "--configure-args=--grass5=/usr/local/bin/grass60" have been
> redundant for about three years, by the way, because the package contains
> copies of GRASS library source files for 5.* raster and sites access, and
> so does *not* link to binary libraries (this was a problem on cygwin at
> the time).
>
> Roger Bivand
>
>
> > any ideas?
> >
> > thanks
> >
> > +----------------------------------------------------------+
> > Carlos Henrique Grohmann - Guano
> > Geologist M.Sc - Doctorate Student at IGc-USP - Brazil
> > Linux User #89721 - guano at usp dot br
> > +----------------------------------------------------------+
> >
> >
> >
> >

--
Roger Bivand
Economic Geography Section, Department of Economics, Norwegian School of
Economics and Business Administration, Breiviksveien 40, N-5045 Bergen,
Norway. voice: +47 55 95 93 55; fax +47 55 95 93 93
e-mail: Roger.Bivand@nhh.no

Roger,

I found your reply in my SPAM filter that I was cleaning out
Sunday. The rules have been fixed.

I'll dig up the example I was going to work on.

Please don't take my comment as to being frustrated the wrong
way. It was not a complaint on the extensive work that has been
volunteered, but on communication and coordination between groups.

The sandbox is a great idea, and a tool all projects should use.

Again, sorry for not responding sooner

-pete "One ERSI and Oracle License can buy you ...."

On Mon, 2005-03-07 at 00:12, Roger Bivand wrote:

I'm forwarding to the list my off-list reply to Pete Lancashire, to which
he has not had the courtesy to respond, in particular to my offer (at foot
of message) to interact with him in trying to find a resolution to his
immediate needs. The only response was to post a *bug* report on the known
fact that the GRASS5.* interface to R doesn't work in compiled mode with
GRASS6 - reports indicate that it seems to work in interpreted mode for
raster layers.

I will be establishing a sourceforge sandbox to publish ideas (see
discussion below), and am grateful to Paolo Cavallini and Miha Staut for
their ideas so far. I will post the address when ready.

Roger Bivand

---------- Forwarded message ----------
Date: Sat, 5 Mar 2005 21:46:24 +0100 (CET)
From: Roger Bivand <Roger.Bivand@nhh.no>
To: Pete Lancashire <list@pdxeng.com>
Subject: Re: [GRASSLIST:5891] Re: problems with grass6beta2 and R

Pete:

On Sat, 5 Mar 2005, Pete Lancashire wrote:

> I just want to add a voice to this.
>
> I'm trying to 'promote' the use of OSS withing a
> very conservative industry and am putting together
> a demo that includes Grass with PostGIS and R.
>
> Doing a demo with Grass with R would have been a 90%
> winner. And believe that if successful development
> money could surface.
>
> I would hope that in the future the Grass dev. team
> take into consideration input from other projects
> that are helping make Grass a valid alternative.
> Saying that, I do want to add my greatest admiration
> for the project so far.
>
> My only recourse is to "down grade" to 5.4, but that
> will then kill some of the other demo's.
>

The interface was just for rasters in 2D, and was extended to sites. The
problem that has occurred is because a very quick decision was made to
alter a fundamental file structure for 6.0, a file structure that has been
fixed essentially since GRASS began. If I change the current interface,
which works for most users, their work will be broken. 6.0 is not yet
released, and is a fast moving codebase, which is by definition hard to
interface to.

My repeated requests to the list for advice and help from
people who actually use 6.0.0beta* has yielded a two-line script using
system() in R - which could be elaborated for handling vectorised sites,
and an offer to try out anything I happen to write. But *no* offers of
code or working examples of loose coupling (writing the GRASS vector
layer(s) to file as a shapefile or e00, reading into R, writing from R as
a file, importing into GRASS).

We also have rgdal as the GDAL bindings for R, and it is quite possible
that alpha code for OGR could get to where you need to be. But that isn't
what you are putting on the table, is it?

(At least part of the problem is that GRASS6 vector also involves using
(as you include below) various databases, which R can talk to directly -
so the R/GRASS interface remains just R/GRASS for raster, but potentially
becomes R/(GRASS hands off a driver to) many different databases -
designing for this could potentially drop GRASS and just go to the
databases, or even reverse roles and embed the R engine inside GRASS or
the database. I suspect that this includes so many local variants that
the vector interface will have to be loose-coupled, or tightly
customised with the database drivers; R could also be embedded elsewhere
I think, depending on the distribution of tasks and which process is "in
charge" - now R runs on top of GRASS with the user using the R
interface, but with embedding, this can be done differently - see:
http://www.est.ufpr.br/myR/ for an example. See also:
http://www.math.uni-klu.ac.at/~agebhard/preDSC2003.pdf).

> -pete "A frustrated at times OSS Promoter"

Well, just imagine how frustrated volunteer overtime developers and
especially maintainers feel! You add new fun stuff and get current users
all over you very quickly!

>
> P.S. Demo would have included Grass6, R, GDAL, PostGIS,
> MySQL, data exchange with Oracle 10g, PHP, Perl, Apache,
> and a Beowulf Clusters.
>

Please describe in detail what needs to be passed between GRASS and R, and
how much time you can give me to try it out - you have the examples, I
don't - and I'll try and give you some pointers and R scripts. Please
also state the version of your platform and at least GRASS, GDAL, and
R. The GRASS interface (note 5.0!) began that way. If it's simple enough -
write a shapefile from GRASS, read a shapefile into R, do stuff, write
shapefile or raster (Arc ASCII GRID works anyway) or whatever with new
stuff, read into GRASS, it's doable.

Roger

>
>
> On Wed, 2005-02-23 at 10:39, Roger Bivand wrote:
> > On Wed, 23 Feb 2005, Carlos Henrique Grohmann wrote:
> >
> > > Hello all,
> > >
> > > is there anything wrong about grass6 and R?
> >
> > This has now been raised many times. The GRASS/R interface was broken by
> > the imposition of 3D windows in GRASS 6 (and sites have gone away too). It
> > is reported to work with the interp= argument set to TRUE, that is, not
> > using the compiled interface, but exchanging text files. Please note the
> > full title of the GRASS package in R: "Interface between GRASS 5.0
> > geographical information system and R" - in fact 5.4 still works as
> > designed, but 6.0 does not.
> >
> > I am open to offers of help to rectify this, and suggested doing this on
> > sourceforge so that others can contribute. Many users depend on GRASS 5
> > and the interface, so the current structure must be maintained;
> > development of a 6.0 version can be done, but needs contributions from
> > people actually using 6.0 and willing to help replace the sites functions
> > and write vector functions.
> >
> > >
> > > I tried to run it today and look what I get:
> > >
> > >
> > > > library(GRASS)
> > > GRASS environment variables in: /tmp/grass6-guano-5178/gisrc
> > > > G<-gmeta()
> > > Error in gmeta() : Bad or no region for current mapset
> > > >
> > >
> > > I installed the R GRASS package with:
> > > > R CMD INSTALL --configure-args=--grass5=/usr/local/bin/grass60
> > > GRASS_0.2-23.tar.gz
> > >
> >
> > The "--configure-args=--grass5=/usr/local/bin/grass60" have been
> > redundant for about three years, by the way, because the package contains
> > copies of GRASS library source files for 5.* raster and sites access, and
> > so does *not* link to binary libraries (this was a problem on cygwin at
> > the time).
> >
> > Roger Bivand
> >
> >
> > > any ideas?
> > >
> > > thanks
> > >
> > > +----------------------------------------------------------+
> > > Carlos Henrique Grohmann - Guano
> > > Geologist M.Sc - Doctorate Student at IGc-USP - Brazil
> > > Linux User #89721 - guano at usp dot br
> > > +----------------------------------------------------------+
> > >
> > >
> > >
> > >
>
>

Pete,

On Mon, 7 Mar 2005, Pete Lancashire wrote:

Roger,

I found your reply in my SPAM filter that I was cleaning out
Sunday. The rules have been fixed.

Actually your filter seems to be quite well tuned, given my tendency to
muse on-list ...

I'll dig up the example I was going to work on.

Please do - if it is as small as possible, I'll try to work with it in the
sandbox if that's OK (i.e. data already world-readable).

Please don't take my comment as to being frustrated the wrong
way. It was not a complaint on the extensive work that has been
volunteered, but on communication and coordination between groups.

Yes, but the crunch is code, not communication or coordination, isn't it?

The sandbox is a great idea, and a tool all projects should use.

Will do.

Again, sorry for not responding sooner

OK, I just got used to West Coast (?) locations responding before I hit
enter late evening in Europe.

Roger

-pete "One ERSI and Oracle License can buy you ...."

On Mon, 2005-03-07 at 00:12, Roger Bivand wrote:
> I'm forwarding to the list my off-list reply to Pete Lancashire, to which
> he has not had the courtesy to respond, in particular to my offer (at foot
> of message) to interact with him in trying to find a resolution to his
> immediate needs. The only response was to post a *bug* report on the known
> fact that the GRASS5.* interface to R doesn't work in compiled mode with
> GRASS6 - reports indicate that it seems to work in interpreted mode for
> raster layers.
>
> I will be establishing a sourceforge sandbox to publish ideas (see
> discussion below), and am grateful to Paolo Cavallini and Miha Staut for
> their ideas so far. I will post the address when ready.
>
> Roger Bivand
>
> ---------- Forwarded message ----------
> Date: Sat, 5 Mar 2005 21:46:24 +0100 (CET)
> From: Roger Bivand <Roger.Bivand@nhh.no>
> To: Pete Lancashire <list@pdxeng.com>
> Subject: Re: [GRASSLIST:5891] Re: problems with grass6beta2 and R
>
> Pete:
>
> On Sat, 5 Mar 2005, Pete Lancashire wrote:
>
> > I just want to add a voice to this.
> >
> > I'm trying to 'promote' the use of OSS withing a
> > very conservative industry and am putting together
> > a demo that includes Grass with PostGIS and R.
> >
> > Doing a demo with Grass with R would have been a 90%
> > winner. And believe that if successful development
> > money could surface.
> >
> > I would hope that in the future the Grass dev. team
> > take into consideration input from other projects
> > that are helping make Grass a valid alternative.
> > Saying that, I do want to add my greatest admiration
> > for the project so far.
> >
> > My only recourse is to "down grade" to 5.4, but that
> > will then kill some of the other demo's.
> >
>
> The interface was just for rasters in 2D, and was extended to sites. The
> problem that has occurred is because a very quick decision was made to
> alter a fundamental file structure for 6.0, a file structure that has been
> fixed essentially since GRASS began. If I change the current interface,
> which works for most users, their work will be broken. 6.0 is not yet
> released, and is a fast moving codebase, which is by definition hard to
> interface to.
>
> My repeated requests to the list for advice and help from
> people who actually use 6.0.0beta* has yielded a two-line script using
> system() in R - which could be elaborated for handling vectorised sites,
> and an offer to try out anything I happen to write. But *no* offers of
> code or working examples of loose coupling (writing the GRASS vector
> layer(s) to file as a shapefile or e00, reading into R, writing from R as
> a file, importing into GRASS).
>
> We also have rgdal as the GDAL bindings for R, and it is quite possible
> that alpha code for OGR could get to where you need to be. But that isn't
> what you are putting on the table, is it?
>
> (At least part of the problem is that GRASS6 vector also involves using
> (as you include below) various databases, which R can talk to directly -
> so the R/GRASS interface remains just R/GRASS for raster, but potentially
> becomes R/(GRASS hands off a driver to) many different databases -
> designing for this could potentially drop GRASS and just go to the
> databases, or even reverse roles and embed the R engine inside GRASS or
> the database. I suspect that this includes so many local variants that
> the vector interface will have to be loose-coupled, or tightly
> customised with the database drivers; R could also be embedded elsewhere
> I think, depending on the distribution of tasks and which process is "in
> charge" - now R runs on top of GRASS with the user using the R
> interface, but with embedding, this can be done differently - see:
> http://www.est.ufpr.br/myR/ for an example. See also:
> http://www.math.uni-klu.ac.at/~agebhard/preDSC2003.pdf).
>
> > -pete "A frustrated at times OSS Promoter"
>
> Well, just imagine how frustrated volunteer overtime developers and
> especially maintainers feel! You add new fun stuff and get current users
> all over you very quickly!
>
> >
> > P.S. Demo would have included Grass6, R, GDAL, PostGIS,
> > MySQL, data exchange with Oracle 10g, PHP, Perl, Apache,
> > and a Beowulf Clusters.
> >
>
> Please describe in detail what needs to be passed between GRASS and R, and
> how much time you can give me to try it out - you have the examples, I
> don't - and I'll try and give you some pointers and R scripts. Please
> also state the version of your platform and at least GRASS, GDAL, and
> R. The GRASS interface (note 5.0!) began that way. If it's simple enough -
> write a shapefile from GRASS, read a shapefile into R, do stuff, write
> shapefile or raster (Arc ASCII GRID works anyway) or whatever with new
> stuff, read into GRASS, it's doable.
>
> Roger
>
> >
> >
> > On Wed, 2005-02-23 at 10:39, Roger Bivand wrote:
> > > On Wed, 23 Feb 2005, Carlos Henrique Grohmann wrote:
> > >
> > > > Hello all,
> > > >
> > > > is there anything wrong about grass6 and R?
> > >
> > > This has now been raised many times. The GRASS/R interface was broken by
> > > the imposition of 3D windows in GRASS 6 (and sites have gone away too). It
> > > is reported to work with the interp= argument set to TRUE, that is, not
> > > using the compiled interface, but exchanging text files. Please note the
> > > full title of the GRASS package in R: "Interface between GRASS 5.0
> > > geographical information system and R" - in fact 5.4 still works as
> > > designed, but 6.0 does not.
> > >
> > > I am open to offers of help to rectify this, and suggested doing this on
> > > sourceforge so that others can contribute. Many users depend on GRASS 5
> > > and the interface, so the current structure must be maintained;
> > > development of a 6.0 version can be done, but needs contributions from
> > > people actually using 6.0 and willing to help replace the sites functions
> > > and write vector functions.
> > >
> > > >
> > > > I tried to run it today and look what I get:
> > > >
> > > >
> > > > > library(GRASS)
> > > > GRASS environment variables in: /tmp/grass6-guano-5178/gisrc
> > > > > G<-gmeta()
> > > > Error in gmeta() : Bad or no region for current mapset
> > > > >
> > > >
> > > > I installed the R GRASS package with:
> > > > > R CMD INSTALL --configure-args=--grass5=/usr/local/bin/grass60
> > > > GRASS_0.2-23.tar.gz
> > > >
> > >
> > > The "--configure-args=--grass5=/usr/local/bin/grass60" have been
> > > redundant for about three years, by the way, because the package contains
> > > copies of GRASS library source files for 5.* raster and sites access, and
> > > so does *not* link to binary libraries (this was a problem on cygwin at
> > > the time).
> > >
> > > Roger Bivand
> > >
> > >
> > > > any ideas?
> > > >
> > > > thanks
> > > >
> > > > +----------------------------------------------------------+
> > > > Carlos Henrique Grohmann - Guano
> > > > Geologist M.Sc - Doctorate Student at IGc-USP - Brazil
> > > > Linux User #89721 - guano at usp dot br
> > > > +----------------------------------------------------------+
> > > >
> > > >
> > > >
> > > >
> >
> >

--
Roger Bivand
Economic Geography Section, Department of Economics, Norwegian School of
Economics and Business Administration, Breiviksveien 40, N-5045 Bergen,
Norway. voice: +47 55 95 93 55; fax +47 55 95 93 93
e-mail: Roger.Bivand@nhh.no

I have opened a sandbox for working on the R/GRASS interface for GRASS
6 at:

http://sourceforge.net/projects/r-spatial/, module spgrass6.

I have also released spgrass6_0.1-1.tar.gz on sourceforge - so far, only
metadata to R, and getting and putting vector point data (formerly sites)
is present. These functions will be supplemented by raster get/put. They
will also be integrated into the sp framework - more later.

Examples running under 6.0.0 in spearfish 57:

library(spgrass6)
G <- gmeta6()
str(G)

List of 25
$ GISDBASE : chr "/home/rsb/topics/grassdata"
$ LOCATION_NAME: chr "spearfish57"
$ MAPSET : chr "rsb"
$ GRASS_GUI : chr "text"
$ projection : chr "1 (UTM)"
$ zone : chr "13"
$ datum : chr "nad27"
$ ellipsoid : chr "clark66"
$ north : num 4928010
$ south : num 4913700
$ west : num 589980
$ east : num 609000
$ top : num 1
$ bottom : num 0
$ nsres : num 30
$ nsres3 : num 30
$ ewres : num 30
$ ewres3 : num 30
$ tbres : num 1
$ rows : int 477
$ rows3 : int 477
$ cols : int 634
$ cols3 : int 634
$ depths : int 1
$ proj4 : chr "+proj=utm +zone=13 +a=6378206.4 +rf=294.9786982
+no_defs +nadgrids=conus"

bugs <- getSites6("bugsites")
str(bugs)

`data.frame': 90 obs. of 4 variables:
$ cat : int 1 2 3 4 5 6 7 8 9 10 ...
$ x : int 590232 590430 590529 590546 590612 590744 ...
$ y : int 4915039 4915204 4914625 4915353 4915320 ...
$ str1: Factor w/ 1 level "Beetle site": 1 1 1 1 1 1 1 1 1 1 ...

putSites6(bugs, "newbugs")

Maximum input row length: 30
Maximum number of columns: 4
Minimum number of columns: 4
column: 1 type: integer
column: 2 type: integer
column: 3 type: integer
column: 4 type: string length: 11
Building topology ...
90 primitives registered
Building areas: 100%
0 areas built
0 isles built
Attaching islands:
Attaching centroids: 100%
Topology was built.
Number of nodes : 90
Number of primitives: 90
Number of points : 90
Number of lines : 0
Number of boundaries: 0
Number of centroids : 0
Number of areas : 0
Number of isles : 0
[1] "v.in.ascii in=/tmp/Rtmpp835dB/file74b0dc51 out=newbugs x=2 y=3 cat=1
columns=' cat int, x int, y int, str1 varchar(11)'"

bugs2 <- getSites6("newbugs")
str(bugs2)

`data.frame': 90 obs. of 4 variables:
$ x : int 590232 590430 590529 590546 590612 ...
$ y : int 4915039 4915204 4914625 4915353 4915320 ...
$ cat : int 1 2 3 4 5 6 7 8 9 10 ...
$ str1: Factor w/ 1 level "Beetle site": 1 1 1 1 1 1 1 1 1 1 ...

This code is for GRASS 6.0.0, and is written against yesterday's release.
Please use the STATGRASS mailing list for reports, not this main list. For
contributors, I can open developer access if needed, but code volumes are
small, so we'll see.

Hope this relieves some of the problems caused by 5/6 incompatibilities,
and that users will try the functions out with more taxing data than just
bugsites.

Roger

On Mon, 7 Mar 2005, Roger Bivand wrote:

Pete,

On Mon, 7 Mar 2005, Pete Lancashire wrote:

> Roger,
>
> I found your reply in my SPAM filter that I was cleaning out
> Sunday. The rules have been fixed.
>

Actually your filter seems to be quite well tuned, given my tendency to
muse on-list ...

> I'll dig up the example I was going to work on.
>

Please do - if it is as small as possible, I'll try to work with it in the
sandbox if that's OK (i.e. data already world-readable).

> Please don't take my comment as to being frustrated the wrong
> way. It was not a complaint on the extensive work that has been
> volunteered, but on communication and coordination between groups.
>
Yes, but the crunch is code, not communication or coordination, isn't it?

> The sandbox is a great idea, and a tool all projects should use.

Will do.

>
> Again, sorry for not responding sooner

OK, I just got used to West Coast (?) locations responding before I hit
enter late evening in Europe.

Roger

>
> -pete "One ERSI and Oracle License can buy you ...."
>
> On Mon, 2005-03-07 at 00:12, Roger Bivand wrote:
> > I'm forwarding to the list my off-list reply to Pete Lancashire, to which
> > he has not had the courtesy to respond, in particular to my offer (at foot
> > of message) to interact with him in trying to find a resolution to his
> > immediate needs. The only response was to post a *bug* report on the known
> > fact that the GRASS5.* interface to R doesn't work in compiled mode with
> > GRASS6 - reports indicate that it seems to work in interpreted mode for
> > raster layers.
> >
> > I will be establishing a sourceforge sandbox to publish ideas (see
> > discussion below), and am grateful to Paolo Cavallini and Miha Staut for
> > their ideas so far. I will post the address when ready.
> >
> > Roger Bivand
> >
> > ---------- Forwarded message ----------
> > Date: Sat, 5 Mar 2005 21:46:24 +0100 (CET)
> > From: Roger Bivand <Roger.Bivand@nhh.no>
> > To: Pete Lancashire <list@pdxeng.com>
> > Subject: Re: [GRASSLIST:5891] Re: problems with grass6beta2 and R
> >
> > Pete:
> >
> > On Sat, 5 Mar 2005, Pete Lancashire wrote:
> >
> > > I just want to add a voice to this.
> > >
> > > I'm trying to 'promote' the use of OSS withing a
> > > very conservative industry and am putting together
> > > a demo that includes Grass with PostGIS and R.
> > >
> > > Doing a demo with Grass with R would have been a 90%
> > > winner. And believe that if successful development
> > > money could surface.
> > >
> > > I would hope that in the future the Grass dev. team
> > > take into consideration input from other projects
> > > that are helping make Grass a valid alternative.
> > > Saying that, I do want to add my greatest admiration
> > > for the project so far.
> > >
> > > My only recourse is to "down grade" to 5.4, but that
> > > will then kill some of the other demo's.
> > >
> >
> > The interface was just for rasters in 2D, and was extended to sites. The
> > problem that has occurred is because a very quick decision was made to
> > alter a fundamental file structure for 6.0, a file structure that has been
> > fixed essentially since GRASS began. If I change the current interface,
> > which works for most users, their work will be broken. 6.0 is not yet
> > released, and is a fast moving codebase, which is by definition hard to
> > interface to.
> >
> > My repeated requests to the list for advice and help from
> > people who actually use 6.0.0beta* has yielded a two-line script using
> > system() in R - which could be elaborated for handling vectorised sites,
> > and an offer to try out anything I happen to write. But *no* offers of
> > code or working examples of loose coupling (writing the GRASS vector
> > layer(s) to file as a shapefile or e00, reading into R, writing from R as
> > a file, importing into GRASS).
> >
> > We also have rgdal as the GDAL bindings for R, and it is quite possible
> > that alpha code for OGR could get to where you need to be. But that isn't
> > what you are putting on the table, is it?
> >
> > (At least part of the problem is that GRASS6 vector also involves using
> > (as you include below) various databases, which R can talk to directly -
> > so the R/GRASS interface remains just R/GRASS for raster, but potentially
> > becomes R/(GRASS hands off a driver to) many different databases -
> > designing for this could potentially drop GRASS and just go to the
> > databases, or even reverse roles and embed the R engine inside GRASS or
> > the database. I suspect that this includes so many local variants that
> > the vector interface will have to be loose-coupled, or tightly
> > customised with the database drivers; R could also be embedded elsewhere
> > I think, depending on the distribution of tasks and which process is "in
> > charge" - now R runs on top of GRASS with the user using the R
> > interface, but with embedding, this can be done differently - see:
> > http://www.est.ufpr.br/myR/ for an example. See also:
> > http://www.math.uni-klu.ac.at/~agebhard/preDSC2003.pdf).
> >
> > > -pete "A frustrated at times OSS Promoter"
> >
> > Well, just imagine how frustrated volunteer overtime developers and
> > especially maintainers feel! You add new fun stuff and get current users
> > all over you very quickly!
> >
> > >
> > > P.S. Demo would have included Grass6, R, GDAL, PostGIS,
> > > MySQL, data exchange with Oracle 10g, PHP, Perl, Apache,
> > > and a Beowulf Clusters.
> > >
> >
> > Please describe in detail what needs to be passed between GRASS and R, and
> > how much time you can give me to try it out - you have the examples, I
> > don't - and I'll try and give you some pointers and R scripts. Please
> > also state the version of your platform and at least GRASS, GDAL, and
> > R. The GRASS interface (note 5.0!) began that way. If it's simple enough -
> > write a shapefile from GRASS, read a shapefile into R, do stuff, write
> > shapefile or raster (Arc ASCII GRID works anyway) or whatever with new
> > stuff, read into GRASS, it's doable.
> >
> > Roger
> >
> > >
> > >
> > > On Wed, 2005-02-23 at 10:39, Roger Bivand wrote:
> > > > On Wed, 23 Feb 2005, Carlos Henrique Grohmann wrote:
> > > >
> > > > > Hello all,
> > > > >
> > > > > is there anything wrong about grass6 and R?
> > > >
> > > > This has now been raised many times. The GRASS/R interface was broken by
> > > > the imposition of 3D windows in GRASS 6 (and sites have gone away too). It
> > > > is reported to work with the interp= argument set to TRUE, that is, not
> > > > using the compiled interface, but exchanging text files. Please note the
> > > > full title of the GRASS package in R: "Interface between GRASS 5.0
> > > > geographical information system and R" - in fact 5.4 still works as
> > > > designed, but 6.0 does not.
> > > >
> > > > I am open to offers of help to rectify this, and suggested doing this on
> > > > sourceforge so that others can contribute. Many users depend on GRASS 5
> > > > and the interface, so the current structure must be maintained;
> > > > development of a 6.0 version can be done, but needs contributions from
> > > > people actually using 6.0 and willing to help replace the sites functions
> > > > and write vector functions.
> > > >
> > > > >
> > > > > I tried to run it today and look what I get:
> > > > >
> > > > >
> > > > > > library(GRASS)
> > > > > GRASS environment variables in: /tmp/grass6-guano-5178/gisrc
> > > > > > G<-gmeta()
> > > > > Error in gmeta() : Bad or no region for current mapset
> > > > > >
> > > > >
> > > > > I installed the R GRASS package with:
> > > > > > R CMD INSTALL --configure-args=--grass5=/usr/local/bin/grass60
> > > > > GRASS_0.2-23.tar.gz
> > > > >
> > > >
> > > > The "--configure-args=--grass5=/usr/local/bin/grass60" have been
> > > > redundant for about three years, by the way, because the package contains
> > > > copies of GRASS library source files for 5.* raster and sites access, and
> > > > so does *not* link to binary libraries (this was a problem on cygwin at
> > > > the time).
> > > >
> > > > Roger Bivand
> > > >
> > > >
> > > > > any ideas?
> > > > >
> > > > > thanks
> > > > >
> > > > > +----------------------------------------------------------+
> > > > > Carlos Henrique Grohmann - Guano
> > > > > Geologist M.Sc - Doctorate Student at IGc-USP - Brazil
> > > > > Linux User #89721 - guano at usp dot br
> > > > > +----------------------------------------------------------+
> > > > >
> > > > >
> > > > >
> > > > >
> > >
> > >
>
>

--
Roger Bivand
Economic Geography Section, Department of Economics, Norwegian School of
Economics and Business Administration, Breiviksveien 40, N-5045 Bergen,
Norway. voice: +47 55 95 93 55; fax +47 55 95 93 93
e-mail: Roger.Bivand@nhh.no