Ressources numériques en sciences humaines et sociales OpenEdition Nos plateformes OpenEdition Books OpenEdition Journals Hypothèses Calenda Bibliothèques OpenEdition Freemium Suivez-nous

Visualisation interactive de résultats d’ACP et d’ACM avec R et explor

explor est un package récent pour R dont l’objectif est de faciliter la visualisation et l’exploration de résultats d’analyses en composantes principales (ACP) ou d’analyses des correspondances (ACM).

Son utilisation est très simple : vous effectuez votre analyse à l’aide des fonctions dont vous avez l’habitude (actuellement sont supportées les fonctions des packages ade4 et FactoMineR) et vous appliquez simplement la fonction explor() à l’objet résultat.

Voici un exemple très simple reprenant un jeu de données de FactoMineR :

library(FactoMineR)
library(explor)

data(hobbies)
res.mca <- MCA(hobbies,quali.sup=19:22,quanti.sup=23)
explor(res.mca)

Une interface devrait alors se lancer (dans RStudio si vous utilisez cet environnement, sinon dans votre navigateur Web) et qui devrait ressembler vaguement à ceci :

 

 

L’interface change selon le type d’analyse, mais l’organisation globale reste la même : un barre d’onglets en haut de page vous permet de naviguer entre l’histogramme des valeurs propres, les tableaux de résultats et les graphiques représentant variables ou individus.

L’interface présente plusieurs fonctionnalités “interactives” :

  • Vous pouvez à tout moment modifier le ou les axes représentés
  • Les tableaux de résultats sont triables et filtrables dynamiquement
  • Vous pouvez sélectionner les points à afficher selon différents critères, leur opacité, leur taille
  • Vous pouvez associer couleur, symbole ou taille des points à différentes caractéristiques

Les graphiques eux-mêmes sont interactifs :

  • Vous pouvez zoomer avec la molette de la souris et vous déplacer dans le graphique en cliquant-déplaçant
  • Des tooltips apparaissent au survol des points avec les données correspondantes
  • Vous pouvez déplacer les étiquettes avec la souris pour les repositionner
  • Le survol des éléments de légende met en valeur les éléments correspondants

Les graphiques sont “dynamiques”, c’est-à-dire que les changements d’axes, de taille, de couleur ou de points affichés s’effectuent sous forme d’animations qui peuvent faciliter la visualisation.

Enfin, vous pouvez à tout moment exporter le graphique actuellement affiché au format SVG.

explor supporte pour le moment les fonctions CA, MCA et PCA du package FactoMineR, et les fonctions dudi.coa, dudi.acm et dudi.pca du package ade4. Si vous souhaitez l’essayer c’est très simple, il vous suffit de l’installer avec :

install.packages("explor")

Pour plus d’informations vous pouvez consulter :

Le projet est assez jeune, donc n’hésitez pas à faire remonter bugs ou suggestions dans les commentaires, sur GitHub ou sur la liste r-soc.


OpenEdition vous propose de citer ce billet de la manière suivante :
Julien Barnier (8 janvier 2016). Visualisation interactive de résultats d’ACP et d’ACM avec R et explor. QUANTI / Sciences sociales. Consulté le 10 décembre 2024 à l’adresse https://doi.org/10.58079/t4bm


Vous aimerez aussi...

