2012-03-08 2 views
1

Je suis en train de tracer une image raster à partir des données stockées dans un fichier en utilisant les trois lignes de code ci-dessous. Cependant, je souhaite générer une légende (ou un nuancier) sous l'image. La légende par défaut est générée sur le côté droit. Toute idée comment je pourrais obtenir la légende à l'endroit désiré. Deuxièmement, je reçois un rectangle autour de l'image dont je n'ai pas besoin dans l'intrigue finale. S'il vous plaît aidez-moi avec ces problèmes.placer la légende ci-dessous un tracé raster et se débarrasser du rectangle entourant la trame raster

  temp_var<-raster(input) 
    par(mar=c(0,0,0,0)) 
    plot(temp_var,legend=F,axes=FALSE) 

Merci ...

Répondre

0

Je me suis battu avec le rectangle dans plot() méthode pour Raster* objets. Je suis certain qu'il existe un moyen de s'en débarrasser, mais ce n'est pas nécessaire. J'ai toujours utilisé cette solution de contournement:

image(temp_var, axes=FALSE, xlab="", ylab="") 

Quant à votre légende, je crois que vous devrez construire que manuellement à vos spécifications. Essayez:

layout(matrix(c(1,1,1,1,1,2,2), 7, 1)) 
par(mar=c(0,0,0,0)) 
image(temp_var, axes=FALSE, xlab="", ylab="") 
plot(c(0,1), c(0,1), type="n", xlab="", ylab="", axes=FALSE) 
legend(0.1,0.9, legend=c(1:5), fill=rainbow(5), horiz=TRUE) 
0

J'ai utilisé colorbar.plot avec un certain succès dans le passé. Désactiver la légende qui intrigue (raster (x)) insère automatiquement avec la légende = FALSE puis appelez colorbar.plot(), c.-à-

plot(raster(x),legend=FALSE) 
colobar.plot(...) 
+0

PS: La question a été publié par un collègue de travail qui a accidentellement utilisé mon ouverture de session pour poster la question. Je ne poste pas de questions puis je leur réponds une heure plus tard ... – Aaron

Questions connexes