Même gradient de couleur pour des graphiques différents

Postez ici vos questions, réponses, commentaires ou suggestions - Les sujets seront ultérieurement répartis dans les archives par les modérateurs

Modérateur : Groupe des modérateurs

Elsa Bussière
Messages : 86
Enregistré le : 30 Mar 2011, 09:34
Contact :

Même gradient de couleur pour des graphiques différents

Messagepar Elsa Bussière » 02 Nov 2017, 13:25

Bonjour,

J'ai six graphiques qui représentent la rugosité du terrain.
J'utilise la palette de couleur terrain.colors() pour la visualisation mais j'aimerais que les valeurs couleur soient comparables entre les six graphes (Pour le moment des valeurs de rugosité identiques s'affichent avec des couleurs différentes entre les six graphiques).

Voici le code:

Code : Tout sélectionner

ruggAcovmask <- addCovariates(Mask_A, rugg_A, columns = "ruggedness")
names(covariates(ruggAcovmask))
ruggBcovmask <- addCovariates(Mask_B, rugg_B, columns = "ruggedness")
names(covariates(ruggBcovmask))
ruggCcovmask <- addCovariates(Mask_C, rugg_C, columns = "ruggedness")
names(covariates(ruggCcovmask))
ruggDcovmask <- addCovariates(Mask_D, rugg_D, columns = "ruggedness")
names(covariates(ruggDcovmask))
ruggEcovmask <- addCovariates(Mask_E, rugg_E, columns = "ruggedness")
names(covariates(ruggEcovmask))
ruggFcovmask <- addCovariates(Mask_F, rugg_F, columns = "ruggedness")
names(covariates(ruggFcovmask))

class(ruggAcovmask)
[1] "mask"       "data.frame"

plot(ruggAcovmask, covariate = "ruggedness", legend = F, cex=3, pch=15, col = terrain.colors(13))
plot(ruggBcovmask, covariate = "ruggedness", legend = F, cex=3, pch=15, col = terrain.colors(11))
plot(ruggCcovmask, covariate = "ruggedness", legend = F, cex=3, pch=15, col = terrain.colors(8))
plot(ruggDcovmask, covariate = "ruggedness", legend = F, cex=3, pch=15, col = terrain.colors(10))
plot(ruggEcovmask, covariate = "ruggedness", legend = F, cex=3, pch=15, col = terrain.colors(10))
plot(ruggFcovmask, covariate = "ruggedness", legend = F, cex=3, pch=15, col = terrain.colors(14))


Merci, Elsa
Elsa Bussière

Serge Rapenne
Messages : 1426
Enregistré le : 20 Aoû 2007, 15:17
Contact :

Re: Même gradient de couleur pour des graphiques différents

Messagepar Serge Rapenne » 02 Nov 2017, 14:15

Bonjour,

Je pense qu'en renseignant le paramètre ylim dans les 6 graphiques de la même manière tu devrais obtenir ce que tu veux.

Serge

Serge Rapenne
Messages : 1426
Enregistré le : 20 Aoû 2007, 15:17
Contact :

Re: Même gradient de couleur pour des graphiques différents

Messagepar Serge Rapenne » 02 Nov 2017, 15:03

Bon la solution avec ylim ne va pas fonctionner.

Après qq recherches, il semble que la fonction plot que tu utilises est la fonction plot.mask du package secr (il aurait été sympa de l'indiquer dans ton message).

En regardant l'aide de la fonction plot.mask, je pense que c'est le paramètre breaks qui doit être identique sur les 6 graphiques.

qq chose du style

Code : Tout sélectionner

breaks = 1:10, col = terrain.colors(10)

à adapter aux valeurs dans ruggXcovmask

Serge

Elsa Bussière
Messages : 86
Enregistré le : 30 Mar 2011, 09:34
Contact :

Re: Même gradient de couleur pour des graphiques différents

Messagepar Elsa Bussière » 02 Nov 2017, 19:50

Merci beaucoup,
Effectivement c'est bien plot.mask et je n'en avais pas vraiment bien pris conscience.
En effet, package secr.

Voilà comment j'y suis arrivée au final,

six cartes:
A: valeurs de 0:130 (14 breaks)
B: valeurs de 0:110 (12 breaks)
C: valeurs de 0:80 (9 breaks)
D: valeurs de 0:100 (11 breaks)
E: valeurs de 0:200 (21 breaks)
F: valeurs de 0:140 (15 breaks)

Pour toutes, le même nombre de couleurs dans la palette, 20 pour que cela fonctionne avec carte E qui a 21 breaks.

Code : Tout sélectionner

plot(ruggAcovmask, covariate = "ruggedness" ,legend = F,  cex=3, pch=15, breaks=14, col = terrain.colors(20))
plot(ruggBcovmask, covariate = "ruggedness", legend = F,  cex=3, pch=15, breaks=12, col = terrain.colors(20))
plot(ruggCcovmask, covariate = "ruggedness", legend = F,  cex=3, pch=15, breaks=9,   col = terrain.colors(20))
plot(ruggDcovmask, covariate = "ruggedness", legend = F,  cex=3, pch=15, breaks=11, col = terrain.colors(20))
plot(ruggEcovmask, covariate = "ruggedness", legend = F,  cex=3, pch=15, breaks=21, col = terrain.colors(20))
plot(ruggFcovmask, covariate = "ruggedness", legend = F,  cex=3, pch=15, breaks=15, col = terrain.colors(20))


Merci,
Elsa
Elsa Bussière


Retourner vers « Questions en cours »

Qui est en ligne

Utilisateurs parcourant ce forum : Google [Bot] et 1 invité