Propriétés de la légende lors de la légende.seulement = t (paquet raster))
en traçant seulement la légende (d'un raster
objet - une barre de couleur):
require(raster)
r = raster()
r[] = 1
plot(r, legend=F)
plot(r, zlim=c(-10,10), legend.only=T)
Comment puis-je contrôler la taille de l'étiquette de l'axe de la légende, la longueur de la tique et d'autres propriétés de la légende? Je sais que je peux appeler par(...)
avant le dernier plot()
appel, mais est-il une manière plus propre?
2 réponses
Vous pouvez passer axis.args
et legend.args
comme arguments à l'appel de fonction de légende seulement,image.plot
dans le fields
paquet.
par exemple, pour spécifier la position et les étiquettes des tiques, et pour réduire la taille des étiquettes des tiques, ce qui suit devrait faire l'affaire. Il acceptera aussi des arguments tels que legend.width
et 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))
il est également possible de travailler avec l'argument "smallplot" dans la légende "when".only=TRUE'. Petits travaux à partir du coin inférieur/gauche de la parcelle superficie petite parcelle=c(min % à partir de la gauche, max % à partir de la gauche, min % à partir du bas, max % à partir du bas).
# 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"))