[GRASS-dev] graph function in r.mapcalc
glynn at gclements.plus.com
Sun Nov 18 19:46:28 PST 2012
Paulo van Breugel wrote:
> I am using the graph function in r.mapcalc. The input is the name of the
> map to be converted and a string with XY values, like:
> "newmap = graph(map, 1, x1,y1, x2,y2,... xi,yi)"
The second argument ("1") shouldn't be there.
> Often, X and Y values are available as separate columns or vectors. In
> such cases, it would be much easier if X and Y values can be given as
> separate vectors, e.g., something like:
> "newmap = graph(map, x=x1,x2,x3,x4,...xi, y=y1,y2,y3,y4,...,yi)"
That exact syntax (i.e. with "x=" and "y=" markers) isn't possible
without fundamentally re-writing r.mapcalc.
However, it would be possible to implement:
newmap = graph(map, x1,x2,x3,x4, y1,y2,y3,y4)
This would boil down to cloning f_graph() in raster/r.mapcalc/xgraph.c
#define X(j) (argz[2 + 2 * (j) + 0][i])
#define Y(j) (argz[2 + 2 * (j) + 1][i])
#define X(j) (argz[2 + (j) + 0][i])
#define Y(j) (argz[2 + (j) + n][i])
In practice, we'd want to re-factor the common code.
A (untested) patch to implement a graph2() function with the above
syntax is attached.
Glynn Clements <glynn at gclements.plus.com>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
More information about the grass-dev