On Mon, 1 Feb 2010, Paulo Eduardo Cardoso wrote:

Hi,
Code exemple
library(maptools)
load(file='D:\\R\\transparencia\\TransparentPolygon.Rdata')
areas <- readShapeSpatial('D:\\R\\transparencia\\Areas.shp')
pontos <- readShapeSpatial('D:\\R\\transparencia\\Points.shp')
plot(pontos,pch=19,col=pontos$point)
plot(areas,pbg="transparent",bg="red",add=TRUE)

data can be downloaded from

http://rapidshare.com/files/344532718/TransparentPolygon.Rdata.html

example image can be downloaded grom

http://rapidshare.com/files/344533300/ExampleTransparentPolygon.png.html


The image cannot be reproduced with your plotting order, because the polygons overpaint the points. Crucially, the big square is completely painted. You also have two Polygons objects, one a square with a round hole, the other an island filling the hole. With your objects, you could do:

plot(areas[1,], pbg="white", col="grey85", border="grey50") # set up background polygon and paint hole
plot(areas[2,], angle=45, density=8, border="grey50", col="grey50",
  add=TRUE)
# hatch the island polygon
points(pontos[pontos$point=="in",], pch=16)
# add the in points
points(pontos[pontos$point=="out",], pch=22, col="grey50", bg="grey50")
# and the out points

If your output devive uses and alpha channel, you may be able to find other ways forward, but they will not be portable across devices.

Hope this helps,

Roger





2010/1/31 Roger Bivand <roger.biv...@nhh.no>

On Sun, 31 Jan 2010, Paulo Eduardo Cardoso wrote:

Roger,

I really thank you for you comments. You are always available to explain
everything, and that's a fortune for forum users.
But I still with the same problem. I did,'t understand how to leave the
inner hole or the inner polygon transparent, in order to see any other layer
plotter at first.
Should I send a simple example?

Please do, either code for a provided data set, or code and a link to the URL 
where the data set is available.

Roger


2010/1/30 Roger Bivand <roger.biv...@nhh.no>

On Sat, 30 Jan 2010, Paulo Eduardo Cardoso wrote:

 I'd like to plot a SPDF with two objects, one of them buffering the other

"island". How can I set the "island" transparent?
Similarly, keeping the outer polygon only, how can the hole still
transparent?


Polygons objects are plotted largest to smallest, as are Polygon objects in
each Polygons object. Each Polygons object and all its constituent Polygon
objects are painted the colour chosen for that Polygons object.

If you want the holes Polygon objects to overpaint their containing Polygon
objects, in the base graphics plot() method, you set the pbg= argument to
the background colour (not "transparent", this will let you see the painted
Polygon below). In the spplot method, this is handled internally by reading
the trellis.par.get()$background value, and using it if not "transparent",
or "white" if it is "transparent".

Both approaches depend on the hole slot of the Polygon object being
correctly set.

R graphics do not analyse objects leaving out say holes, they overpaint.
This is because the holes are not "known" in advance by the functions being
executed.

Hope this helps,

Roger


Thanks in advance,

Paulo E. Cardoso

      [[alternative HTML version deleted]]

_______________________________________________
R-sig-Geo mailing list
R-sig-Geo@stat.math.ethz.ch
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: roger.biv...@nhh.no




--
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: roger.biv...@nhh.no



--
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: roger.biv...@nhh.no
_______________________________________________
R-sig-Geo mailing list
R-sig-Geo@stat.math.ethz.ch
https://stat.ethz.ch/mailman/listinfo/r-sig-geo

Reply via email to