Hi
On 1/12/2010 4:44 a.m., Peter Ehlers wrote:
On 2010-11-30 04:56, Ben Tupper wrote:
Hi,
I thought it might help if I posted the resulting images.
This is the pdf file where the map polygons are not clipped to the
plotting boundary.
http://dl.dropbox.com/u/8433654/test-map.pdf
And this is the png file showing the same polygons clipped to the
plotting boundary which is what I hope to see in the pdf, too.
http://dl.dropbox.com/u/8433654/test-map.png
I suspect that there is some simple parameter or sequence I am
missing... something that a good-heatred dope slap will solve!
Hi Ben,
I haven't figured out why this occurs - seems to be something
to do with the way rasterImage and pdf play together. But this
Correct. The code for drawing raster images on the PDF device was being
selfish with the clipping region. A fix has been committed.
Paul
works for me: insert the following line
do.call("clip", as.list(par('usr')))
before your final map call.
Peter Ehlers
Thanks,
Ben
On Nov 29, 2010, at 2:03 PM, Ben Tupper wrote:
Hello,
Below is a function (test.map) that permits drawing the same map
using three different devices. The "pdf" device doesn't clip
polygons to the plot region as I see it does by both the native
device (in my case "Quartz") and the "png" device.
test.map("pdf") # produces "test-map.pdf" with no clipping
test.map("png") # produces "test-map.png" with clipping
test.map(NA) # draws on the window device with clipping
It doesn't appear to matter what the value of the fill argument is -
the pdf output shows that the polygons are not being clipped to the
plot region.
I have viewed the pdf output using Mac OSX's Preview, PDFPen, Adobe
Reader and Safari and they all render the same way. So my hunch is
that it is not a viewer issue (although I suppose they might be
using the same rendering engine under the hood.)
Any help would be greatly appreciated.
Thanks and cheers,
Ben
###### BEGIN
library(maps)
test.map<- function(to.file = c("pdf", "png", NA)[1], fill = TRUE){
if (!is.na(to.file)){
ofile = paste("test-map", to.file,sep = ".")
do.call(to.file, list(file=ofile))
}
xr<- c(-185, -155)
yr<- c(45, 70)
map(xlim = xr, ylim = yr)
map.axes()
m<- matrix(seq(0, 1, length = 40*40), nrow = 40)
mr<- as.raster(m)
rasterImage(m, -180, 50, -160, 65)
map(xlim = xr, ylim = yr, fill = fill, add = TRUE)
if (!is.na(to.file)){
cat("wrote:", ofile, "\n")
dev.state<- dev.off()
}
}
###### END
sessionInfo()
R version 2.12.0 (2010-10-15)
Platform: i386-apple-darwin9.8.0/i386 (32-bit)
locale:
[1] en_US.UTF-8/en_US.UTF-8/C/C/en_US.UTF-8/en_US.UTF-8
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] mapproj_1.1-8.2 akima_0.5-4 RColorBrewer_1.0-2
[4] mapdata_2.1-3 maps_2.1-5
loaded via a namespace (and not attached):
[1] tools_2.12.0
Ben Tupper
Bigelow Laboratory for Ocean Sciences
180 McKown Point Rd. P.O. Box 475
West Boothbay Harbor, Maine 04575-0475
http://www.bigelow.org/
______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
--
Dr Paul Murrell
Department of Statistics
The University of Auckland
Private Bag 92019
Auckland
New Zealand
64 9 3737599 x85392
p...@stat.auckland.ac.nz
http://www.stat.auckland.ac.nz/~paul/
______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.