29 réponses

  1. Yohan V. dit :

    Bonjour,

    Lorsque j’exécute la commande la fenêtre souhaitée disparait aussitôt après son apparition.

    J’obtiens ce message d’erreur

    Listening on http://127.0.0.1:3820
    ERROR: [on_request_read] connection reset by peer

    Pourriez-vous m’orienter sur le problème et la façon de le “fixer” ?
    D’avance merci.

  2. Claire Lemercier dit :

    Bonjour,
    Ca a l’air vraiment excellent, et j’ai enfin quelque chose à conseiller pour faire des graphes avec FactoMineR, mille mercis !
    En revanche je suis embêtée car j’utilise, pour l’ACM spécifique, la bibliothèque GDAtools de Nicolas Robette, qui retourne les résultats sous un format légèrement différent (notamment, le problème est je crois que ses résultats sont un objet de classe “list”). Bon, il faut que je prenne le temps de regarder ça de plus près pour trouver peut-être moi-même une “moulinette” pour transformer les résultats de sa fonction speMCA en quelque chose d’utilisable par explor. Mais si vous, Julien, et/ou Nicolas voulez aussi y penser afin que cela serve à tout le monde… (voir https://cran.r-project.org/web/packages/GDAtools/index.html)

    • Julien Barnier dit :

      Bonjour Claire,

      J’essaierai de regarder à l’occasion, je ne connaissais pas ce package. Je ne sais pas exactement quand je pourrai me pencher dessus, mais j’ai ouvert un ticket sur le Github d’explor :

      https://github.com/juba/explor/issues/3

    • Julien Barnier dit :

      Bonjour Claire,

      Désolé pour le délai, mais je viens de mettre en ligne sur le CRAN une nouvelle version d’explor qui supporte désormais les résultats de la fonction speMCA de GDAtools. Elle gère aussi le paramètre “excl” de la fonction MCA de FactoMineR, qui semble jouer un rôle assez semblable.

      Ne pas hésiter à me signaler tout problème ou autre suggestion d’amélioration !

  3. Mathilde Van Drooghenbroeck dit :

    Bonjour,
    un tout grand merci pour ce superbe outil qu’est explor!
    Je me posais une question concernant l’exportation des graphes: que recommandez-vous d’utiliser pour conserver la qualité de leur rendu (au départ d’un navigateur web)? Merci beaucoup!

    • Julien Barnier dit :

      Bonjour,

      Si vous souhaitez exporter un graphe pour l’inclure dans un document type traitement de texte, le mieux est d’utiliser l’export SVG. Il s’agit d’un format d’image vectoriel, donc redimensionnable sans perte de qualité. Le format SVG est insérable normalement directement dans un document sous LibreOfFice. Si vous êtes sous Word c’est un peu plus compliqué, il faut d’abord le convertir au format WMF ou EMF avant de pouvoir l’insérer. Un fichier SVG peut être édité ou converti avec un logiciel libre comme Inkscape, par exemple.

      Si le SVG ne fonctionne pas, vous pouvez toujours faire une capture d’écran et récupérer une image bitmap, mais dans ce cas la qualité sera moins bonne.

      Enfin, l’idéal quand c’est possible est de composer votre document sous Rmarkdown, et de générer à partir de là un document HTML. Vous pourrez alors insérer le code R du graphique exporté depuis explor, et votre document inclura le graphique interactif, avec possibilité de zoom, déplacement des labels, etc.

  4. Lyn BOUSSENGUI dit :

    Bonjour,
    J’ai réalisé une ACM à l’aide de GDAtools mais je fait face à un soucis pour afficher mes données. Le package ‘explorer’ n’arrive pas à afficher les résultats et me renvoi le message suivant :
    Error in UseMethod(“explor”) :
    pas de méthode pour ‘explor’ applicable pour un objet de classe “c(‘speMCA’, ‘list’)”

    Que dois-je faire ?
    Merci pour votre réponse

    • Julien Barnier dit :

      Bonjour,

      Quelle version d’explor utilisez-vous ? Ce message ne devrait pas apparaître avec une version récente…

  5. Lyn BOUSSENGUI dit :

    Je ne sais pas exactement quelle est la version de ‘explor’ , je l’ai installé à partir de R directement en faisant library(explor).
    Comment avoir la dernière version ?

  6. Lyn BOUSSENGUI dit :

    bonjour,
    J’espère que ma question ne va pas paraitre bête, est-il possible de mettre des variables en supplémentaires dans la fonction speMCA ? Si oui, comment ?
    J’ai essayé de le faire comme avec la fonction MCA, mais j’ai un message d’erreur.

    • Julien Barnier dit :

      Il n’y a pas de question bête :-)

      Je n’ai pas l’impression qu’il soit possible d’ajouter des variables supplémentaires avec speMCA. Une alternative pourrait être d’utiliser le paramètre excl de la fonction MCA de FactoMineR.

      • Louis dit :

        Le problème étant qu’en utilisant le paramètre excl de la fonction MCA de FactoMineR, on ne peut pas non plus ajouter de variables supplémentaires (il faut, à ce moment là, indiquer les variables actives).
        Après plusieurs heures de galère il me semble qu’il n’est, pour le moment, pas possible d’ajouter des variables supplémentaires à une ACM spécifique sur R (on peut variable par variable sur GDAtools mais le fonctionnement est très différent) et donc, qu’il est impossible de représenter des variables supplémentaires avec des packages graphiques comme explor ou FactoShiny.
        C’est vraiment dommage mais j’imagine que ce doit être difficile à mettre en place.

  7. Thomas Clapasson dit :

    Bonjour,

    Je viens de lancer mon package explor qui marche pour les fonctions de bases et est vraiment fantastique encore merci et bravo !
    Cependant, ma console n’affiche pas les vignettes : variables-données, individus-graphiques, individus-données que l’on peut voir sur la vidéo de présentation et qui m’ont l’air très utiles, surtout pour faire des ellipses ou manipuler au mieux mes données.
    Je vous demande donc comment puis-je trouver une solution pour obtenir ces vignettes.
    Cordialement, Bonne soirée à vous.

    • Julien Barnier dit :

      Bonjour,

      Est-ce que vous pourriez préciser ce que vous entendez par “vignette” ? Je ne suis pas sûr de comprendre ce qui ne fonctionne pas. Merci pour votre retour en tous cas !

      • Thomas Clapasson dit :

        Bonjour,

        Je vais essayer d’être un peu plus clair. Dans le menu de la fenêtre ouverte par la fonction explor, sur le gif présenté plus haut on peut voir apparaître plusieurs fonctions de représentation comme “Valeurs propres” “Variables -Graphique” “variables données” “individus-graphique” “individus-données”

        Or sur ma fenêtre, je n’ai accès qu’à : “valeurs propre” qui me donne l’histogramme d’inertie, “graphique” et “données”.

        Rien qu’avec cela je peux déjà faire beaucoup de chose par rapport à mon sujet d’étude, mais les fonctions accessibles sur votre présentation me font un peu rêver et je reste frustré ne pouvoir y accéder.

        J’espère avoir été assez clair dans mon explication, n’hésitez pas à me redemander si jamais, je ferais de mon mieux.
        Bonne journée à vous !
        cordialement. Thomas.

        • Julien Barnier dit :

          Ah, je comprends mieux. J’imagine que c’est parce que vous faites une analyse des correspondances simples sur un tableau croisé, il n’y a donc pas à strictement parler d’individus et de variables, seulement des modalités en ligne et d’autres en colonnes. C’est pourquoi pour une AFC il n’y a que 3 onglets “Valeurs propres”, “Individus” et “Données”.

          Si vous faites une ACP ou ACM, par contre, vous verrez normalement les onglets “Individus” et “Variables”.

  8. ramahandrison dit :

    bonjour, j’ai téléchargé le package explor, tout marche très bien sauf un petit hic, en faisant mon ACP et ouvrant les résultats sur explor je ne peux pas les définir les couleurs. pour être plus précis l’onglet color n’apparaît pas.
    merci de votre réponse

  9. Le Franc dit :

    Bonjour,
    J’aimerai beaucoup utiliser votre package qui semble très pratique! Pour l’instant, la console n’affiche pas les graphiques de mon ACM (celui des variables et celui des individus).
    J’ai la version 0.3.6. du package.
    Aussi, j’ai un message d’erreur sous le tableau des variables actives : “des entrées de longueur nulle ne peuvent être mélangés avec celles de longueur non nulle”.
    Cela signifie-t-il qu’un problème viens de mes données ou bien de ma version de R/du package explor?
    Cordialement,
    Victor

    • Julien Barnier dit :

      Bonjour, vous devriez avant toute chose mettre explor à jour à la dernière version disponible (en l’occurrence la 0.3.9). Il y a des chances que cela résolve le problème.

  10. Alice dit :

    Bonjour,
    J’ai fait une ACM avec explor que je souhaiterais télécharger (sous format jpg par exemple) en bonne qualité, mais impossible de savoir comment faire. Est-ce possible ?
    Merci beaucoup,
    Alice

    • Julien Barnier dit :

      Bonjour,

      Pour l’export des graphiques, vous pouvez à tout moment cliquer sur l’icône en forme d’engrenage en haut à droite du graphique et choisir “Export to SVG”. Cela vous permettra d’obtenir le graphique actuellement affiché dans un format vectoriel pour inclusion dans un autre logiciel, conversion, etc. Sinon il y a toujours la possibilité de faire une capture d’écran qui permet d’obtenir directement du jpeg, mais c’est un peu moins “propre”.

      • Alice dit :

        Merci pour votre réponse :). J’ai en effet fait une capture d’écran mais la qualité n’était vraiment pas suffisante pour l’inclure dans mon article. J’ai également essayé “export to SVG” et fait comme avez dit ci-dessus pour le convertir en WMF, mais la qualité n’était pas bonne non plus. Je l’ai donc convertie en JPG directement, sauf que cette fois, les étiquettes étaient toutes décalées… Auriez-vous une autre solution par hasard..?
        Merci beaucoup !
        Alice

        • Julien Barnier dit :

          Alors je n’aurais malheureusement pas de solution magique… Quel outil avez-vous utilisé pour la conversion en wmf ? Il n’était pas possible d’inclure le graphique directement en SVG ? Sinon vous pouvez essayer d’installer inkscape, logiciel libre de dessin vectoriel, qui devrait notamment vous permettre d’ouvrir le SVG et de le convertir en JPEG ou PNG avec une résolution suffisante…

          • Alice dit :

            J’ai utilisé plusieurs convertisseurs en ligne et Inkscape. Malheureusement, la qualité n’est pas suffisamment bonne ou le format n’est pas conservé et donc mon ACM ne ressemble plus à grand chose… La meilleure solution pour l’instant est en effet d’inclure directement le SVG sur le word mais il y a toujours quelques décalages, notamment avec les titres des axes… Je vais continuer à chercher. Merci beaucoup,
            Bonne journée :)
            Alice

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.