[GRASS-user] Raster file from ascii file and flattening Africa .... :)

Dear friends,

I am a kind of advanced newbie, if that makes sense.

I have a text file of the form

coordinate x,coordinate y,cat={real number between 250 and 450}

where coordinate are expressed in latitude and longitude. The files represents
measurements of the size of a skulls on sites all over Africa.

From it, I would like to build a raster file, 100 km by 100km. There are 2
problems:

1) Unfortunately, in some 100km x 100km squares, there is one of the points
whilst in others there are maybe 20. How do I average, so that in each square
I only have 1 value representing the average?

2) How do we "flatten" Africa so that we may use 100km x 100km squares instead
of 1 degree x 1 degree, without committing a geographical crime? What we need
is to respect the areas ....

Best regards and apologies for the silliness of the questions.
--
Corrado Topi

Global Climate Change & Biodiversity Indicators
Area 18,Department of Biology
University of York, York, YO10 5YW, UK
Phone: + 44 (0) 1904 328645, E-mail: ct529@york.ac.uk

On 03/12/08 10:26, Corrado wrote:

Dear friends,

I am a kind of advanced newbie, if that makes sense.

I have a text file of the form

coordinate x,coordinate y,cat={real number between 250 and 450}

where coordinate are expressed in latitude and longitude. The files represents measurements of the size of a skulls on sites all over Africa.

From it, I would like to build a raster file, 100 km by 100km. There are 2 problems:

1) Unfortunately, in some 100km x 100km squares, there is one of the points whilst in others there are maybe 20. How do I average, so that in each square I only have 1 value representing the average?

r.in.xyz does this for you directly during the import.

Or you have r.resampl.stats, r.statistics, r.average, r.mode, r.median.

2) How do we "flatten" Africa so that we may use 100km x 100km squares instead of 1 degree x 1 degree, without committing a geographical crime? What we need is to respect the areas ....

I don't know what you mean by "flatten". IIUC, you are simply speaking about using a projection system. You have to create a location in the projection of your choice (I'll leave it to others to advise you on the best choice for the whole of Africa, but according to your criteria, you would need an equal area - see [1,2] for an introduction). Then use r.proj to reproject your map from the lat-long location to the projected location where you can then resample.

Moritz

[1] http://en.wikipedia.org/wiki/Map_projection#Equal-area
[2] http://egsc.usgs.gov/isb/pubs/MapProjections/projections.html

Dear Moritz,

thanks for pointing out r.in.xyz .... I will get a look at it, to see if it is
what I was looking for.

Concerning projection, of course I was not looking into flattening Africa with
a digger .... but in "flattening" Africa's projection (I though it was clear
from the context).

My data are in WGS84 / lat-long, but I need to use an area preserving
projection. I need to set the resolution to some sort of 100 km x 100 km
squares, or equivalent area.

My data are 1 x measurement on several specimen of the same species in
different sites, and I need to do some geographical analysis at that type of
resolution in an area preserving projection / datum.

I am asking the gurus what is the best area preserving projection / datum I
could use for Africa and the hows.

Thanks again.

On Wednesday 03 December 2008 17:05:15 Moritz Lennert wrote:

On 03/12/08 10:26, Corrado wrote:
> Dear friends,
>
> I am a kind of advanced newbie, if that makes sense.
>
> I have a text file of the form
>
> coordinate x,coordinate y,cat={real number between 250 and 450}
>
> where coordinate are expressed in latitude and longitude. The files
> represents measurements of the size of a skulls on sites all over Africa.
>
> From it, I would like to build a raster file, 100 km by 100km. There are
> 2 problems:
>
> 1) Unfortunately, in some 100km x 100km squares, there is one of the
> points whilst in others there are maybe 20. How do I average, so that in
> each square I only have 1 value representing the average?

r.in.xyz does this for you directly during the import.

Or you have r.resampl.stats, r.statistics, r.average, r.mode, r.median.

> 2) How do we "flatten" Africa so that we may use 100km x 100km squares
> instead of 1 degree x 1 degree, without committing a geographical crime?
> What we need is to respect the areas ....

I don't know what you mean by "flatten". IIUC, you are simply speaking
about using a projection system. You have to create a location in the
projection of your choice (I'll leave it to others to advise you on the
best choice for the whole of Africa, but according to your criteria, you
would need an equal area - see [1,2] for an introduction). Then use
r.proj to reproject your map from the lat-long location to the projected
location where you can then resample.

Moritz

[1] http://en.wikipedia.org/wiki/Map_projection#Equal-area
[2] http://egsc.usgs.gov/isb/pubs/MapProjections/projections.html

--
Corrado Topi

Global Climate Change & Biodiversity Indicators
Area 18,Department of Biology
University of York, York, YO10 5YW, UK
Phone: + 44 (0) 1904 328645, E-mail: ct529@york.ac.uk