Ordre axe des abscisses graphe gam

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

Cyrielle Jac
Messages : 55
Enregistré le : 13 Mar 2017, 08:30

Ordre axe des abscisses graphe gam

Messagepar Cyrielle Jac » 19 Sep 2020, 16:19

Bonjour à tous,

J'ai un petit problème de la représentation de mon axe des abscisses. Je représente des classes sédimentaires donc j'aimerais qu'elles soient classées de manière croissante.

Donc voici mon code pour mettre les bon "levels dans mon datafit pour les sédiments :

Code : Tout sélectionner

datafit$CODE_SEDIM <- factor(datafit$CODE_SEDIM, levels = c("M", "FS", "CS", "G", "P"))


J'ai essayé aussi avec ça :

Code : Tout sélectionner

levels(datafit$CODE_SEDIM) <-c("M", "FS", "CS", "G", "P")


Ensuite je fais un gam:

Code : Tout sélectionner

full1_gam<- gam(TDI ~ s(FA, k=3) + s(Salinity, k=3) + Ti + s(wave_stress, k=3)
               + s(friction_velo, k=3)  + s(bed_stress, k=3)
               + CODE_SEDIM+ Year, data=datafit, family = gaussian)


Puis je veux des graphes avec mes résidus partiels pour chaque variable donc je fais tourner le code suivant:

Code : Tout sélectionner

library(mgcViz)
df_fig <- getViz(full1_gam)

fig_sediment <- plot(df_fig,
                     rug = F,
                     residuals = F,
                     select = 7) +
  l_ciBar(lwd = 1, lty = 1, width = 0.2)+
  l_fitPoints()+
  labs(x = "Sediment type",y = "Partial residuals")


Et c'est là où j'ai un bug, mes "sédiments" s'affichent par ordre alphabétique donc CS, FS, G, M, P et non M, FS, CS, P, G

Pourtant quand je fait juste un plot "normal" les sédiments sont bien "rangés" dans le sens que je veux...

Code : Tout sélectionner

plot(TDI~CODE_SEDIM, data=datafit)


Je comprends vraiment pas d'où viens le souci.

Quelqu'un aurais une idée pour que j'obtiennes ce que je souhaites?

Cordialement

Cyrielle

Mickael Canouil
Messages : 1315
Enregistré le : 04 Avr 2011, 08:53
Contact :

Re: Ordre axe des abscisses graphe gam

Messagepar Mickael Canouil » 20 Sep 2020, 13:19

Bonjour,

faute de code reproductible, je ne peux que spéculer ...

Visiblement vous utilisez l'extension mgcViz pour générer vos graphiques via une méthode spécifique de plot().
Ainsi, soit il existe un paramètre dans cette méthode pour ordonner les variables que vous pourriez utiliser, soit la méthode transforme par défaut les variables en facteur et impose un ordre alpha-numérique, dans ce dernier cas, vous pouvez tenter de modifier la fonction ou vous dirigez vers une autre extension/fonction.

Cordialement,
Mickaël
mickael.canouil.fr | rlille.fr


Retourner vers « Questions en cours »

Qui est en ligne

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