[英]image raster R package - raster printing without background and border and legend
[英]Legend properties when legend.only=T (raster package)
僅繪制圖例( raster
對象 - 顏色條)時:
require(raster)
r = raster()
r[] = 1
plot(r, legend=F)
plot(r, zlim=c(-10,10), legend.only=T)
如何控制圖例軸標簽大小,刻度線長度和其他圖例屬性? 我知道我可以在最后一個plot()
調用之前調用par(...)
,但有更簡潔的方法嗎?
您可以將axis.args
和legend.args
作為參數傳遞給僅圖例函數調用, 就像 fields
包中的image.plot
。
例如,要指定刻度位置和標簽,並減少刻度標簽大小,以下應該可以解決問題。 它還將接受諸如legend.width
和legend.shrink
參數。
require(raster)
data(volcano)
r <- raster(volcano)
plot(r, col=topo.colors(100), legend=FALSE, axes=FALSE)
r.range <- c(minValue(r), maxValue(r))
plot(r, legend.only=TRUE, col=topo.colors(100),
legend.width=1, legend.shrink=0.75,
axis.args=list(at=seq(r.range[1], r.range[2], 25),
labels=seq(r.range[1], r.range[2], 25),
cex.axis=0.6),
legend.args=list(text='Elevation (m)', side=4, font=2, line=2.5, cex=0.8))
當'legend.only = TRUE'時,也可以使用'smallplot'參數。 從小區的左下角開始的小作品smallplot = c(左起最小%,左起最大%,底部最小%,底部最大%)。
# load data & plot
require(raster); data(volcano); r <- raster(volcano)
plot(r, col=topo.colors(100), legend=FALSE, axes=FALSE)
r.range <- c(minValue(r), maxValue(r))
plot(r, legend.only=TRUE, col=topo.colors(100), legend.width=1, legend.shrink=0.75,
smallplot=c(0,.09, .3,.75)); par(mar = par("mar"))
plot(r, legend.only=TRUE, col=topo.colors(100), legend.width=1, legend.shrink=0.75,
smallplot=c(0.3,0.5, 0.2,0.7)); par(mar = par("mar"))
plot(r, legend.only=TRUE, col=topo.colors(100), legend.width=1, legend.shrink=0.75,
smallplot=c(0.85,0.9, 0.7,0.9)); par(mar = par("mar"))
plot(r, legend.only=TRUE, col=topo.colors(100), legend.width=1, legend.shrink=0.75,
smallplot=c(0.7,0.90, 0.05,0.2)); par(mar = par("mar"))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.