如何删除R包“raster”中“plot.raster”中的框架

时间:2013-01-22 23:08:56

标签: r plot spatial raster

我需要删除R包“raster”中图形周围的框框,但我无法弄清楚应该更改哪个参数。示例如下:

library(raster)

r <- raster(nrows=10, ncols=10)

r <- setValues(r, 1:ncell(r))

plot(r)

plot(r,axes=F)

2 个答案:

答案 0 :(得分:27)

这有效:

plot(r, axes=FALSE, box=FALSE)

要了解如何为自己找到答案,请尝试以下方法查看基础功能。 (需要调用showMethods()getMethod(),因为栅格包广泛使用S4方法而不是更常用的S3方法。)

showMethods("plot")
getMethod("plot", c("Raster", "ANY"))
getAnywhere(".plotraster2")
getAnywhere(".rasterImagePlot")
args(raster:::.rasterImagePlot)
# function (x, col, add = FALSE, legend = TRUE, horizontal = FALSE, 
#     legend.shrink = 0.5, legend.width = 0.6, legend.mar = ifelse(horizontal, 
#         3.1, 5.1), legend.lab = NULL, graphics.reset = FALSE, 
#     bigplot = NULL, smallplot = NULL, legend.only = FALSE, lab.breaks = NULL, 
#     axis.args = NULL, legend.args = NULL, interpolate = FALSE, 
#     box = TRUE, breaks = NULL, zlim = NULL, zlimcol = NULL, fun = NULL, 
#     asp, colNA = NA, ...) 

答案 1 :(得分:0)

我能建议的最好的是

plot(r,axes=F,useRaster=F)

选项bty='n'通常会删除框,但栅格绘图功能似乎是在常规框顶部绘制自己的框,您无法摆脱它。