The problem is that you specify max ylim
of -45, and the data is precisely cut at that latitude. Obviously, the actual boundaries of the graph are calculated in a separate way, which is probably due to some conservative assumption based on the obtained predicted boundaries (but I donβt know anything about it without studying the source code).
You can avoid the problem by setting a dummy chart that does not draw the coastline, then add the data at the top with a larger ylim
:
library(maps) library(mapproj) ylim = c(-90,-45) orientation=c(-90, 0, 0) x11() par(mar=c(1,1,1,1)) m <- map("world", plot=FALSE) map("world",project="stereographic", orientation=orientation, ylim=ylim, col = "transparent") map("world",project="stereographic", orientation=orientation, ylim=ylim + c(-5, 5), add = TRUE) map.grid(m, nx=18,ny=18, col=8) box()
By the way, this strategy will not work for all forecasts, since some of them assume overlapping for some data limits, but Polar Stereographic just goes out of the center, so there is no such problem.
In addition, there would be a more modern way to do this with maptools, rgdal and rgeos, which will allow you to use data to share PROJ.4 Stereographic projection (but I did not quite understand the clipping step). Projections in mapproj are βonly formalβ, and it would work a bit to get other data in afaik ones.