[R-sig-Geo] spplot with two rasters

Edzer Pebesma edzer.pebesma at uni-muenster.de
Thu Mar 13 09:53:37 CET 2008


Agus, I disagree with your claim that R plot functions are not ok for 
real applications. Also, I use real applications for learning and 
teaching -- they are not fundamentally different.

In the trellis panel functions, or in the direct plot/image/lines etc 
functions, you plot in data coordinates. The main thing that the plot 
and spplot methods in package sp control is the aspect ratio. How else 
do data coordinates differ from geographical coordinates when it comes 
to plotting?

Are you refering to taking care of geographic (re)projection at that level?
--
Edzer

Agustin Lobo wrote:
> Well, the problem is that R does not have a real geographical
> display. While things can be done going back and forth from R to GIS,
> this procedure soon becomes very inconvenient. It's ok
> for learning and teaching, but not for real applications.
> Maybe getting an existing GIS to display spatial R objects
> is actually easier than developing a geographical display for R.
> Agus
>
> Dylan Beaudette escribió:
>   
>> On Thursday 06 March 2008, Thomas Adams wrote:
>>     
>>> Dylan,
>>>
>>> I think a solution using GRASS can be found on pages 110-111 of "Open
>>> Source GIS: A GRASS GIS Approach", 3rd Ed. The same material is covered
>>> in the 2nd Ed. as well, where you use r.mapcalc to combine two rasters
>>> and judicious use of MASKs; a conditional statement in r.mapcalc is the
>>> key.
>>>
>>> Regards,
>>> Tom
>>>       
>> Hi Tom,
>>
>> Thanks for the suggestion. This works, but we were hoping to make the plot in 
>> R-- as the PDF output is hard to match with GRASS alone. I suppose I will 
>> just have to try using two rasters with spplot() and see what happens. 
>>
>> Cheers,
>>
>> Dylan
>>
>>     
>>> Dylan Beaudette wrote:
>>>       
>>>> On Tuesday 04 March 2008, Edzer Pebesma wrote:
>>>>         
>>>>> I find it hard to imagine how you want to plot two raster files on top
>>>>> of each other. Do you want some form of transparency? If it is just one
>>>>> overlaying the other, you could use overlay to find out which cells in
>>>>> raster 1 to replace with those in raster 2 before plotting.
>>>>> --
>>>>> Edzer
>>>>>           
>>>> Hi Edzer,
>>>>
>>>> I generally agree that plotting one raster file "over" another raster
>>>> file would be of little use. In this case, one of the raster files (the
>>>> interesting one) has been masked with nodata, such that it only really
>>>> covers about 30% of the region of interest. The other raster is just
>>>> contextual data, and thus would be useful to plot "behind" the first
>>>> raster.
>>>>
>>>> Ideas?
>>>>
>>>> Dylan
>>>>
>>>>         
>>>>> Dylan Beaudette wrote:
>>>>>           
>>>>>> Hi,
>>>>>>
>>>>>> Is it possible to plot two raster images using spplot() in a manner
>>>>>> similar to:
>>>>>>
>>>>>> pts <- list("sp.points", points_file, pch = 4, col = "black", cex=0.5)
>>>>>> spplot(raster_file, zcol="elev.pred", sp.layout=list(pts))
>>>>>>
>>>>>> Note that one of the raster images is an aerial photo, used only for
>>>>>> context, while the second one is one with interesting z-values. The
>>>>>> second raster is masked and thus does not cover the entire region.
>>>>>>
>>>>>> Thanks,
>>>>>>
>>>>>> Dylan
>>>>>>             
>>
>>     
>
>




More information about the R-sig-Geo mailing list