{"id":2850,"date":"2026-10-14T18:00:54","date_gmt":"2026-10-14T18:00:54","guid":{"rendered":"http:\/\/french.arabpsychology.com\/statistics\/comment-superposer-des-graphiques-dans-r-avec-des-exemples\/"},"modified":"2026-10-14T18:00:54","modified_gmt":"2026-10-14T18:00:54","slug":"comment-superposer-des-graphiques-dans-r-avec-des-exemples","status":"publish","type":"psych_stat","link":"https:\/\/french.arabpsychology.com\/?psych_stat=comment-superposer-des-graphiques-dans-r-avec-des-exemples","title":{"rendered":"Comment superposer des graphiques dans R (avec des exemples)"},"content":{"rendered":"<p>Dans le champ de l&rsquo;analyse exploratoire des donn\u00e9es et de la communication scientifique, la restitution graphique constitue bien plus qu&rsquo;une simple \u00e9tape illustrative : elle incarne un instrument cognitif central pour la d\u00e9tection de structures latentes, l&rsquo;\u00e9valuation de mod\u00e8les statistiques et la mise \u00e0 l&rsquo;\u00e9preuve d&rsquo;hypoth\u00e8ses empiriques. Au sein du langage de programmation statistique <a rel=\"noopener noreferrer\" href=\"https:\/\/www.r-project.org\/\">R<\/a>, la capacit\u00e9 \u00e0 juxtaposer et \u00e0 superposer de multiples flux d&rsquo;informations sur un m\u00eame rep\u00e8re visuel repr\u00e9sente une comp\u00e9tence fondamentale pour tout chercheur ou praticien de la science des donn\u00e9es. Plut\u00f4t que de multiplier les panneaux disjoints \u2014 une approche qui fragilise la comparaison visuelle directe \u2014, la superposition m\u00e9thodique de couches de donn\u00e9es permet d&rsquo;ancrer imm\u00e9diatement les contrastes, les similitudes, les trajectoires d&rsquo;\u00e9volution temporelle et les \u00e9carts aux pr\u00e9dictions th\u00e9oriques.<\/p>\n<p>L&rsquo;environnement R se distingue par une dualit\u00e9 architecturale singuli\u00e8re en mati\u00e8re de rendu graphique. D&rsquo;un c\u00f4t\u00e9 s&rsquo;impose le moteur graphique traditionnel, commun\u00e9ment d\u00e9sign\u00e9 sous l&rsquo;appellation de <em>Base R<\/em>, reposant sur un mod\u00e8le s\u00e9quentiel imp\u00e9ratif o\u00f9 les primitives g\u00e9om\u00e9triques sont dessin\u00e9es pas \u00e0 pas sur un canevas num\u00e9rique fixe. De l&rsquo;autre se d\u00e9ploie l&rsquo;\u00e9cosyst\u00e8me d\u00e9claratif contemporain articul\u00e9 autour de <a rel=\"noopener noreferrer\" href=\"https:\/\/ggplot2.tidyverse.org\/\">ggplot2<\/a> et de la grammaire des graphiques th\u00e9oris\u00e9e par Leland Wilkinson. Ma\u00eetriser l&rsquo;art de la superposition dans R exige une compr\u00e9hension approfondie de ces paradigmes : saisir comment les primitives de bas niveau interagissent avec l&rsquo;infrastructure du moteur d&rsquo;affichage sous-jacent, comment harmoniser les fen\u00eatres m\u00e9triques, et comment concevoir des figures conformes aux exigences les plus strictes de la communication acad\u00e9mique internationale.<\/p>\n<p>Le pr\u00e9sent trait\u00e9 propose une exploration exhaustive, m\u00e9thodique et avanc\u00e9e des techniques de superposition graphique au sein de R. De la manipulation \u00e9l\u00e9mentaire des fonctions de bas niveau telles que <code>points()<\/code> et <code>lines()<\/code> jusqu&rsquo;\u00e0 l&rsquo;orchestration complexe d&rsquo;axes secondaires via l&rsquo;alt\u00e9ration de l&rsquo;\u00e9tat graphique <code>par(new = TRUE)<\/code>, en passant par le trac\u00e9 d&rsquo;enveloppes d&rsquo;incertitude polygonales et la transition vers l&rsquo;architecture en couches de <code>ggplot2<\/code>, ce guide d\u00e9taille l&rsquo;ensemble des protocoles requis pour concevoir des visualisations multivari\u00e9es d&rsquo;une rigueur irr\u00e9prochable.<\/p>\n<h2>1. Introduction \u00e0 la superposition graphique dans l&rsquo;environnement R<\/h2>\n<h3>1.1 Fondements conceptuels de la visualisation multivari\u00e9e en R<\/h3>\n<p>La visualisation de donn\u00e9es empiriques ne se r\u00e9duit pas \u00e0 une transcription m\u00e9canique de tables num\u00e9riques vers des coordonn\u00e9es spatiales ; elle ob\u00e9it aux lois de la perception visuelle humaine et \u00e0 la n\u00e9cessit\u00e9 de minimiser la charge cognitive lors de l&rsquo;extraction d&rsquo;inf\u00e9rences. L&rsquo;importance de la superposition visuelle dans l&rsquo;analyse comparative des donn\u00e9es empiriques r\u00e9side principalement dans l&rsquo;exploitation des m\u00e9canismes pr\u00e9-attentifs identifi\u00e9s par la psychophysique. Lorsque deux s\u00e9ries d&rsquo;observations partagent un m\u00eame rep\u00e8re cart\u00e9sien, l&rsquo;\u0153il humain peut \u00e9valuer instantan\u00e9ment les diff\u00e9rentiels d&rsquo;amplitude, les changements de courbure, les croisements de tendances ou l&rsquo;h\u00e9t\u00e9rog\u00e9n\u00e9it\u00e9 des variances locales. La s\u00e9paration des donn\u00e9es sur des sous-graphiques adjacents (ou <em>facettes<\/em>) contraint l&rsquo;observateur \u00e0 op\u00e9rer des mouvements saccadiques oculaires r\u00e9p\u00e9t\u00e9s, ce qui sollicite la m\u00e9moire de travail \u00e0 court terme et d\u00e9grade la pr\u00e9cision de l&rsquo;estimation quantitative relative.<\/p>\n<p>L&rsquo;\u00e9volution des syst\u00e8mes graphiques dans R t\u00e9moigne de cette qu\u00eate perp\u00e9tuelle d&rsquo;\u00e9quilibre entre flexibilit\u00e9 algorithmique et coh\u00e9rence structurelle. Le moteur historique de <em>Base R<\/em>, issu du langage S d\u00e9velopp\u00e9 aux Bell Laboratories par John Chambers et ses coll\u00e8gues, a \u00e9t\u00e9 con\u00e7u selon une philosophie proc\u00e9durale : l&rsquo;utilisateur initialise une zone de trac\u00e9, puis y applique s\u00e9quentiellement des couches d&rsquo;encre num\u00e9rique. En contraste, l&rsquo;av\u00e8nement des syst\u00e8mes graphiques en grille (<em>grid graphics<\/em>) sous l&rsquo;impulsion de Paul Murrell, suivi de l&rsquo;impl\u00e9mentation de la <em>Grammar of Graphics<\/em> par Hadley Wickham, a formalis\u00e9 la superposition non plus comme une succession temporelle d&rsquo;instructions de dessin, mais comme une combinaison alg\u00e9brique d&rsquo;objets g\u00e9om\u00e9triques li\u00e9s \u00e0 des \u00e9chelles de variables abstraites. Comprendre la dialectique entre ces deux approches constitue le socle m\u00e9thodologique indispensable \u00e0 toute production graphique de haut niveau.<\/p>\n<p>Sur le plan m\u00e9thodologique, l&rsquo;int\u00e9gration de multiples s\u00e9ries sur un rep\u00e8re orthogonal unique conf\u00e8re une puissance analytique singuli\u00e8re : elle permet d&rsquo;aligner rigoureusement les distributions observ\u00e9es sur leurs lois limites th\u00e9oriques, d&rsquo;\u00e9valuer la proximit\u00e9 de deux trajectoires longitudinales concurrentes ou de projeter des estimations non param\u00e9triques directement sur la dispersion brute des observations individuelles. Toutefois, cette concentration d&rsquo;\u00e9l\u00e9ments informatifs impose une discipline stricte. Les crit\u00e8res de lisibilit\u00e9 scientifique exigent de pr\u00e9server le ratio encre-donn\u00e9es cher \u00e0 Edward Tufte, d&rsquo;\u00e9viter la saturation sensorielle et de pr\u00e9venir toute ambigu\u00eft\u00e9 s\u00e9miotique. La surcharge cognitive survient d\u00e8s lors que l&rsquo;enchev\u00eatrement des couches graphiques dissimule les structures sous-jacentes au lieu de les r\u00e9v\u00e9ler, transformant une figure scientifique rigoureuse en un artefact illisible.<\/p>\n<h3>1.2 Le mod\u00e8le de dessin s\u00e9quentiel du moteur graphique standard<\/h3>\n<p>Le moteur graphique standard de R fonctionne selon le paradigme universellement document\u00e9 de la \u00ab peinture sur canevas \u00bb (<em>painter&rsquo;s model<\/em>). Dans cette architecture, chaque \u00e9l\u00e9ment graphique nouveau est appliqu\u00e9 sur un plan bidimensionnel statique pr\u00e9alablement allou\u00e9 en m\u00e9moire vive. D\u00e8s qu&rsquo;un pixel ou un vecteur est projet\u00e9 sur ce canevas, il modifie irr\u00e9versiblement l&rsquo;\u00e9tat des registres d&rsquo;affichage pour la zone g\u00e9ographique concern\u00e9e. Il n&rsquo;existe pas, au sein des primitives de <em>Base R<\/em>, de structure de graphe de sc\u00e8ne (<em>scene graph<\/em>) r\u00e9troactive permettant de modifier a posteriori la position ou les attributs d&rsquo;un \u00e9l\u00e9ment trac\u00e9 pr\u00e9c\u00e9demment, sans r\u00e9initialiser la totalit\u00e9 de la fen\u00eatre graphique.<\/p>\n<p>Ce fonctionnement impose une diff\u00e9renciation structurelle cat\u00e9gorique entre les fonctions graphiques de haut niveau (<em>high-level plotting functions<\/em>) et les fonctions de bas niveau (<em>low-level plotting functions<\/em>). Les fonctions de haut niveau, dont la commande embl\u00e9matique est <code>plot()<\/code>, mais qui englobent \u00e9galement <code>hist()<\/code>, <code>boxplot()<\/code> ou <code>barplot()<\/code>, poss\u00e8dent la double responsabilit\u00e9 de r\u00e9initialiser le canevas, de calculer les dimensions g\u00e9om\u00e9triques de la bo\u00eete englobante, de positionner les axes cart\u00e9siens avec leurs graduations respectives et d&rsquo;allouer les marges p\u00e9riph\u00e9riques. \u00c0 l&rsquo;inverse, les fonctions de bas niveau \u2014 telles que <code>lines()<\/code>, <code>points()<\/code>, <code>polygon()<\/code>, <code>segments()<\/code>, <code>rect()<\/code> ou <code>abline()<\/code> \u2014 sont strictement incapables d&rsquo;engendrer un rep\u00e8re autonome. Elles requi\u00e8rent imp\u00e9rativement l&rsquo;existence pr\u00e9alable d&rsquo;une fen\u00eatre de coordonn\u00e9es active au sein de laquelle elles viennent injecter leurs composantes spatiales.<\/p>\n<p>Par voie de cons\u00e9quence, la gestion de l&rsquo;ordre d&#8217;empilement des couches (le concept de <em>z-index<\/em> dans les environnements graphiques vectoriels) est directement gouvern\u00e9e par la chronologie d&rsquo;ex\u00e9cution des commandes dans la console ou le script d&rsquo;ex\u00e9cution. Une couche appel\u00e9e ult\u00e9rieurement viendra immanquablement recouvrir, masquer ou alt\u00e9rer la nettet\u00e9 des couches pr\u00e9alablement mat\u00e9rialis\u00e9es. Si un praticien appelle un nuage dense de points opaques apr\u00e8s avoir trac\u00e9 une courbe de r\u00e9gression liss\u00e9e, cette derni\u00e8re sera partiellement ou totalement occult\u00e9e, corrompant la lecture des tendances macroscopiques. La planification s\u00e9quentielle rigoureuse des appels aux fonctions de dessin s&rsquo;\u00e9rige donc en exigence algorithmique incontournable.<\/p>\n<h2>2. Le moteur graphique de base (Base R) et les fonctions de bas niveau<\/h2>\n<h3>2.1 Fonctionnement de base de l&rsquo;instruction plot() initiale<\/h3>\n<p>L&rsquo;amorce de toute composition graphique en Base R n\u00e9cessite l&rsquo;ex\u00e9cution d\u00e9lib\u00e9r\u00e9e d&rsquo;une fonction de haut niveau destin\u00e9e \u00e0 configurer l&rsquo;espace cart\u00e9sien global. L&rsquo;instruction fondamentale <code>plot()<\/code> assume cette pr\u00e9rogative architecturale en r\u00e9alisant une s\u00e9rie d&rsquo;op\u00e9rations d&rsquo;\u00e9talonnage math\u00e9matique sous-jacentes. D\u00e8s sa sollicitation, elle analyse les vecteurs d&rsquo;entr\u00e9e afin d&rsquo;en d\u00e9duire les bornes extr\u00eames, calcule l&#8217;emprise requise pour les \u00e9tiquettes textuelles p\u00e9riph\u00e9riques et d\u00e9limite la r\u00e9gion de tra\u00e7age (<em>figure region<\/em>) par rapport aux marges ext\u00e9rieures du p\u00e9riph\u00e9rique d&rsquo;affichage (configur\u00e9es au niveau global par la variable interne <code>par(\"mar\")<\/code>).<\/p>\n<p>La s\u00e9lection des arguments fondamentaux de configuration de la fen\u00eatre d&rsquo;affichage rev\u00eat une port\u00e9e strat\u00e9gique d\u00e8s cette \u00e9tape pr\u00e9liminaire. Les param\u00e8tres directeurs <code>xlim<\/code> et <code>ylim<\/code> permettent de contraindre explicitement les \u00e9tendues minimale et maximale des axes abscisse et ordonn\u00e9e, neutralisant les calculs automatiques parfois trop restrictifs du moteur d&rsquo;inf\u00e9rence statistique. Par ailleurs, des arguments tels que <code>xlab<\/code>, <code>ylab<\/code>, <code>main<\/code>, <code>sub<\/code>, ainsi que les indicateurs de style d&rsquo;axes tels que <code>bty<\/code> (d\u00e9finissant la topologie de la bo\u00eete englobante : compl\u00e8te, semi-ouverte en \u00ab L \u00bb, ou totalement omise) constituent la structure d&rsquo;accueil au sein de laquelle les \u00e9l\u00e9ments g\u00e9om\u00e9triques futurs viendront s&rsquo;imbriquer sans distorsion m\u00e9trique.<\/p>\n<p>Une incompr\u00e9hension fr\u00e9quente chez les utilisateurs n\u00e9ophytes r\u00e9side dans les cons\u00e9quences de l&rsquo;\u00e9crasement involontaire du canevas par des appels successifs non contr\u00f4l\u00e9s de la commande <code>plot()<\/code>. L&rsquo;\u00e9mission d&rsquo;une seconde commande <code>plot(x2, y2)<\/code> cons\u00e9cutive \u00e0 une premi\u00e8re instruction <code>plot(x1, y1)<\/code> n&rsquo;aboutit aucunement \u00e0 l&rsquo;adjonction de la nouvelle s\u00e9rie au trac\u00e9 existant ; elle d\u00e9clenche la r\u00e9initialisation imm\u00e9diate du dispositif graphique actif (<em>device<\/em>), purgeant int\u00e9gralement le canevas pr\u00e9alable pour y substituer un nouveau syst\u00e8me de coordonn\u00e9es. Pour d\u00e9roger \u00e0 cette r\u00e9initialisation destructrice et impl\u00e9menter une v\u00e9ritable superposition, il est indispensable de d\u00e9l\u00e9guer l&rsquo;ajout des flux d&rsquo;observations subs\u00e9quents aux fonctions de bas niveau d\u00e9di\u00e9es.<\/p>\n<h3>2.2 R\u00f4le et sp\u00e9cificit\u00e9s de la fonction lines()<\/h3>\n<p>La fonction <code>lines()<\/code> incarne la directive fondamentale pour l&rsquo;adjonction de g\u00e9om\u00e9tries unidimensionnelles continues au sein d&rsquo;un trac\u00e9 pr\u00e9\u00e9tabli. Contrairement \u00e0 l&rsquo;instruction d&rsquo;initialisation, <code>lines()<\/code> s&rsquo;abstient rigoureusement de red\u00e9finir les marges ou d&rsquo;ajuster les bornes m\u00e9triques : elle prend acte des coordonn\u00e9es matricielles ou vectorielles qui lui sont soumises pour projeter une trajectoire segment\u00e9e reliant cons\u00e9cutivement les points d&rsquo;inflexion dans l&rsquo;ordre strict d&rsquo;indexation de leur passage en param\u00e8tre.<\/p>\n<p>Le contr\u00f4le de la s\u00e9mantique visuelle du trac\u00e9 s&rsquo;op\u00e8re au moyen de param\u00e8tres g\u00e9om\u00e9triques normalis\u00e9s. L&rsquo;argument <code>lty<\/code> (<em>line type<\/em>) permet d&rsquo;attribuer une signature structurelle \u00e0 la trajectoire au moyen de codages entiers ou de cha\u00eenes descriptives pr\u00e9d\u00e9finies : plein (<code>1<\/code> ou <code>\"solid\"<\/code>), tiret\u00e9 (<code>2<\/code> ou <code>\"dashed\"<\/code>), pointill\u00e9 (<code>3<\/code> ou <code>\"dotted\"<\/code>), altern\u00e9 trait-point (<code>4<\/code> ou <code>\"dotdash\"<\/code>), tiret long (<code>5<\/code> ou <code>\"longdash\"<\/code>) ou double tiret (<code>6<\/code> ou <code>\"twodash\"<\/code>). L&rsquo;\u00e9paisseur de l&rsquo;entit\u00e9 lin\u00e9aire est quant \u00e0 elle modul\u00e9e via l&rsquo;argument scalaire positif <code>lwd<\/code> (<em>line width<\/em>), o\u00f9 la valeur unitaire standard (<code>lwd = 1<\/code>) peut \u00eatre d\u00e9multipli\u00e9e (par exemple <code>lwd = 2.5<\/code>) afin d&rsquo;\u00e9tablir une hi\u00e9rarchisation visuelle saillante au profit de mod\u00e8les centraux ou de tendances asymptotiques majeures.<\/p>\n<p>La gestion des s\u00e9ries temporelles discontinues et le traitement des valeurs manquantes (<code>NA<\/code>) constituent une sp\u00e9cificit\u00e9 technique d\u00e9terminante de la fonction <code>lines()<\/code>. Lorsqu&rsquo;un vecteur de donn\u00e9es comporte une valeur manquante au sein de sa structure interne, le moteur de trac\u00e9 interrompt m\u00e9caniquement la continuit\u00e9 du segment \u00e0 l&#8217;emplacement exact de la valeur non d\u00e9finie pour la reprendre \u00e0 la premi\u00e8re observation valide ult\u00e9rieure. Cette propri\u00e9t\u00e9 garantit une int\u00e9grit\u00e9 \u00e9pist\u00e9mologique stricte dans les visualisations longitudinales : les phases de rupture d&rsquo;acquisition instrumentale ou les arr\u00eats de suivi de cohortes cliniques apparaissent explicitement sous la forme d&rsquo;intervalles vides, emp\u00eachant l&rsquo;interpolation erron\u00e9e de donn\u00e9es non observ\u00e9es.<\/p>\n<h3>2.3 R\u00f4le et sp\u00e9cificit\u00e9s de la fonction points()<\/h3>\n<p>La projection de coordonn\u00e9es ponctuelles discr\u00e8tes sur un rep\u00e8re spatialis\u00e9 pr\u00e9existant rel\u00e8ve exclusivement de la fonction de bas niveau <code>points()<\/code>. Tout comme sa contrepartie lin\u00e9aire, <code>points()<\/code> n&rsquo;alt\u00e8re en rien l&rsquo;architecture param\u00e9trique de la fen\u00eatre active, mais it\u00e8re sur les vecteurs d&rsquo;abscisses et d&rsquo;ordonn\u00e9es transmis pour y mat\u00e9rialiser des glyphes g\u00e9om\u00e9triques discrets selon une pr\u00e9cision subpixel.<\/p>\n<p>L&rsquo;expressivit\u00e9 analytique de <code>points()<\/code> est r\u00e9gie en premier lieu par l&rsquo;argument typologique <code>pch<\/code> (<em>plotting character<\/em>), qui accepte des indices num\u00e9riques compris entre 0 et 25 ou des caract\u00e8res scalaires directs. Une distinction s\u00e9miotique cruciale s\u00e9pare les symboles dits \u00ab ouverts \u00bb ou \u00ab lin\u00e9aires \u00bb (indices 0 \u00e0 20) des glyphes dits \u00ab remplis \u00bb ou \u00ab composites \u00bb (indices 21 \u00e0 25). Tandis que les premiers modulent l&rsquo;int\u00e9gralit\u00e9 de leur silhouette via le param\u00e8tre de couleur g\u00e9n\u00e9rale <code>col<\/code>, les symboles 21 \u00e0 25 admettent une configuration orthogonale d\u00e9coupl\u00e9e : <code>col<\/code> pilote exclusivement la teinte du liser\u00e9 p\u00e9riph\u00e9rique de l&rsquo;\u00e9l\u00e9ment, tandis que le param\u00e8tre <code>bg<\/code> (<em>background<\/em>) gouverne l&rsquo;ombrage ou le remplissage chromatique de son aire interne. Cette distinction offre un levier graphique de premier ordre pour superposer des distributions tout en conservant une nettet\u00e9 absolue des intersections spatiales.<\/p>\n<p>L&rsquo;utilisation concert\u00e9e de <code>points()<\/code> s&rsquo;av\u00e8re particuli\u00e8rement f\u00e9conde dans le contexte de la mise en exergue de sous-populations exp\u00e9rimentales ou d&rsquo;observations statistiquement atypiques (<em>outliers<\/em>). Apr\u00e8s avoir g\u00e9n\u00e9r\u00e9 un nuage g\u00e9n\u00e9ral repr\u00e9sentatif d&rsquo;une population globale, le chercheur peut formuler un filtre d&rsquo;indexation bool\u00e9en pour isoler des vecteurs extr\u00eames satisfaisant un crit\u00e8re d&rsquo;\u00e9cart-type ou de distance de Mahalanobis, et les r\u00e9injecter via <code>points()<\/code> en modifiant drastiquement l&rsquo;\u00e9chelle de magnification <code>cex<\/code> (<em>character expansion<\/em>) ainsi que la signature colorim\u00e9trique. Cette d\u00e9marche garantit une mise en relief cibl\u00e9e sans n\u00e9cessiter la partition de l&rsquo;espace graphique global.<\/p>\n<h2>3. Superposition de diagrammes de dispersion : M\u00e9thodologie et exemples<\/h2>\n<h3>3.1 Mise en place d&rsquo;un protocole d&rsquo;affichage de nuages de points multiples<\/h3>\n<p>L&rsquo;affichage simultan\u00e9 de multiples nuages de points sur un rep\u00e8re orthogonal impose une discipline op\u00e9ratoire rigoureuse d\u00e8s la structuration des tables de donn\u00e9es. Les matrices ou data frames manipul\u00e9s doivent pr\u00e9senter une homog\u00e9n\u00e9it\u00e9 conceptuelle sur les axes de projection : les dimensions <span class=\"arabpsy-math-inline\" data-latex=\"X\">$X$<\/span> et <span class=\"arabpsy-math-inline\" data-latex=\"Y\">$Y$<\/span> doivent imp\u00e9rativement exprimer des grandeurs commensurables ou normalis\u00e9es selon des m\u00e9triques communes afin de pr\u00e9venir tout non-sens interpr\u00e9tatif lors de la lecture conjointe des s\u00e9ries.<\/p>\n<p>Le protocole algorithmique s&rsquo;articule canoniquement en trois temps m\u00e9thodologiques distincts. En premier lieu intervient l&rsquo;\u00e9talonnage global de la bo\u00eete de visualisation par un appel \u00e0 <code>plot()<\/code> sur le premier sous-ensemble de donn\u00e9es ou sur une matrice vide d\u00e9limit\u00e9e par les extrema de tous les groupes combin\u00e9s. Cette \u00e9tape de calibrage dimensionnel est critique : les minima et maxima globaux doivent englober la totalit\u00e9 des cohortes pr\u00e9vues au trac\u00e9. Dans un second temps, le nuage primaire est rendu en sp\u00e9cifiant ses attributs s\u00e9miologiques propres. Enfin, le protocole proc\u00e8de \u00e0 l&rsquo;incr\u00e9mentation successive de chaque cohorte secondaire au moyen d&rsquo;appels d\u00e9di\u00e9s \u00e0 <code>points()<\/code>, chaque it\u00e9ration traduisant une modalit\u00e9 sp\u00e9cifique d&rsquo;un facteur exp\u00e9rimental ou d&rsquo;une strate d\u00e9mographique.<\/p>\n<p>Cette approche syst\u00e9matique garantit que les observations marginales des groupes secondaires ne seront jamais tronqu\u00e9es par une fen\u00eatre d&rsquo;affichage calcul\u00e9e de mani\u00e8re myope sur la seule premi\u00e8re cohorte. Elle permet en outre d&rsquo;isoler au sein du script d&rsquo;analyse des blocs syntaxiques \u00e9tanches et reproductibles, o\u00f9 chaque couche de points peut faire l&rsquo;objet de modifications param\u00e9triques ind\u00e9pendantes sans perturber l&rsquo;agencement structural de la figure d&rsquo;ensemble.<\/p>\n<figure class=\"wpt-preserved-image\"><img fetchpriority=\"high\" decoding=\"async\" src=\"http:\/\/french.arabpsychology.com\/wp-content\/uploads\/2026\/09\/overlay2.png\" alt=\"Scatterplots overlayed in R with legend\" \/><figcaption>Scatterplots overlayed in R with legend<\/figcaption><\/figure>\n<h3>3.2 Diff\u00e9renciation graphique des sous-groupes exp\u00e9rimentaux<\/h3>\n<p>La superposition de sous-groupes exp\u00e9rimentaux multiples au sein d&rsquo;un m\u00eame rep\u00e8re soul\u00e8ve le d\u00e9fi de la discriminabilit\u00e9 visuelle. Selon les principes de la s\u00e9miologie graphique d\u00e9velopp\u00e9s par Jacques Bertin, l&rsquo;assignation discriminatoire des formes de marqueurs doit s&rsquo;appuyer sur des variables visuelles adapt\u00e9es au niveau de mesure des donn\u00e9es. Pour des variables cat\u00e9gorielles nominales, la variation conjointe du symbole g\u00e9om\u00e9trique (<code>pch<\/code>) et de la tonalit\u00e9 chromatique (<code>col<\/code>) constitue la m\u00e9thode la plus robuste pour assurer une s\u00e9gr\u00e9gation perceptive imm\u00e9diate et sans \u00e9quivoque.<\/p>\n<p>L&rsquo;utilisation d&rsquo;\u00e9chelles chromatiques standardis\u00e9es et de palettes issues de la recherche en perception visuelle \u2014 \u00e0 l&rsquo;instar des travaux de Cynthia Brewer disponibles via le paquet <a rel=\"noopener noreferrer\" href=\"https:\/\/cran.r-project.org\/package=RColorBrewer\">RColorBrewer<\/a> ou des palettes perceptuellement uniformes de la famille <em>Viridis<\/em> \u2014 s&rsquo;impose face aux couleurs primaires brutes de l&rsquo;environnement standard (comme <code>\"red\"<\/code> ou <code>\"blue\"<\/code>), dont les contrastes de luminance disproportionn\u00e9s faussent la hi\u00e9rarchie visuelle. De surcro\u00eet, ces palettes modernes pr\u00e9servent l&rsquo;int\u00e9grit\u00e9 du transfert d&rsquo;information chez les lecteurs atteints de d\u00e9ficiences de la vision des couleurs (daltonisme, deut\u00e9ranopie, protanopie).<\/p>\n<p>Lorsque la densit\u00e9 d&rsquo;\u00e9chantillonnage s&rsquo;accro\u00eet consid\u00e9rablement, le probl\u00e8me de l&rsquo;occultation totale des observations (sur-tra\u00e7age ou <em>overplotting<\/em>) menace directement la validit\u00e9 des conclusions empiriques tir\u00e9es du graphique. La solution la plus rigoureuse consiste \u00e0 mobiliser la transparence du canal alpha. Au sein de Base R, cette propri\u00e9t\u00e9 est configur\u00e9e par l&rsquo;interm\u00e9diaire de la fonction <code>rgb(red, green, blue, alpha)<\/code> ou par l&rsquo;ajout d&rsquo;un suffixe hexad\u00e9cimal \u00e0 deux chiffres aux codes couleurs standards (par exemple <code>\"#0000FF40\"<\/code> pour un bleu \u00e0 25 % d&rsquo;opacit\u00e9). Cette transparence gradu\u00e9e permet aux points superpos\u00e9s de s&rsquo;accumuler visuellement, traduisant m\u00e9caniquement les zones de concentration probabiliste \u00e9lev\u00e9e par une densit\u00e9 optique proportionnelle.<\/p>\n<h3>3.3 Exemple pratique document\u00e9 de dispersion superpos\u00e9e<\/h3>\n<p>Pour mat\u00e9rialiser ce protocole au sein d&rsquo;un sc\u00e9nario de recherche empirique, consid\u00e9rons la comparaison de performances cognitives issues de deux cohortes d&rsquo;\u00e9valuation psychom\u00e9trique soumises \u00e0 des conditions environnementales contrast\u00e9es (condition t\u00e9moin versus condition de stress cognitif aigu). L&rsquo;objectif analytique consiste \u00e0 projeter simultan\u00e9ment les scores d&rsquo;attention soutenue (abscisse) et de m\u00e9moire de travail (ordonn\u00e9e), tout en explicitant les singularit\u00e9s distributionnelles de chaque groupe exp\u00e9rimental.<\/p>\n<p>Le code source suivant d\u00e9taille la g\u00e9n\u00e9ration des donn\u00e9es simul\u00e9es, le calibrage g\u00e9om\u00e9trique global unifi\u00e9 et l&rsquo;adjonction s\u00e9quentielle des flux de mesures :<\/p>\n<p><code># Fixation de la graine du g\u00e9n\u00e9rateur al\u00e9atoire pour reproductibilit\u00e9<br \/>\nset.seed(101)<\/p>\n<p># Simulation des donn\u00e9es de la cohorte t\u00e9moin (Groupe A, N = 120)<br \/>\natt_groupeA &lt;- rnorm(120, mean = 50, sd = 10)<br \/>\nmem_groupeA &lt;- 15 + 0.65 * att_groupeA + rnorm(120, mean = 0, sd = 5)<\/p>\n<p># Simulation des donn\u00e9es du groupe de stress cognitif (Groupe B, N = 120)<br \/>\natt_groupeB &lt;- rnorm(120, mean = 45, sd = 12)<br \/>\nmem_groupeB &lt;- 25 + 0.35 * att_groupeB + rnorm(120, mean = 0, sd = 7)<\/p>\n<p># Calcul algorithmique des limites englobantes globales<br \/>\nbornes_x &lt;- range(c(att_groupeA, att_groupeB))<br \/>\nbornes_y &lt;- range(c(mem_groupeA, mem_groupeB))<\/p>\n<p># Initialisation du cadre d'affichage avec marges professionnelles<br \/>\npar(mar = c(4.5, 4.5, 2.5, 1.5))<\/p>\n<p># Trac\u00e9 de haut niveau de la premi\u00e8re cohorte avec bornes globales unifi\u00e9es<br \/>\nplot(att_groupeA, mem_groupeA,<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;xlim = bornes_x, ylim = bornes_y,<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pch = 21, col = \"#1B9E77\", bg = \"#1B9E7780\", cex = 1.2,<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;xlab = \"Indice d'Attention Soutenue (Score Standardis\u00e9)\",<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ylab = \"Capacit\u00e9 de M\u00e9moire de Travail (Points)\",<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;main = \"Performance Psychom\u00e9trique Comparative selon la Condition\",<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bty = \"l\", las = 1)<\/p>\n<p># Superposition de bas niveau de la seconde cohorte exp\u00e9rimentale<br \/>\npoints(att_groupeB, mem_groupeB,<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pch = 24, col = \"#D95F02\", bg = \"#D95F0280\", cex = 1.2)<\/p>\n<p># Int\u00e9gration de la l\u00e9gende descriptive structurelle<br \/>\nlegend(\"topleft\", legend = c(\"Condition T\u00e9moin\", \"Stress Cognitif\"),<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pch = c(21, 24), col = c(\"#1B9E77\", \"#D95F02\"),<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pt.bg = c(\"#1B9E7780\", \"#D95F0280\"), pt.cex = 1.2,<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bty = \"n\", cex = 0.9)<\/code><\/p>\n<p>L&rsquo;analyse s\u00e9quentielle de cette ex\u00e9cution d\u00e9montre la rigueur de la m\u00e9thode. L&rsquo;utilisation explicite de <code>range()<\/code> agr\u00e8ge l&rsquo;ensemble des extrema num\u00e9riques, pr\u00e9venant toute troncature des observations p\u00e9riph\u00e9riques du Groupe B lors de l&rsquo;ex\u00e9cution de <code>plot()<\/code> sur le Groupe A. L&#8217;emploi conjoint de symboles diff\u00e9renti\u00e9s (cercle versus triangle orient\u00e9 vers le haut) et de fonds semi-transparents permet d&rsquo;identifier imm\u00e9diatement les zones de forte densit\u00e9 d&rsquo;intersection o\u00f9 les donn\u00e9es des deux cohortes se chevauchent sans g\u00e9n\u00e9rer de confusion visuelle sur l&rsquo;appartenance cat\u00e9gorielle des points.<\/p>\n<p>L&rsquo;interpr\u00e9tation visuelle de la figure produite \u00e9claire directement la dynamique empirique : la cohorte t\u00e9moin pr\u00e9sente une corr\u00e9lation lin\u00e9aire positive marqu\u00e9e et une variance r\u00e9siduelle resserr\u00e9e autour de la droite de r\u00e9gression implicite, tandis que le groupe sous stress exp\u00e9rimental manifeste une dispersion nettement plus h\u00e9t\u00e9rog\u00e8ne, caract\u00e9ris\u00e9e par une pente de d\u00e9pendance att\u00e9nu\u00e9e et un \u00e9largissement sensible de la variance des scores en m\u00e9moire de travail aux valeurs d&rsquo;attention interm\u00e9diaires.<\/p>\n<h2>4. Trac\u00e9 conjoint et superposition de courbes avec lines()<\/h2>\n<h3>4.1 Construction s\u00e9quentielle de graphiques lin\u00e9aires multiples<\/h3>\n<p>Le trac\u00e9 conjoint de plusieurs s\u00e9ries continues r\u00e9pond \u00e0 une logique similaire \u00e0 celle observ\u00e9e pour les nuages de points, tout en imposant des contraintes strictes relatives \u00e0 la continuit\u00e9 s\u00e9miotique des trac\u00e9s. L&rsquo;\u00e9tape inaugurale repose sur l&rsquo;appel \u00e0 la fonction <code>plot()<\/code> configur\u00e9e avec le param\u00e8tre structural <code>type = \"l\"<\/code> (ou alternativement <code>type = \"n\"<\/code> afin de n&rsquo;instancier que le canevas vierge, les axes et les \u00e9tiquettes sans inscrire de marqueurs imm\u00e9diats).<\/p>\n<p>L&rsquo;ajout it\u00e9ratif de s\u00e9ries longitudinales au moyen d&rsquo;appels r\u00e9p\u00e9t\u00e9s \u00e0 la primitive <code>lines()<\/code> exige une attention accrue quant au tri des valeurs le long de l&rsquo;axe des abscisses. Si un vecteur <span class=\"arabpsy-math-inline\" data-latex=\"X\">$X$<\/span> transmis \u00e0 <code>lines()<\/code> n&rsquo;est pas ordonn\u00e9 de mani\u00e8re strictement croissante, le moteur de trac\u00e9 connectera les points selon leur s\u00e9quence d&rsquo;apparition dans le vecteur, engendrant une trajectoire chaotique et entrelac\u00e9e (analogue \u00e0 un trac\u00e9 d&rsquo;hyst\u00e9r\u00e9sis ou de trajectoire orbitale) l\u00e0 o\u00f9 une courbe fonctionnelle univoque \u00e9tait escompt\u00e9e. L&rsquo;application pr\u00e9alable de l&rsquo;instruction <code>order()<\/code> sur les donn\u00e9es constitue donc une pr\u00e9caution de codage indispensable.<\/p>\n<p>Dans la perspective d&rsquo;une publication scientifique destin\u00e9e \u00e0 une diffusion multisupport incluant l&rsquo;impression monochrome ou en niveaux de gris, l&rsquo;encodage de l&rsquo;information ne doit jamais reposer uniquement sur la chromaticit\u00e9. Il convient d&rsquo;articuler simultan\u00e9ment une modulation de l&rsquo;\u00e9paisseur de ligne (<code>lwd<\/code>) et une assignation diversifi\u00e9e des types de traits (<code>lty<\/code>). Cette redondance s\u00e9miotique contr\u00f4l\u00e9e garantit que deux trajectoires se croisant sur le graphique demeureront parfaitement identifiables et dissociables m\u00eame lorsque le document est reproduit sur un \u00e9quipement d&rsquo;impression d\u00e9pourvu de reproduction trichromique.<\/p>\n<figure class=\"wpt-preserved-image\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/french.arabpsychology.com\/wp-content\/uploads\/2026\/09\/overlay1.png\" alt=\"Overlaying line plots in R with legend\" \/><figcaption>Overlaying line plots in R with legend<\/figcaption><\/figure>\n<h3>4.2 Exemple reproductible de superposition de trajectoires temporelles<\/h3>\n<p>Illustrons cette m\u00e9thodologie \u00e0 travers la mod\u00e9lisation longitudinale de courbes d&rsquo;apprentissage individuel ou organisationnel au cours de sessions temporelles successives. Nous analysons l&rsquo;\u00e9volution des indices d&rsquo;efficacit\u00e9 op\u00e9ratoire pour trois m\u00e9thodologies p\u00e9dagogiques distinctes (Standard, Intensive et Assist\u00e9e par Intelligence Artificielle) mesur\u00e9es sur vingt intervalles temporels discrets.<\/p>\n<p>Voici l&rsquo;impl\u00e9mentation de la proc\u00e9dure sous Base R :<\/p>\n<p><code># S\u00e9quence temporelle commune (axe X)<br \/>\ntemps &lt;- 1:20<\/p>\n<p># Mod\u00e9lisation math\u00e9matique des trois trajectoires asymptotiques<br \/>\nmethode_standard  &lt;- 100 * (1 - exp(-0.08 * temps)) + rnorm(20, 0, 1.5)<br \/>\nmethode_intensive &lt;- 100 * (1 - exp(-0.16 * temps)) + rnorm(20, 0, 1.5)<br \/>\nmethode_ia        &lt;- 100 * (1 - exp(-0.25 * temps)) + rnorm(20, 0, 1.5)<\/p>\n<p># D\u00e9termination unifi\u00e9e des bornes m\u00e9triques sur l'ordonn\u00e9e<br \/>\nlim_y &lt;- range(c(methode_standard, methode_intensive, methode_ia))<\/p>\n<p># Configuration du canevas et \u00e9talonnage initial<br \/>\npar(mar = c(4.5, 4.5, 2.5, 1.5))<br \/>\nplot(temps, methode_standard,<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;type = \"l\", lty = 1, lwd = 2, col = \"#2C3E50\",<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ylim = lim_y, las = 1, bty = \"l\",<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;xlab = \"P\u00e9riode d'Entra\u00eenement (Semaines)\",<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ylab = \"Indice d'Efficacit\u00e9 Op\u00e9ratoire (0-100)\",<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;main = \"Cin\u00e9tique d'Acquisition de Comp\u00e9tences selon le Protocole\")<\/p>\n<p># Superposition de la deuxi\u00e8me s\u00e9rie temporelle (M\u00e9thode Intensive)<br \/>\nlines(temps, methode_intensive, type = \"l\", lty = 2, lwd = 2, col = \"#E74C3C\")<\/p>\n<p># Superposition de la troisi\u00e8me s\u00e9rie temporelle (M\u00e9thode Assist\u00e9e par IA)<br \/>\nlines(temps, methode_ia, type = \"l\", lty = 4, lwd = 2.5, col = \"#2980B9\")<\/p>\n<p># Int\u00e9gration de rep\u00e8res d'identification sans bo\u00eete superflue<br \/>\nlegend(\"bottomright\",<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;legend = c(\"Protocole Standard\", \"Protocole Intensif\", \"Assist\u00e9 par IA\"),<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;lty = c(1, 2, 4), lwd = c(2, 2, 2.5),<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;col = c(\"#2C3E50\", \"#E74C3C\", \"#2980B9\"),<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bty = \"n\", cex = 0.85)<\/code><\/p>\n<p>Le r\u00e9sultat graphique offre un contraste visuel imm\u00e9diat. Le protocole assist\u00e9 par IA se distingue par une pente initiale extr\u00eamement abrupte, atteignant son plateau de saturation asymptotique d\u00e8s la huiti\u00e8me semaine. \u00c0 l&rsquo;oppos\u00e9, le protocole standard manifeste une cin\u00e9tique lente et progressive. Gr\u00e2ce \u00e0 la s\u00e9lection conjointe de codes couleurs contrast\u00e9s en luminance et de motifs de tiret\u00e9s diff\u00e9renci\u00e9s, la lecture analytique des croisements et des phases de stabilisation demeure parfaitement fluide, y compris sous des conditions de reproduction graphique d\u00e9grad\u00e9es.<\/p>\n<h3>4.3 Superposition de mod\u00e8les math\u00e9matiques et r\u00e9gressions liss\u00e9es<\/h3>\n<p>L&rsquo;une des utilisations les plus f\u00e9condes de la superposition de trac\u00e9s lin\u00e9aires r\u00e9side dans la projection directe d&rsquo;un mod\u00e8le statistique inf\u00e9rentiel sur le nuage de points empiriques dont il est issu. Qu&rsquo;il s&rsquo;agisse d&rsquo;une r\u00e9gression lin\u00e9aire param\u00e9trique, d&rsquo;un polyn\u00f4me d&rsquo;ordre sup\u00e9rieur ou d&rsquo;un ajustement non param\u00e9trique local (LOESS), la d\u00e9marche op\u00e9rationnelle repose sur le calcul rigoureux d&rsquo;un vecteur de valeurs pr\u00e9dites sur une grille dense de coordonn\u00e9es d&rsquo;abscisses.<\/p>\n<p>Pour impl\u00e9menter cette proc\u00e9dure avec un lissage non param\u00e9trique de type LOESS (<em>Locally Estimated Scatterplot Smoothing<\/em>), le praticien commence par ajuster le mod\u00e8le via la fonction <code>loess()<\/code>. Ensuite, plut\u00f4t que de relier grossi\u00e8rement les pr\u00e9dictions calcul\u00e9es sur les seules valeurs observ\u00e9es du jeu de donn\u00e9es (ce qui produirait une courbe rugueuse si les observations sont \u00e9parses), il g\u00e9n\u00e8re une grille de points r\u00e9guli\u00e8rement espac\u00e9s \u00e0 l&rsquo;aide de <code>seq()<\/code>, calcule les pr\u00e9dictions correspondantes via <code>predict()<\/code>, et projette le vecteur r\u00e9sultant \u00e0 l&rsquo;aide de la fonction <code>lines()<\/code> :<\/p>\n<p><code># G\u00e9n\u00e9ration de donn\u00e9es bruit\u00e9es non lin\u00e9aires<br \/>\nx_obs &lt;- seq(1, 10, length.out = 80)<br \/>\ny_obs &lt;- sin(x_obs) + rnorm(80, 0, 0.35)<\/p>\n<p># Ajustement du lissage non param\u00e9trique loess<br \/>\nmodele_loess &lt;- loess(y_obs ~ x_obs, span = 0.5)<\/p>\n<p># Cr\u00e9ation d'une grille dense pour un trac\u00e9 d'une fluidit\u00e9 parfaite<br \/>\ngrille_x &lt;- seq(min(x_obs), max(x_obs), length.out = 300)<br \/>\ny_pred &lt;- predict(modele_loess, newdata = data.frame(x_obs = grille_x))<\/p>\n<p># Trac\u00e9 du nuage de points empiriques initial<br \/>\nplot(x_obs, y_obs, pch = 16, col = \"grey50\", las = 1, bty = \"l\",<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;xlab = \"Variable Explicative (X)\", ylab = \"R\u00e9ponse Observ\u00e9e (Y)\",<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;main = \"Mod\u00e9lisation Non Param\u00e9trique LOESS Superpos\u00e9e\")<\/p>\n<p># Superposition de la courbe de tendance liss\u00e9e continue<br \/>\nlines(grille_x, y_pred, col = \"#8E44AD\", lwd = 2.5)<\/code><\/p>\n<p>Cette technique permet d&rsquo;\u00e9viter l&rsquo;\u00e9cueil classique de la courbe hachur\u00e9e ou anguleuse qui se produit invariablement lorsque les coordonn\u00e9es interpol\u00e9es ne sont pas pr\u00e9alablement ordonn\u00e9es ou pr\u00e9sentent une densit\u00e9 spatiale insuffisante. La r\u00e9gression liss\u00e9e vient ainsi guider l&rsquo;interpr\u00e9tation de la structure fonctionnelle sans masquer la r\u00e9alit\u00e9 de la dispersion des r\u00e9sidus.<\/p>\n<h2>5. Gestion et harmonisation des \u00e9chelles d&rsquo;axes (xlim et ylim)<\/h2>\n<h3>5.1 Le pi\u00e8ge de la troncature des donn\u00e9es secondaires<\/h3>\n<p>La source d&rsquo;erreur la plus pr\u00e9valente lors de la composition de graphiques superpos\u00e9s au moyen des fonctions de bas niveau r\u00e9side dans la m\u00e9canique par d\u00e9faut de fixation des bornes cart\u00e9siennes. Lorsqu&rsquo;un chercheur initialise son graphique via <code>plot(x1, y1)<\/code>, le moteur d&rsquo;affichage calcule de fa\u00e7on autonome la valeur minimale et la valeur maximale des seuls vecteurs <code>x1<\/code> et <code>y1<\/code> (en y adjoignant une marge d&rsquo;expansion interne de 4 % r\u00e9gie par le param\u00e8tre <code>xaxs = \"r\"<\/code>). Si une seconde s\u00e9rie <code>x2, y2<\/code> est inject\u00e9e ult\u00e9rieurement via <code>points()<\/code> ou <code>lines()<\/code>, et que les coordonn\u00e9es de cette seconde s\u00e9rie d\u00e9bordent du domaine initial de la premi\u00e8re, les points exc\u00e9dentaires seront tout simplement \u00e9limin\u00e9s du champ de vision sans qu&rsquo;aucun message d&rsquo;erreur ou d&rsquo;avertissement ne soit \u00e9mis par la console R.<\/p>\n<p>Cette troncature silencieuse introduit un biais d&rsquo;analyse majeur : des observations empiriques r\u00e9elles, potentiellement repr\u00e9sentatives de valeurs extr\u00eames fondamentales pour la prise de d\u00e9cision scientifique, disparaissent de la repr\u00e9sentation. Pour pr\u00e9venir ce ph\u00e9nom\u00e8ne d&rsquo;exclusion graphique involontaire, il est imp\u00e9ratif d&rsquo;\u00e9riger en r\u00e8gle syst\u00e9matique l&rsquo;\u00e9valuation globale pr\u00e9alable de la dynamique des donn\u00e9es au moyen de la fonction <a rel=\"noopener noreferrer\" href=\"https:\/\/www.rdocumentation.org\/packages\/base\/versions\/3.6.2\/topics\/range\">range()<\/a>.<\/p>\n<h3>5.2 Algorithme d&rsquo;unification des \u00e9tendues de mesure<\/h3>\n<p>L&rsquo;algorithme standard d&rsquo;unification dimensionnelle repose sur l&rsquo;extraction dynamique des extrema vectoriels \u00e0 travers la totalit\u00e9 des flux \u00e0 agr\u00e9ger. La syntaxe canonique implique la concat\u00e9nation syst\u00e9matique des vecteurs d&rsquo;abscisses au sein d&rsquo;un appel \u00e0 <code>range(c(x1, x2, ..., xn), na.rm = TRUE)<\/code>, et l&rsquo;application d&rsquo;une d\u00e9marche strictement identique pour l&rsquo;ensemble des vecteurs d&rsquo;ordonn\u00e9es <code>range(c(y1, y2, ..., yn), na.rm = TRUE)<\/code>.<\/p>\n<p>Les deux vecteurs d&rsquo;extrema r\u00e9sultants, compos\u00e9s chacun de deux valeurs scalaires <code>[min, max]<\/code>, sont alors explicitement assign\u00e9s aux arguments <code>xlim<\/code> et <code>ylim<\/code> de l&rsquo;instruction <code>plot()<\/code> initiale. Cette pr\u00e9caution garantit que l&rsquo;int\u00e9gralit\u00e9 du volume des donn\u00e9es futures disposera d&rsquo;un espace g\u00e9om\u00e9trique allou\u00e9 d\u00e8s le tra\u00e7age du cadre primaire. Dans certaines configurations \u00e9ditoriales exigeant la pr\u00e9servation d&rsquo;une marge de respiration esth\u00e9tique sup\u00e9rieure, il est ais\u00e9 d&rsquo;\u00e9tendre artificiellement ces bornes d&rsquo;un pourcentage param\u00e9trable (par exemple en multipliant l&rsquo;\u00e9tendue par un facteur d&rsquo;amortissement de 10 % de part et d&rsquo;autre des extrema absolus).<\/p>\n<h3>5.3 Cas particulier de dimensions asym\u00e9triques et redimensionnement<\/h3>\n<p>Un d\u00e9fi analytique plus complexe survient lorsque les s\u00e9ries \u00e0 superposer partagent le m\u00eame espace s\u00e9mantique sur l&rsquo;axe des abscisses (par exemple une progression chronologique), mais pr\u00e9sentent des amplitudes de variance radicalement asym\u00e9triques ou des ordres de grandeur distants de plusieurs facteurs d&rsquo;\u00e9chelle sur l&rsquo;axe des ordonn\u00e9es. Tenter de forcer leur repr\u00e9sentation sur une \u00e9chelle <span class=\"arabpsy-math-inline\" data-latex=\"Y\">$Y$<\/span> unifi\u00e9e sans transformation pr\u00e9alable aboutit in\u00e9luctablement \u00e0 l&rsquo;\u00e9crasement visuel de la s\u00e9rie \u00e0 faible variabilit\u00e9, qui se r\u00e9duira \u00e0 un profil horizontal plat et ind\u00e9chiffrable le long du plancher du graphique.<\/p>\n<p>Deux options \u00e9pist\u00e9mologiques se pr\u00e9sentent alors au chercheur. La premi\u00e8re, souvent la plus rigoureuse sur le plan m\u00e9thodologique, consiste \u00e0 op\u00e9rer une standardisation math\u00e9matique pr\u00e9alable (telle que la conversion en scores <span class=\"arabpsy-math-inline\" data-latex=\"Z\">$Z$<\/span> ou le centrage-r\u00e9duction des donn\u00e9es, via la fonction <code>scale()<\/code>). Les s\u00e9ries superpos\u00e9es n&rsquo;expriment plus alors des unit\u00e9s physiques brutes, mais des d\u00e9viations standardis\u00e9es par rapport \u00e0 leurs moyennes respectives, pr\u00e9servant ainsi la comparabilit\u00e9 des profils de dynamique et des synchronies temporelles. La seconde option, le recours \u00e0 un axe secondaire d&rsquo;\u00e9chelle dissemblable, implique des manipulations techniques avanc\u00e9es qui feront l&rsquo;objet d&rsquo;un examen approfondi dans la section d\u00e9di\u00e9e \u00e0 l&rsquo;instruction <code>par(new = TRUE)<\/code>.<\/p>\n<h2>6. Int\u00e9gration d&rsquo;\u00e9l\u00e9ments informatifs : L\u00e9gendes et annotations<\/h2>\n<h3>6.1 Param\u00e9trage exhaustif de la fonction legend()<\/h3>\n<p>Un graphique multivari\u00e9 complexe superposant divers flux d&rsquo;informations demeure incomplet, voire m\u00e9thodologiquement inexploitable, en l&rsquo;absence d&rsquo;une cl\u00e9 de d\u00e9codage s\u00e9miotique non ambigu\u00eb. La fonction de bas niveau <code>legend()<\/code> permet de greffer sur la figure active une l\u00e9gende d&rsquo;identification dont la coh\u00e9rence typologique avec les param\u00e8tres de dessin sous-jacents doit \u00eatre absolue.<\/p>\n<p>Le positionnement de l&rsquo;\u00e9l\u00e9ment peut \u00eatre d\u00e9fini par des mots-cl\u00e9s spatiaux (tels que <code>\"topleft\"<\/code>, <code>\"topright\"<\/code>, <code>\"bottomleft\"<\/code>, <code>\"bottomright\"<\/code>, <code>\"center\"<\/code>) qui proc\u00e8dent \u00e0 un ancrage automatique tenant compte des marges internes du rep\u00e8re. Alternativement, pour un contr\u00f4le microm\u00e9trique du placement dans des zones graphiques dens\u00e9ment occup\u00e9es, le chercheur peut sp\u00e9cifier directement les coordonn\u00e9es cart\u00e9siennes <span class=\"arabpsy-math-inline\" data-latex=\"(x, y)\">$(x, y)$<\/span> pr\u00e9cises du coin sup\u00e9rieur gauche de la bo\u00eete de l\u00e9gende. Une correspondance rigoureuse doit \u00eatre maintenue : les vecteurs pass\u00e9s aux arguments <code>pch<\/code>, <code>lty<\/code>, <code>lwd<\/code>, <code>col<\/code> et <code>pt.bg<\/code> de la fonction <code>legend()<\/code> doivent reproduire \u00e0 l&rsquo;identique l&rsquo;ordre et les sp\u00e9cificit\u00e9s des param\u00e8tres allou\u00e9s lors des appels successifs \u00e0 <code>plot()<\/code>, <code>points()<\/code> et <code>lines()<\/code>.<\/p>\n<p>Le contr\u00f4le de l&rsquo;esth\u00e9tique contextuelle est assur\u00e9 par l&rsquo;argument <code>bty<\/code> (fix\u00e9 \u00e0 <code>\"n\"<\/code> pour supprimer tout encadrement rectangulaire parasite et all\u00e9ger le ratio d&rsquo;encre), ainsi que par le param\u00e8tre d&rsquo;opacit\u00e9 du fond <code>bg<\/code>. L&rsquo;assignation d&rsquo;une couleur d&rsquo;arri\u00e8re-plan semi-transparente \u00e0 la bo\u00eete de l\u00e9gende (par exemple <code>bg = rgb(1, 1, 1, 0.8)<\/code>) constitue un compromis \u00e9l\u00e9gant permettant \u00e0 la l\u00e9gende de masquer mod\u00e9r\u00e9ment les \u00e9l\u00e9ments situ\u00e9s sous elle pour en assurer la lisibilit\u00e9 textuelle, tout en \u00e9vitant d&rsquo;oblit\u00e9rer totalement la perception des trajectoires g\u00e9om\u00e9triques qui traversent son p\u00e9rim\u00e8tre.<\/p>\n<h3>6.2 Annotations localis\u00e9es avec text() et mtext()<\/h3>\n<p>Si la l\u00e9gende assume une fonction de classification globale, l&rsquo;annotation ponctuelle assure quant \u00e0 elle une explicitation contextualis\u00e9e des points singuliers, des seuils de rupture ou des valeurs aberrantes au sein m\u00eame du corps de la visualisation. La fonction <code>text()<\/code> op\u00e8re au sein du syst\u00e8me cart\u00e9sien int\u00e9rieur du trac\u00e9, acceptant les coordonn\u00e9es exactes des points \u00e0 documenter pour y projeter des cha\u00eenes de caract\u00e8res informatives.<\/p>\n<p>L&rsquo;argument directionnel <code>pos<\/code> de la fonction <code>text()<\/code> (prenant les valeurs 1, 2, 3 ou 4 pour d\u00e9signer respectivement le positionnement en dessous, \u00e0 gauche, au-dessus ou \u00e0 droite de la coordonn\u00e9e cible) coupl\u00e9 au param\u00e8tre de d\u00e9calage <code>offset<\/code> permet de pr\u00e9venir le chevauchement typographique direct entre le libell\u00e9 textuel et le symbole g\u00e9om\u00e9trique du point annot\u00e9. Pour le signalement des singularit\u00e9s dans de vastes ensembles de donn\u00e9es, il est d&rsquo;usage d&rsquo;exploiter la programmation vectorielle pour n&rsquo;annoter que les observations exc\u00e9dant un certain seuil empirique (par exemple : <code>text(x[outliers], y[outliers], labels = identifiants[outliers], pos = 3)<\/code>).<\/p>\n<p>\u00c0 l&rsquo;oppos\u00e9 de <code>text()<\/code>, la fonction <code>mtext()<\/code> (<em>margin text<\/em>) projette des inscriptions au-del\u00e0 des limites du cadre cart\u00e9sien, directement dans les marges p\u00e9riph\u00e9riques. L&rsquo;argument <code>side<\/code> (valeurs enti\u00e8res de 1 \u00e0 4, progressant dans le sens horaire depuis le bas, la gauche, le haut jusqu&rsquo;\u00e0 la droite) combin\u00e9 \u00e0 <code>line<\/code> (d\u00e9terminant la distance par rapport au cadre) permet d&rsquo;ins\u00e9rer des mentions m\u00e9thodologiques additionnelles, des indications de sources de donn\u00e9es, ou d&rsquo;adosser des unit\u00e9s de mesure compl\u00e9mentaires aux graduations ext\u00e9rieures des axes.<\/p>\n<h3>6.3 Tra\u00e7age de seuils de r\u00e9f\u00e9rence avec abline()<\/h3>\n<p>La contextualisation d&rsquo;un graphique multivari\u00e9 requiert fr\u00e9quemment la mat\u00e9rialisation de rep\u00e8res de r\u00e9f\u00e9rence th\u00e9oriques ou empiriques universels : niveaux de signification statistique (valeurs <span class=\"arabpsy-math-inline\" data-latex=\"p\">$p$<\/span> critiques), moyennes globales d&rsquo;\u00e9chantillons, lignes d&rsquo;\u00e9quivalence parfaite ou asymptotes fonctionnelles. La fonction <code>abline()<\/code> offre une interface directe pour impl\u00e9menter ces superpositions g\u00e9om\u00e9triques sans avoir \u00e0 manipuler des coordonn\u00e9es matricielles complexes.<\/p>\n<p>Les arguments <code>h<\/code> (horizontal) et <code>v<\/code> (vertical) acceptent des vecteurs scalaires pour tracer des droites infinies s\u00e9quant le rep\u00e8re orthogonal \u00e0 l&rsquo;altitude ou \u00e0 l&rsquo;abscisse sp\u00e9cifi\u00e9e. Ainsi, <code>abline(h = mean(y), lty = 3, col = \"darkgrey\")<\/code> ancre instantan\u00e9ment le niveau central de la population au sein d&rsquo;un nuage dispers\u00e9. Pour le tra\u00e7age de diagonales de corr\u00e9lation parfaite ou de lignes d&rsquo;identit\u00e9 (o\u00f9 <span class=\"arabpsy-math-inline\" data-latex=\"Y = X\">$Y = X$<\/span>), la commande <code>abline(a = 0, b = 1)<\/code> configure directement l&rsquo;ordonn\u00e9e \u00e0 l&rsquo;origine (<span class=\"arabpsy-math-inline\" data-latex=\"a\">$a$<\/span>) et la pente unitaire (<span class=\"arabpsy-math-inline\" data-latex=\"b\">$b$<\/span>). Ces lignes d&rsquo;\u00e9quivalence sont particuli\u00e8rement pris\u00e9es dans les \u00e9tudes de reproductibilit\u00e9 instrumentale (m\u00e9thode de Bland-Altman) ou lors de la comparaison conjointe de scores pr\u00e9-test et post-test, permettant de scinder imm\u00e9diatement l&rsquo;espace graphique entre les sujets en progression et ceux en r\u00e9gression.<\/p>\n<h2>7. Combinaison h\u00e9t\u00e9rog\u00e8ne de structures visuelles<\/h2>\n<h3>7.1 Superposition simultan\u00e9e de points et de segments continus<\/h3>\n<p>Dans de nombreuses configurations analytiques, la compr\u00e9hension exhaustive d&rsquo;un ph\u00e9nom\u00e8ne scientifique requiert d&rsquo;associer des modes de repr\u00e9sentation formellement distincts au sein d&rsquo;une composition visuelle unifi\u00e9e : confronter un nuage de mesures ponctuelles brutes \u00e0 une droite de r\u00e9gression param\u00e9trique, ou relier des centres de gravit\u00e9 cat\u00e9goriels par des segments de trajectoire moyenne tout en conservant visible la n\u00e9buleuse des observations individuelles.<\/p>\n<p>Si la fonction g\u00e9n\u00e9rique <code>plot()<\/code> propose le mode combinatoire direct <code>type = \"b\"<\/code> (qui trace \u00e0 la fois les points et les segments les reliant), cette option g\u00e9n\u00e8re un rendu visuel souvent insatisfaisant en raison de l&rsquo;interruption m\u00e9canique des segments autour de chaque marqueur et de l&rsquo;incapacit\u00e9 d&rsquo;appliquer des styles chromatiques disjoints aux points et aux lignes. La construction manuelle d\u00e9coupl\u00e9e s&rsquo;impose comme le standard professionnel : on initialise d&rsquo;abord le nuage de points au moyen de <code>plot(..., type = \"p\")<\/code> avec une transparence contr\u00f4l\u00e9e, puis on vient adosser par-dessus la trajectoire synth\u00e9tique mod\u00e9lis\u00e9e via <code>lines()<\/code> avec une \u00e9paisseur renforc\u00e9e (<code>lwd = 2.5<\/code>).<\/p>\n<p>Le s\u00e9quen\u00e7age chronologique est ici d\u00e9terminant. Placer la droite de tendance avant les points empiriques peut conduire \u00e0 l&rsquo;occultation visuelle de celle-ci si la densit\u00e9 de l&rsquo;\u00e9chantillon est massive. \u00c0 l&rsquo;inverse, d\u00e9poser une ligne opaque au-dessus d&rsquo;un semis de marqueurs semi-transparents assure que la mod\u00e9lisation math\u00e9matique macroscopique demeure parfaitement pr\u00e9\u00e9minente sans pour autant masquer l&rsquo;h\u00e9t\u00e9rog\u00e9n\u00e9it\u00e9 des variations individuelles sous-jacentes.<\/p>\n<h3>7.2 Int\u00e9gration d&rsquo;intervalles de confiance avec polygon()<\/h3>\n<p>La communication contemporaine des r\u00e9sultats scientifiques bannit de plus en plus les estimations ponctuelles isol\u00e9es au profit de la restitution explicite de l&rsquo;incertitude statistique. L&rsquo;adjonction d&rsquo;une enveloppe ou d&rsquo;un ruban d&rsquo;intervalle de confiance (g\u00e9n\u00e9ralement calcul\u00e9 \u00e0 95 %) autour d&rsquo;une courbe de r\u00e9gression ou d&rsquo;une cin\u00e9tique temporelle s&rsquo;op\u00e8re dans Base R par le biais de la fonction <a rel=\"noopener noreferrer\" href=\"https:\/\/www.rdocumentation.org\/packages\/graphics\/versions\/3.6.2\/topics\/polygon\">polygon()<\/a>.<\/p>\n<p>La mod\u00e9lisation g\u00e9om\u00e9trique d&rsquo;un polygone continu requiert la fermeture stricte du contour spatial vectoriel. Sur le plan algorithmique, cela n\u00e9cessite de construire un vecteur d&rsquo;abscisses combinant la s\u00e9quence ordonn\u00e9e d&rsquo;origine suivie de la m\u00eame s\u00e9quence invers\u00e9e : <code>c(x, rev(x))<\/code>. Le vecteur d&rsquo;ordonn\u00e9es correspondant doit juxtaposer la borne sup\u00e9rieure de l&rsquo;intervalle d&rsquo;estimation avec la borne inf\u00e9rieure parcourue dans le sens r\u00e9trograde : <code>c(borne_superieure, rev(borne_inferieure))<\/code>. L&rsquo;injection de ces vecteurs coupl\u00e9s dans <code>polygon()<\/code> engendre une forme ferm\u00e9e englobante.<\/p>\n<p>Le param\u00e8tre d\u00e9terminant pour assurer le succ\u00e8s de cette superposition r\u00e9side dans l&rsquo;\u00e9limination de la bordure du polygone (<code>border = NA<\/code>) et l&rsquo;application d&rsquo;un ombrage chromatique pr\u00e9sentant un degr\u00e9 \u00e9lev\u00e9 de translucidit\u00e9 via l&rsquo;argument <code>col<\/code> (par exemple <code>col = rgb(0.2, 0.4, 0.8, 0.25)<\/code>). Cette configuration permet d&rsquo;obtenir un halo d&rsquo;incertitude fluide au travers duquel les points de donn\u00e9es empiriques initiaux et les graduations du quadrillage de fond demeurent parfaitement visibles sans cr\u00e9er de surcharge graphique.<\/p>\n<h3>7.3 Trac\u00e9 de barres d&rsquo;erreur empiriques sur nuages superpos\u00e9s<\/h3>\n<p>Lorsque les donn\u00e9es agr\u00e9g\u00e9es expriment des moyennes factorielles associ\u00e9es \u00e0 des dispersions de variance standardis\u00e9e (\u00e9cart-type, erreur standard ou intervalle de confiance d\u00e9limit\u00e9), l&rsquo;int\u00e9gration de barres d&rsquo;erreur ponctuelles constitue le mode de restitution conventionnel dans de nombreuses disciplines exp\u00e9rimentales telles que la biom\u00e9decine, les neurosciences ou la psychologie cognitive.<\/p>\n<p>En l&rsquo;absence de fonction d\u00e9di\u00e9e nomm\u00e9e <code>errorbars()<\/code> dans l&rsquo;infrastructure centrale de Base R, la r\u00e9alisation technique de ces indicateurs s&rsquo;effectue avec une pr\u00e9cision chirurgicale en d\u00e9tournant la fonction vectorielle <code>arrows()<\/code>. En configurant l&rsquo;angle de la pointe de fl\u00e8che \u00e0 90 degr\u00e9s (<code>angle = 90<\/code>), la longueur du crochet terminal \u00e0 une dimension proportionn\u00e9e (par exemple <code>length = 0.05<\/code> pouce) et en activant la bidirectionnalit\u00e9 via l&rsquo;argument <code>code = 3<\/code>, <code>arrows()<\/code> trace une barre d&rsquo;erreur classique rigoureusement \u00e9talonn\u00e9e :<\/p>\n<p><code># Donn\u00e9es factorielles synth\u00e9tiques : moyennes et erreurs standards<br \/>\ngroupes_x &lt;- 1:4<br \/>\nmoyennes &lt;- c(24.5, 32.1, 28.4, 41.2)<br \/>\nerreurs_std &lt;- c(1.8, 2.3, 1.5, 2.7)<\/p>\n<p># Initialisation du trac\u00e9 avec bornes adapt\u00e9es int\u00e9grant les marges d'erreur<br \/>\nplot(groupes_x, moyennes, pch = 19, col = \"#2C3E50\", cex = 1.3,<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;xlim = c(0.5, 4.5),<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ylim = c(min(moyennes - erreurs_std) - 2, max(moyennes + erreurs_std) + 2),<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;xaxt = \"n\", bty = \"l\", las = 1,<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;xlab = \"Condition Exp\u00e9rimentale\", ylab = \"Moyenne du Score de R\u00e9ponse\",<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;main = \"Profils Factoriels avec Barres d'Erreur Standard\")<\/p>\n<p># Substitution de l'axe discret par des libell\u00e9s nominatifs clairs<br \/>\naxis(1, at = 1:4, labels = c(\"Ctrl\", \"Trait A\", \"Trait B\", \"Combin\u00e9\"))<\/p>\n<p># Superposition rigoureuse des barres d'erreur via arrows()<br \/>\narrows(groupes_x, moyennes - erreurs_std, groupes_x, moyennes + erreurs_std,<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;length = 0.06, angle = 90, code = 3, col = \"#2C3E50\", lwd = 1.5)<\/code><\/p>\n<p>Cette approche permet d&rsquo;associer sur une m\u00eame figure des marqueurs discrets hautement pr\u00e9cis, des barres de dispersion conformes aux standards de l&rsquo;American Psychological Association (APA) et, le cas \u00e9ch\u00e9ant, des lignes de liaison discontinues afin d&rsquo;illustrer la dynamique des interactions factorielles globales.<\/p>\n<h2>8. Superposition de distributions : Histogrammes et densit\u00e9s<\/h2>\n<h3>8.1 Confrontation directe d&rsquo;histogrammes multiples<\/h3>\n<p>L&rsquo;\u00e9valuation comparative de deux distributions continues constitue une d\u00e9marche exploratoire classique. Toutefois, la juxtaposition superpos\u00e9e d&rsquo;histogrammes au moyen de la fonction standard <code>hist()<\/code> se heurte \u00e0 des pi\u00e8ges algorithmiques sp\u00e9cifiques. Par nature, <code>hist()<\/code> est une fonction de haut niveau qui tend \u00e0 r\u00e9initialiser le p\u00e9riph\u00e9rique de sortie. Pour superposer un second histogramme sur le premier, il est imp\u00e9ratif d&rsquo;activer le param\u00e8tre bool\u00e9en <code>add = TRUE<\/code> lors du second appel.<\/p>\n<p>Une contrainte m\u00e9thodologique majeure doit alors \u00eatre imp\u00e9rativement satisfaite : les distributions compar\u00e9es ne poss\u00e8dent g\u00e9n\u00e9ralement pas des effectifs totaux d&rsquo;\u00e9chantillonnage identiques. Conserver l&rsquo;axe standard des fr\u00e9quences absolues (les effectifs bruts) produit un artefact trompeur o\u00f9 l&rsquo;\u00e9chantillon le plus vaste semble dominer quantitativement l&rsquo;autre en tout point du domaine. L&rsquo;utilisateur doit imp\u00e9rativement basculer l&rsquo;affichage sur une \u00e9chelle de densit\u00e9 de probabilit\u00e9 en d\u00e9clarant l&rsquo;argument <code>freq = FALSE<\/code> (ou de mani\u00e8re \u00e9quivalente <code>prob = TRUE<\/code>) au sein des deux instructions <code>hist()<\/code> successives.<\/p>\n<p>Par ailleurs, pour que la superposition soit physiquement lisible et que le second histogramme ne masque pas int\u00e9gralement les colonnes du premier, le choix des param\u00e8tres de remplissage s&rsquo;av\u00e8re strat\u00e9gique : soit en recourant \u00e0 des hachures crois\u00e9es via le param\u00e8tre <code>density<\/code> combin\u00e9 \u00e0 l&rsquo;orientation <code>angle<\/code>, soit en exploitant des tonalit\u00e9s chromatiques semi-transparentes par le biais de la fonction <code>rgb()<\/code>. Enfin, le calibrage manuel pr\u00e9alable de la bo\u00eete d&rsquo;affichage (via <code>xlim<\/code> pour couvrir les domaines conjoints des donn\u00e9es et <code>ylim<\/code> pour accueillir la hauteur maximale des densit\u00e9s des deux groupes) conditionne la r\u00e9ussite de la figure.<\/p>\n<h3>8.2 Superposition de courbes de densit\u00e9 continue (density())<\/h3>\n<p>Face aux rigidit\u00e9s formelles de l&rsquo;histogramme \u2014 dont la silhouette demeure fortement tributaire du choix arbitraire de l&rsquo;ancrage et de la largeur des intervalles de classe (<em>bins<\/em>) \u2014, l&rsquo;estimation de la densit\u00e9 par la m\u00e9thode du noyau (<em>Kernel Density Estimation<\/em> ou KDE) offre une repr\u00e9sentation continue et \u00e9l\u00e9gante de la distribution probabiliste sous-jacente.<\/p>\n<p>Le calcul de densit\u00e9 s&rsquo;effectue dans un premier temps au moyen de la fonction <code>density()<\/code>, qui d\u00e9termine la fonction de r\u00e9partition liss\u00e9e sous l&rsquo;hypoth\u00e8se d&rsquo;une fen\u00eatre de lissage optimale (souvent selon l&rsquo;algorithme de Silverman). L&rsquo;assemblage superpos\u00e9 de plusieurs densit\u00e9s s&rsquo;articule ensuite naturellement : on applique l&rsquo;instruction <code>plot()<\/code> sur le premier objet de densit\u00e9 calcul\u00e9, en prenant soin d&rsquo;\u00e9tendre artificiellement <code>ylim<\/code> pour englober le pic maximal de l&rsquo;ensemble des s\u00e9ries \u00e0 projeter. Les flux distributionnels subs\u00e9quents sont alors inject\u00e9s \u00e0 l&rsquo;aide de l&rsquo;instruction <code>lines()<\/code> appliqu\u00e9e sur les objets de densit\u00e9 secondaires.<\/p>\n<p>Pour d\u00e9multiplier l&rsquo;impact visuel et faciliter la diff\u00e9renciation spatiale des populations sans sacrifier la lisibilit\u00e9, l&rsquo;int\u00e9gration de la fonction <code>polygon()<\/code> permet de remplir l&rsquo;aire d\u00e9limit\u00e9e sous chaque profil de densit\u00e9. En assignant des couleurs semi-transparentes distinctes aux diverses aires de r\u00e9partition, les zones d&rsquo;intersection distributionnelle apparaissent sous la forme de nuances chromatiques compos\u00e9es, r\u00e9v\u00e9lant avec une clart\u00e9 remarquable les degr\u00e9s de chevauchement ou d&rsquo;asym\u00e9trie relative des populations \u00e0 l&rsquo;\u00e9tude.<\/p>\n<h3>8.3 Comparaison entre distribution empirique et loi th\u00e9orique<\/h3>\n<p>Une application fondamentale de la superposition distributionnelle consiste \u00e0 confronter graphiquement un jeu de donn\u00e9es empiriques \u00e0 une distribution th\u00e9orique param\u00e9trique id\u00e9ale (telle que la loi normale de Gauss, la loi de Student ou la loi log-normale). Cette d\u00e9marche d&rsquo;ad\u00e9quation visuelle offre un compl\u00e9ment intuitif indispensable aux tests de normalit\u00e9 formels (tels que le test de Shapiro-Wilk ou de Kolmogorov-Smirnov), dont la sensibilit\u00e9 est notoirement hypersensible aux grands \u00e9chantillons.<\/p>\n<p>Le protocole technique combine l&rsquo;affichage d&rsquo;un histogramme de densit\u00e9 normalis\u00e9 (<code>freq = FALSE<\/code>) avec la projection continue de la densit\u00e9 th\u00e9orique calcul\u00e9e sur le domaine d&rsquo;observation au moyen de la fonction math\u00e9matique correspondante, telle que <code>dnorm()<\/code> :<\/p>\n<p><code># \u00c9chantillonnage empirique l\u00e9g\u00e8rement asym\u00e9trique (N = 250)<br \/>\ndonnees_empiriques &lt;- rsnorm(250, mean = 100, sd = 15, xi = 1.3) # via fGarch ou simulation similaire<br \/>\nif(!exists(\"donnees_empiriques\")) donnees_empiriques &lt;- c(rnorm(200, 100, 12), rnorm(50, 120, 15))<\/p>\n<p># Estimation des param\u00e8tres gaussiens empiriques<br \/>\nmoyenne_obs &lt;- mean(donnees_empiriques)<br \/>\necart_type_obs &lt;- sd(donnees_empiriques)<\/p>\n<p># Trac\u00e9 initial de l'histogramme mis \u00e0 l'\u00e9chelle de densit\u00e9 probabiliste<br \/>\nhist(donnees_empiriques, freq = FALSE, breaks = 20,<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;col = \"#ECF0F1\", border = \"#BDC3C7\", las = 1,<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;xlab = \"Valeur de la Variable d'Int\u00e9r\u00eat\", ylab = \"Densit\u00e9 Relative\",<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;main = \"Ad\u00e9quation Distributionnelle : Donn\u00e9es Observ\u00e9es vs Normale Th\u00e9orique\")<\/p>\n<p># Superposition de la densit\u00e9 empirique observ\u00e9e (KDE)<br \/>\nlines(density(donnees_empiriques), col = \"#2980B9\", lwd = 2.5)<\/p>\n<p># Grille fine pour projection de la courbe normale th\u00e9orique exacte<br \/>\nabscisses_theorie &lt;- seq(min(donnees_empiriques), max(donnees_empiriques), length.out = 500)<br \/>\ndensite_gaussienne &lt;- dnorm(abscisses_theorie, mean = moyenne_obs, sd = ecart_type_obs)<\/p>\n<p># Superposition de la courbe gaussienne th\u00e9orique en trait discontinu contrast\u00e9<br \/>\nlines(abscisses_theorie, densite_gaussienne, col = \"#C0392B\", lwd = 2, lty = 2)<\/p>\n<p># L\u00e9gende explicative d\u00e9taill\u00e9e<br \/>\nlegend(\"topright\",<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;legend = c(\"Histogramme des Donn\u00e9es\", \"Densit\u00e9 Empirique Estim\u00e9e\", \"Mod\u00e8le Normal Th\u00e9orique\"),<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fill = c(\"#ECF0F1\", NA, NA), border = c(\"#BDC3C7\", NA, NA),<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;lty = c(NA, 1, 2), lwd = c(NA, 2.5, 2),<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;col = c(NA, \"#2980B9\", \"#C0392B\"), bty = \"n\", cex = 0.85)<\/code><\/p>\n<p>Cette confrontation tripartite (histogramme de base, profil empirique liss\u00e9 par noyau et courbe normale de r\u00e9f\u00e9rence) met instantan\u00e9ment en exergue les d\u00e9viations structurelles : asym\u00e9trie positive marqu\u00e9e (<em>skewness<\/em>), exc\u00e8s d&rsquo;aplatissement ou \u00e9paississement des queues de distribution (<em>kurtosis<\/em>), fournissant une assise visuelle solide avant l&rsquo;engagement de proc\u00e9dures d&rsquo;inf\u00e9rence lin\u00e9aire g\u00e9n\u00e9ralis\u00e9e.<\/p>\n<h2>9. Superposition \u00e0 double \u00e9chelle avec la commande par(new = TRUE)<\/h2>\n<h3>9.1 Principe de fonctionnement et m\u00e9canique interne de par(new = TRUE)<\/h3>\n<p>Dans l&rsquo;architecture interne du moteur graphique de Base R, le param\u00e8tre graphique d&rsquo;\u00e9tat <code>new<\/code> de la fonction <code>par()<\/code> contr\u00f4le le comportement du p\u00e9riph\u00e9rique d&rsquo;affichage lors de la r\u00e9ception d&rsquo;un nouvel ordre de haut niveau. Dans son \u00e9tat par d\u00e9faut (<code>par(new = FALSE)<\/code>), l&rsquo;\u00e9mission d&rsquo;une fonction telle que <code>plot()<\/code> d\u00e9clenche l&rsquo;effacement imm\u00e9diat du tampon d&rsquo;affichage existant afin de pr\u00e9parer un nouveau canevas vierge. En for\u00e7ant manuellement l&rsquo;affectation <code>par(new = TRUE)<\/code>, l&rsquo;utilisateur trompe intentionnellement le moteur graphique : celui-ci agit comme si la fen\u00eatre \u00e9tait vierge, sans proc\u00e9der \u00e0 la purge des \u00e9l\u00e9ments pixels ou vectoriels pr\u00e9alablement dessin\u00e9s.<\/p>\n<p>Cette fonctionnalit\u00e9 offre la possibilit\u00e9 technique de superposer deux trac\u00e9s de haut niveau dot\u00e9s de syst\u00e8mes de coordonn\u00e9es totalement h\u00e9t\u00e9rog\u00e8nes sur la m\u00eame zone physique d&rsquo;affichage. Toutefois, cette puissance technique s&rsquo;accompagne de risques consid\u00e9rables d&rsquo;artefacts analytiques. Du point de vue \u00e9pist\u00e9mologique et selon les canons de la s\u00e9miologie graphique contemporaine, l&rsquo;usage des graphiques \u00e0 double axe d&rsquo;ordonn\u00e9es (<em>dual-axis charts<\/em>) est sujet \u00e0 de vives controverses acad\u00e9miques.<\/p>\n<p>En manipulant ind\u00e9pendamment les bornes minimales et maximales des deux ordonn\u00e9es disjointes, l&rsquo;exp\u00e9rimentateur a la capacit\u00e9 artificielle de rapprocher ou d&rsquo;\u00e9loigner arbitrairement deux courbes, de cr\u00e9er de faux points d&rsquo;intersection ou de sugg\u00e9rer visuellement une corr\u00e9lation fallacieuse entre deux variables dont les variations absolues sont en r\u00e9alit\u00e9 disproportionn\u00e9es. Les r\u00e8gles d&rsquo;int\u00e9grit\u00e9 scientifique exigent donc que le recours \u00e0 <code>par(new = TRUE)<\/code> soit strictement r\u00e9serv\u00e9 \u00e0 la comparaison de s\u00e9ries temporelles synchrones exprimant des entit\u00e9s conceptuelles corr\u00e9l\u00e9es dont les unit\u00e9s physiques ne peuvent \u00eatre ramen\u00e9es \u00e0 une dimension unifi\u00e9e sans nuire \u00e0 la compr\u00e9hension imm\u00e9diate du ph\u00e9nom\u00e8ne.<\/p>\n<h3>9.2 Protocole technique pour g\u00e9n\u00e9rer un axe secondaire \u00e0 droite<\/h3>\n<p>L&rsquo;impl\u00e9mentation op\u00e9rationnelle et robuste d&rsquo;un graphique \u00e0 double axe ordonn\u00e9 requiert un protocole algorithmique rigoureux destin\u00e9 \u00e0 neutraliser les chevauchements parasites d&rsquo;axes et de bo\u00eetes d&rsquo;encadrement. Le canevas doit en premier lieu allouer une marge p\u00e9riph\u00e9rique droite suffisamment g\u00e9n\u00e9reuse pour accueillir les graduations et le titre du futur axe secondaire, configuration sp\u00e9cifi\u00e9e via le quatri\u00e8me \u00e9l\u00e9ment du param\u00e8tre global de marge : <code>par(mar = c(5, 4, 4, 5))<\/code>.<\/p>\n<p>La chronologie de codage se d\u00e9roule selon les \u00e9tapes strictes suivantes :<\/p>\n<ul>\n<li>Ex\u00e9cution du trac\u00e9 primaire de haut niveau associ\u00e9 \u00e0 la premi\u00e8re variable, avec dessin des axes standard (gauche et bas) et de ses \u00e9tiquettes descriptives.<\/li>\n<li>Activation du verrou de persistance du canevas par l&rsquo;appel formel \u00e0 <code>par(new = TRUE)<\/code>.<\/li>\n<li>Ex\u00e9cution du second trac\u00e9 de haut niveau associ\u00e9 \u00e0 la seconde variable, en prenant soin de d\u00e9sactiver l&rsquo;affichage de l&rsquo;ensemble des axes et de la bo\u00eete englobante au moyen de l&rsquo;argument <code>axes = FALSE<\/code>, et d&rsquo;annuler les titres automatiques en fixant <code>xlab = \"\"<\/code> et <code>ylab = \"\"<\/code>.<\/li>\n<li>Mat\u00e9rialisation manuelle et cibl\u00e9e de l&rsquo;axe secondaire \u00e0 droite de la r\u00e9gion de trac\u00e9 via la fonction de bas niveau <code>axis(side = 4, ...)<\/code>.<\/li>\n<li>Adjonction de l&rsquo;\u00e9tiquette descriptive de l&rsquo;ordonn\u00e9e secondaire dans la marge droite par l&rsquo;entremise de <code>mtext(..., side = 4, line = 3)<\/code>.<\/li>\n<li>Harmonisation chromatique univoque : pour pr\u00e9venir toute confusion cognitive chez le lecteur, l&rsquo;axe secondaire, ses graduations textuelles et son intitul\u00e9 marginal doivent adopter scrupuleusement la couleur sp\u00e9cifique de la courbe ou des marqueurs de donn\u00e9es auxquels ils font r\u00e9f\u00e9rence.<\/li>\n<\/ul>\n<h3>9.3 D\u00e9monstration compl\u00e8te sur des donn\u00e9es psychophysiologiques<\/h3>\n<p>Illustrons la mise en \u0153uvre de ce protocole technique complexe \u00e0 travers l&rsquo;\u00e9tude de la dynamique temporelle simultan\u00e9e de deux biomarqueurs lors d&rsquo;une \u00e9preuve d&rsquo;effort cognitif aigu : le temps de r\u00e9action moteur (exprim\u00e9 en millisecondes, oscillant entre 300 et 700 ms) et le taux de cortisol libre salivaire (exprim\u00e9 en nanomoles par litre, variant sur une amplitude \u00e9troite de 5 \u00e0 25 nmol\/L).<\/p>\n<p><code># S\u00e9quence temporelle de suivi (10 sessions exp\u00e9rimentales)<br \/>\nsession &lt;- 1:10<br \/>\ntemps_reaction &lt;- c(340, 360, 410, 490, 620, 680, 590, 480, 420, 380)<br \/>\ncortisol_saliv  &lt;- c(6.2, 6.8, 7.5, 11.2, 18.5, 22.4, 21.0, 16.3, 11.8, 8.4)<\/p>\n<p># Ajustement des marges d'affichage : marge droite \u00e9largie \u00e0 5.5 lignes<br \/>\npar(mar = c(5, 4.5, 3, 5.5))<\/p>\n<p># Premi\u00e8re couche de haut niveau : Temps de r\u00e9action (Axe Y primaire \u00e0 gauche)<br \/>\nplot(session, temps_reaction,<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;type = \"b\", pch = 19, lwd = 2.5, col = \"#2980B9\",<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;yaxt = \"s\", bty = \"u\", las = 1,<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;xlab = \"Paliere Temporel de l'\u00c9preuve (Sessions)\",<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ylab = \"Temps de R\u00e9ponse Moteur (ms)\",<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;main = \"Cin\u00e9tique Conjointe Psycho-Physiologique sous Stress\")<\/p>\n<p># Teinte personnalis\u00e9e de l'axe primaire gauche<br \/>\naxis(side = 2, col = \"#2980B9\", col.axis = \"#2980B9\", las = 1)<\/p>\n<p># Maintien d'\u00e9tat pour \u00e9criture de la seconde couche sur le canevas existant<br \/>\npar(new = TRUE)<\/p>\n<p># Seconde couche de haut niveau : Cortisol (Axes d\u00e9sactiv\u00e9s, \u00e9chelle ind\u00e9pendante)<br \/>\nplot(session, cortisol_saliv,<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;type = \"b\", pch = 17, lty = 2, lwd = 2.5, col = \"#C0392B\",<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;axes = FALSE, xlab = \"\", ylab = \"\")<\/p>\n<p># Dessin cibl\u00e9 de l'axe secondaire sur le flanc droit (side = 4)<br \/>\naxis(side = 4, col = \"#C0392B\", col.axis = \"#C0392B\", las = 1)<\/p>\n<p># Int\u00e9gration de l'\u00e9tiquette marginale droite d\u00e9di\u00e9e<br \/>\nmtext(\"Cortisol Salivaire Libre (nmol\/L)\", side = 4, line = 3.5, col = \"#C0392B\")<\/p>\n<p># Insertion d'une l\u00e9gende conjointe synth\u00e9tique<br \/>\nlegend(\"topleft\",<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;legend = c(\"Temps de R\u00e9action (ms)\", \"Cortisol (nmol\/L)\"),<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pch = c(19, 17), lty = c(1, 2), lwd = 2,<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;col = c(\"#2980B9\", \"#C0392B\"), bty = \"n\", cex = 0.85)<\/code><\/p>\n<p>La figure r\u00e9sultante pr\u00e9serve l&rsquo;ind\u00e9pendance int\u00e9grale des plages de variation respectives tout en permettant de diagnostiquer visuellement une synchronisation quasi parfaite des deux ph\u00e9nom\u00e8nes : le pic de s\u00e9cr\u00e9tion endocrinienne de cortisol concorde fid\u00e8lement avec la phase de ralentissement psychomoteur maximal observ\u00e9e \u00e0 la sixi\u00e8me session. L&rsquo;harmonisation syst\u00e9matique des couleurs entre les donn\u00e9es, les symboles, les lignes et les axes d&rsquo;ordonn\u00e9es \u00e9limine tout risque d&rsquo;inversion des \u00e9chelles par le lecteur.<\/p>\n<h2>10. Approche alternative moderne : La superposition dans ggplot2<\/h2>\n<h3>10.1 La grammaire des graphiques comme paradigme de couches natives<\/h3>\n<p>Bien que la ma\u00eetrise de Base R demeure une comp\u00e9tence analytique indispensable pour comprendre les fondations graphiques du langage, l&rsquo;\u00e9cosyst\u00e8me <a rel=\"noopener noreferrer\" href=\"https:\/\/ggplot2.tidyverse.org\/\">ggplot2<\/a> a profond\u00e9ment renouvel\u00e9 la pratique de la superposition visuelle en la formalisant au sein d&rsquo;une grammaire computationnelle coh\u00e9rente. Au lieu de consid\u00e9rer la superposition comme une s\u00e9quence temporelle d&rsquo;injections de pigments sur un canevas statique, <code>ggplot2<\/code> la conceptualise comme un empilement logique de couches (<em>layers<\/em>) d\u00e9claratives unies par l&rsquo;op\u00e9rateur arithm\u00e9tique <code>+<\/code>.<\/p>\n<p>Chaque couche graphique au sein de <code>ggplot2<\/code> int\u00e8gre cinq composantes structurelles fondamentales : un jeu de donn\u00e9es (<em>data<\/em>), une correspondance esth\u00e9tique (<em>aesthetic mapping<\/em> formalis\u00e9e par l&rsquo;op\u00e9rateur <code>aes()<\/code>), une primitive g\u00e9om\u00e9trique (<em>geom<\/em>), une transformation statistique sous-jacente (<em>stat<\/em>), et un ajustement de position spatiale (<em>position<\/em>). La puissance fondamentale de ce paradigme r\u00e9side dans le m\u00e9canisme de gestion automatis\u00e9e des \u00e9chelles (<em>scales<\/em>) et des limites : le syst\u00e8me inspecte en continu l&rsquo;ensemble des couches accumul\u00e9es pour ajuster automatiquement les coordonn\u00e9es cart\u00e9siennes globales (<code>coord_cartesian()<\/code>), \u00e9liminant de facto le pi\u00e8ge de la troncature silencieuse rencontr\u00e9 lors de l&rsquo;usage imprudent de Base R.<\/p>\n<p>De plus, l&rsquo;h\u00e9ritage des variables esth\u00e9tiques procure une \u00e9conomie syntaxique majeure. Les assignations d\u00e9clar\u00e9es au sein de l&rsquo;instruction inaugurale <code>ggplot(data, aes(x, y))<\/code> se propagent en cascade \u00e0 l&rsquo;int\u00e9gralit\u00e9 des g\u00e9om\u00e9tries d\u00e9clar\u00e9es en aval, \u00e0 moins qu&rsquo;une couche sp\u00e9cifique ne red\u00e9finisse localement ses propres donn\u00e9es ou son propre mapping. La l\u00e9gende descriptive g\u00e9n\u00e9rale est quant \u00e0 elle g\u00e9n\u00e9r\u00e9e, mise \u00e0 jour et harmonis\u00e9e de fa\u00e7on strictement automatique d&rsquo;apr\u00e8s les correspondances esth\u00e9tiques attribu\u00e9es.<\/p>\n<h3>10.2 Combinaisons classiques : geom_point(), geom_line() et geom_smooth()<\/h3>\n<p>L&rsquo;assemblage conjoint de multiples primitives g\u00e9om\u00e9triques s&rsquo;op\u00e8re dans <code>ggplot2<\/code> avec une fluidit\u00e9 d\u00e9concertante par simple encha\u00eenement additif de fonctions g\u00e9om\u00e9triques d\u00e9di\u00e9es. La trilogie classique associant la dispersion empirique brute (<code>geom_point()<\/code>), la trajectoire longitudinale de liaison (<code>geom_line()<\/code>) et la tendance de r\u00e9gression ajust\u00e9e avec son enveloppe d&rsquo;erreur standard (<code>geom_smooth()<\/code>) s&rsquo;ex\u00e9cute selon une syntaxe unifi\u00e9e et remarquablement concise.<\/p>\n<p>La distinction entre l&rsquo;assignation globale d&rsquo;un attribut visuel et son couplage \u00e0 une variable statistique constitue un principe directeur essentiel :<\/p>\n<ul>\n<li>Lorsque la couleur, la forme ou le type de trait est assign\u00e9 \u00e0 une dimension de variabilit\u00e9 statistique factorielle, l&rsquo;argument correspondant doit obligatoirement r\u00e9sider \u00e0 l&rsquo;int\u00e9rieur de l&rsquo;instruction <code>aes()<\/code> (par exemple : <code>geom_point(aes(color = Groupe, shape = Groupe))<\/code>).<\/li>\n<li>Lorsque l&rsquo;attribut est une constante g\u00e9om\u00e9trique uniforme appliqu\u00e9e indistinctement \u00e0 tous les points (par exemple une taille de marqueur ou un niveau de transparence globale), il doit \u00eatre d\u00e9clar\u00e9 en dehors de <code>aes()<\/code> (par exemple : <code>geom_point(color = \"steelblue\", alpha = 0.6, size = 3)<\/code>).<\/li>\n<\/ul>\n<p>L&rsquo;instruction <code>geom_smooth()<\/code> illustre la sophistication de l&rsquo;approche en r\u00e9alisant simultan\u00e9ment la r\u00e9gression param\u00e9trique ou non param\u00e9trique sous-jacente (par LOESS ou mod\u00e8le lin\u00e9aire g\u00e9n\u00e9ralis\u00e9 <code>method = \"lm\"<\/code>), le calcul analytique des bornes de confiance \u00e0 95 %, le trac\u00e9 du ruban polygonal d&rsquo;incertitude (<code>fill<\/code>) et la mat\u00e9rialisation de la courbe moyenne (<code>color<\/code>), condensant en une seule ligne d\u00e9clarative ce qui exigeait des dizaines de lignes de programmation matricielle en Base R.<\/p>\n<h3>10.3 Superposition de sources de donn\u00e9es disparates sous ggplot2<\/h3>\n<p>L&rsquo;un des atouts architecturaux les plus remarquables de <code>ggplot2<\/code> r\u00e9side dans sa capacit\u00e9 \u00e0 superposer des g\u00e9om\u00e9tries aliment\u00e9es par des jeux de donn\u00e9es (<em>data frames<\/em>) structurellement distincts au sein d&rsquo;une seule et m\u00eame figure int\u00e9gr\u00e9e. Cette facult\u00e9 s&rsquo;av\u00e8re providentielle lorsqu&rsquo;il s&rsquo;agit de juxtaposer un \u00e9chantillon de micro-donn\u00e9es individuelles volumineuses avec un tableau synth\u00e9tique contenant des moyennes agr\u00e9g\u00e9es, des cibles normatives pr\u00e9\u00e9tablies ou des bornes de classification clinique issues d&rsquo;une source externe.<\/p>\n<p>Pour superposer une source d&rsquo;information disjointe, il suffit de renseigner explicitement l&rsquo;argument <code>data<\/code> au sein de la couche g\u00e9om\u00e9trique secondaire, court-circuitant ainsi l&rsquo;h\u00e9ritage du jeu de donn\u00e9es principal sp\u00e9cifi\u00e9 dans l&rsquo;appel initial <code>ggplot()<\/code> :<\/p>\n<p><code># Exemple conceptuel d'injection h\u00e9t\u00e9rog\u00e8ne sous ggplot2<br \/>\nlibrary(ggplot2)<\/p>\n<p># Visualisation combinant donn\u00e9es brutes individuelles et moyennes de groupe pr\u00e9-calcul\u00e9es<br \/>\nggplot(data = donnees_individuelles, aes(x = Annee, y = Score)) +<br \/>\n&nbsp;&nbsp;geom_point(alpha = 0.2, color = \"grey40\") +<br \/>\n&nbsp;&nbsp;geom_line(data = moyennes_agregees, aes(x = Annee, y = ScoreMoyen, color = Categorie), linewidth = 1.2) +<br \/>\n&nbsp;&nbsp;scale_color_manual(values = c(\"Groupe1\" = \"#E67E22\", \"Groupe2\" = \"#27AE60\")) +<br \/>\n&nbsp;&nbsp;theme_minimal()<\/code><\/p>\n<p>Dans ce sch\u00e9ma, <code>geom_line()<\/code> op\u00e8re sur la table agr\u00e9g\u00e9e <code>moyennes_agregees<\/code> tandis que <code>geom_point()<\/code> projette le semi de points issu de <code>donnees_individuelles<\/code>. Les deux couches s&rsquo;accordent organiquement sur l&rsquo;\u00e9chelle commune de l&rsquo;axe des abscisses (<code>Annee<\/code>) et de l&rsquo;axe des ordonn\u00e9es (<code>Score<\/code>), le moteur de <code>ggplot2<\/code> se chargeant d&rsquo;unifier l&rsquo;espace cart\u00e9sien global sans aucune intervention manuelle de calcul d&rsquo;extrema.<\/p>\n<h2>11. Erreurs m\u00e9thodologiques, artefacts visuels et pi\u00e8ges d&rsquo;impl\u00e9mentation<\/h2>\n<h3>11.1 Sur-tra\u00e7age (overplotting) et perte de r\u00e9solution de l&rsquo;information<\/h3>\n<p>Le sur-tra\u00e7age (<em>overplotting<\/em>) repr\u00e9sente sans doute la menace la plus insidieuse pesant sur la v\u00e9racit\u00e9 scientifique des graphiques superpos\u00e9s. Lorsqu&rsquo;un \u00e9chantillon exp\u00e9rimental agr\u00e8ge des milliers ou des dizaines de milliers d&rsquo;observations individuelles, la superposition brute de marqueurs opaques aboutit \u00e0 la formation d&rsquo;amas chromatiques compacts. Dans ces zones de saturation dense, le graphique perd toute r\u00e9solution distributionnelle : cent points parfaitement superpos\u00e9s renvoient exactement la m\u00eame signature visuelle qu&rsquo;un point isol\u00e9 unique, annihilant toute perception de la densit\u00e9 relative de probabilit\u00e9.<\/p>\n<p>Pour restaurer l&rsquo;int\u00e9grit\u00e9 de l&rsquo;information sans renoncer \u00e0 la superposition, plusieurs voies de rem\u00e9diation m\u00e9thodologique s&rsquo;offrent au chercheur :<\/p>\n<ul>\n<li>L&rsquo;application d&rsquo;une dispersion al\u00e9atoire infime (<em>jittering<\/em> via la fonction <code>jitter()<\/code> en Base R ou <code>geom_jitter()<\/code> sous <code>ggplot2<\/code>), qui injecte un bruit stochastique contr\u00f4l\u00e9 sur des variables discr\u00e8tes afin de d\u00e9sagr\u00e9ger visuellement les n\u0153uds d&#8217;empilement artificiel sans corrompre la m\u00e9trique g\u00e9n\u00e9rale.<\/li>\n<li>L&rsquo;exploitation rigoureuse du canal de transparence alpha, calibr\u00e9 selon la relation inverse de la densit\u00e9 de l&rsquo;\u00e9chantillon, transformant l&rsquo;occultation opaque en un d\u00e9grad\u00e9 de saturation volumique.<\/li>\n<li>La substitution du nuage de points brut par des repr\u00e9sentations de densit\u00e9 bidimensionnelle continues (lignes de niveau de densit\u00e9 via <code>contour()<\/code>, polygones de densit\u00e9 de type <code>geom_density_2d()<\/code> ou pavages hexagonaux r\u00e9gularis\u00e9s via <code>geom_hex()<\/code>).<\/li>\n<\/ul>\n<h3>11.2 D\u00e9calage et incoh\u00e9rence spatiale des syst\u00e8mes de coordonn\u00e9es<\/h3>\n<p>Un autre pi\u00e8ge d&rsquo;impl\u00e9mentation majeur, propre \u00e0 la manipulation proc\u00e9durale de Base R, concerne l&rsquo;introduction involontaire d&rsquo;asym\u00e9tries dans les configurations spatiales d&rsquo;\u00e9tat graphique. L&rsquo;utilisation hasardeuse de multiples appels successifs \u00e0 <code>par()<\/code> sans r\u00e9initialisation formelle pr\u00e9alable peut modifier subrepticeusement la taille relative des marges (<code>mar<\/code>), le mode de trac\u00e9 des bo\u00eetes (<code>bty<\/code>) ou les facteurs d&rsquo;expansion typographique (<code>cex<\/code>) d&rsquo;une couche \u00e0 l&rsquo;autre.<\/p>\n<p>Le cas le plus critique s&rsquo;observe lors du recours \u00e0 <code>par(new = TRUE)<\/code> pour l&rsquo;\u00e9laboration de graphiques \u00e0 axes doubles : si les marges p\u00e9riph\u00e9riques (<code>mar<\/code>) ou la marge ext\u00e9rieure (<code>oma<\/code>) d\u00e9clar\u00e9es avant le second appel \u00e0 <code>plot()<\/code> ne sont pas rigoureusement identiques \u00e0 celles appliqu\u00e9es lors de l&rsquo;initialisation du premier graphique, les deux syst\u00e8mes de coordonn\u00e9es projet\u00e9s sur l&rsquo;\u00e9cran subiront une translation ou une distorsion d&rsquo;\u00e9chelle asym\u00e9trique. Les donn\u00e9es du second trac\u00e9 seront alors spatialement d\u00e9cal\u00e9es par rapport au r\u00e9f\u00e9rentiel d&rsquo;abscisse du premier trac\u00e9, induisant le lecteur en erreur sur la synchronie temporelle ou spatiale r\u00e9elle des \u00e9v\u00e9nements mod\u00e9lis\u00e9s. Pour se pr\u00e9munir contre ces d\u00e9rives d&rsquo;alignement g\u00e9om\u00e9trique, il est fortement recommand\u00e9 de stocker les param\u00e8tres d&rsquo;origine via <code>anciens_par &lt;- par(no.readonly = TRUE)<\/code> afin de garantir une restauration syst\u00e9matique de l&rsquo;\u00e9tat graphique.<\/p>\n<h3>11.3 Exc\u00e8s d&rsquo;encombrement graphique et violations des normes APA<\/h3>\n<p>L&rsquo;enthousiasme technique qui entoure la ma\u00eetrise de la superposition conduit fr\u00e9quemment \u00e0 l&rsquo;\u00e9cueil oppos\u00e9 : l&rsquo;encombrement excessif du canevas, g\u00e9n\u00e9rant ce que la litt\u00e9rature de la conception de l&rsquo;information qualifie de \u00ab fouillis graphique \u00bb (<em>chartjunk<\/em>). L&rsquo;adjonction simultan\u00e9e et effr\u00e9n\u00e9e de nuages de points denses, de multiples droites de r\u00e9gression concurrentes, de barres d&rsquo;erreur dans toutes les directions, d&rsquo;intervalles polygonaux ombr\u00e9s et de rep\u00e8res de seuil disjoints sur un seul cadre d&rsquo;affichage sature la capacit\u00e9 d&rsquo;absorption cognitive du r\u00e9cepteur de l&rsquo;information.<\/p>\n<p>Les normes de publication de l&rsquo;<a rel=\"noopener noreferrer\" href=\"https:\/\/apastyle.apa.org\/\">American Psychological Association<\/a> (APA 7e \u00e9dition) fournissent des crit\u00e8res directeurs stricts en mati\u00e8re d&rsquo;affichage des figures scientifiques :<\/p>\n<ul>\n<li>Toute figure doit pr\u00e9senter un ratio donn\u00e9es-encre maximal en \u00e9liminant les encadrements superflus, les ombrages d\u00e9coratifs, les fonds de grille disproportionn\u00e9s et les effets tridimensionnels non signifiants.<\/li>\n<li>Les typographies utilis\u00e9es pour les annotations superpos\u00e9es et les l\u00e9gendes doivent maintenir une harmonie sans empattement (Arial, Helvetica) avec une taille de corps comprise entre 8 et 14 points afin de demeurer parfaitement lisibles apr\u00e8s r\u00e9duction d&rsquo;\u00e9chelle \u00e9ditoriale.<\/li>\n<li>La figure doit pouvoir \u00eatre d\u00e9cod\u00e9e de mani\u00e8re autonome, ce qui impose que la l\u00e9gende explicative contienne la d\u00e9finition univoque de l&rsquo;ensemble des symboles (<code>pch<\/code>), types de lignes (<code>lty<\/code>) et unit\u00e9s physiques repr\u00e9sent\u00e9s.<\/li>\n<li>L&rsquo;encodage des contrastes doit garantir une intelligibilit\u00e9 parfaite sous accessibilit\u00e9 universelle, en v\u00e9rifiant que le message informatif ne repose pas exclusivement sur une diff\u00e9renciation rouge\/vert inop\u00e9rante pour les lecteurs atteints de daltonisme.<\/li>\n<\/ul>\n<h2>12. Applications pratiques et protocoles pour la recherche scientifique<\/h2>\n<h3>12.1 Mod\u00e9lisation de trajectoires individuelles et moyennes de groupe<\/h3>\n<p>L&rsquo;un des d\u00e9fis analytiques les plus embl\u00e9matiques de la recherche biom\u00e9dicale, de l&rsquo;\u00e9pid\u00e9miologie et de la psychologie diff\u00e9rentielle r\u00e9side dans la restitution visuelle de donn\u00e9es longitudinales issues de mesures r\u00e9p\u00e9t\u00e9es. La structure de superposition dite en \u00ab graphique en spaghettis \u00bb (<em>spaghetti plot<\/em>) permet de concilier la visualisation de la variabilit\u00e9 intra-individuelle chaotique et l&rsquo;expression de la tendance d\u00e9veloppementale moyenne de l&rsquo;\u00e9chantillon global.<\/p>\n<p>Le protocole technique repose sur une hi\u00e9rarchisation s\u00e9miotique radicale en deux strates d&rsquo;affichage :<\/p>\n<p><code># Simulation d'un suivi longitudinal de 20 sujets sur 5 points temporels<br \/>\nnb_sujets &lt;- 20<br \/>\ntemps_points &lt;- 1:5<br \/>\ntrajectoires &lt;- matrix(NA, nrow = nb_sujets, ncol = 5)<br \/>\nset.seed(42)<br \/>\nfor(i in 1:nb_sujets) {<br \/>\n&nbsp;&nbsp;trajectoires[i, ] &lt;- 10 + 2.5 * temps_points + rnorm(1, 0, 4) + rnorm(5, 0, 1.5)<br \/>\n}<\/p>\n<p># Calcul de la trajectoire moyenne de groupe<br \/>\nmoyenne_groupe &lt;- colMeans(trajectoires)<\/p>\n<p># \u00c9talonnage du canevas initial<br \/>\npar(mar = c(4.5, 4.5, 2.5, 1.5))<br \/>\nplot(temps_points, trajectoires[1, ], type = \"l\",<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ylim = range(trajectoires), xlim = c(1, 5),<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;col = rgb(0.5, 0.5, 0.5, 0.25), lwd = 1.2, las = 1, bty = \"l\",<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;xlab = \"Visite d'\u00c9valuation Clinique (V1 \u00e0 V5)\",<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ylab = \"Indicateur de Charge Symptomatique\",<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;main = \"Cin\u00e9tiques Individuelles et Tendance Moyenne Globale\")<\/p>\n<p># Superposition de l'ensemble des profils individuels en gris translucide<br \/>\nfor(i in 2:nb_sujets) {<br \/>\n&nbsp;&nbsp;lines(temps_points, trajectoires[i, ], col = rgb(0.5, 0.5, 0.5, 0.25), lwd = 1.2)<br \/>\n}<\/p>\n<p># Surimpression saillante de la moyenne de population g\u00e9n\u00e9rale<br \/>\nlines(temps_points, moyenne_groupe, col = \"#8E44AD\", lwd = 4)<br \/>\npoints(temps_points, moyenne_groupe, col = \"#8E44AD\", pch = 19, cex = 1.4)<\/p>\n<p># L\u00e9gende explicative int\u00e9gr\u00e9e<br \/>\nlegend(\"topleft\",<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;legend = c(\"Trajectoires Individuelles (N = 20)\", \"Tendance Moyenne Estim\u00e9e\"),<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;col = c(\"grey60\", \"#8E44AD\"), lwd = c(1.2, 4), pch = c(NA, 19),<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bty = \"n\", cex = 0.9)<\/code><\/p>\n<p>Cette composition graphique pr\u00e9serve l&rsquo;int\u00e9grit\u00e9 de la dispersion empirique en arri\u00e8re-plan (permettant d&rsquo;identifier d&rsquo;un coup d&rsquo;\u0153il les profils atypiques, les d\u00e9crochages ou les non-r\u00e9pondeurs th\u00e9rapeutiques) tout en faisant \u00e9merger sans ambigu\u00eft\u00e9 la trajectoire macroscopique du groupe via une ligne de fort contraste optique et de chromaticit\u00e9 vive.<\/p>\n<h3>12.2 Visualisation de designs exp\u00e9rimentaux multifactoriels<\/h3>\n<p>Dans le cadre d&rsquo;un protocole factoriel complexe croisant plusieurs facteurs fixes (par exemple : Facteur A \u00e0 2 modalit\u00e9s <span class=\"arabpsy-math-inline\" data-latex=\"\\times\">$\\times$<\/span> Facteur B \u00e0 3 modalit\u00e9s), la mise en \u00e9vidence des effets principaux et des effets d&rsquo;interaction statistique repose sur la superposition m\u00e9ticuleuse de profils de r\u00e9action conjointe.<\/p>\n<p>La figure doit juxtaposer les indicateurs ponctuels d&rsquo;estimation centrale, les barres d&rsquo;erreur standard mat\u00e9rialisant l&rsquo;incertitude exp\u00e9rimentale de chaque cellule du plan, ainsi que des lignes d&rsquo;interconnexion reliant les niveaux du premier facteur \u00e0 travers les strates du second facteur. L&rsquo;apparition de segments de droites non parall\u00e8les ou s\u00e9cants offre une d\u00e9monstration visuelle imm\u00e9diate d&rsquo;une interaction factorielle significative, pr\u00e9parant le lecteur aux interpr\u00e9tations des analyses de variance (ANOVA) ou des mod\u00e8les mixtes pr\u00e9sent\u00e9s dans le corps textuel du rapport de recherche.<\/p>\n<p>Dans un contexte de science ouverte et de reproductibilit\u00e9 computationnelle int\u00e9grale, l&rsquo;automatisation de la g\u00e9n\u00e9ration de ces figures complexes au sein de flux documentaires standardis\u00e9s (tels que R Markdown ou Quarto) garantit que toute mise \u00e0 jour du jeu de donn\u00e9es exp\u00e9rimental r\u00e9actualisera de mani\u00e8re totalement transparente l&rsquo;ensemble des couches superpos\u00e9es, des limites d&rsquo;axes calcul\u00e9es et des annotations statistiques associ\u00e9es.<\/p>\n<h3>12.3 Exportation haute r\u00e9solution et standardisation pour la publication<\/h3>\n<p>L&rsquo;aboutissement de toute d\u00e9marche de composition visuelle r\u00e9side dans son exportation physique vers un p\u00e9riph\u00e9rique de restitution num\u00e9rique ou pr\u00e9presse conforme aux standards les plus intransigeants des comit\u00e9s \u00e9ditoriaux scientifiques (exigeant commun\u00e9ment une r\u00e9solution minimale de 300 \u00e0 600 DPI pour les formats matriciels ou une restitution vectorielle native pure).<\/p>\n<p>Il est fondamental de dissocier le rendu produit sur la console interactive de RStudio des fichiers produits par les pilotes graphiques formels. Pour exporter une figure superpos\u00e9e complexe sans distorsion des rapports de taille textuelle ou des \u00e9paisseurs relatives de lignes, le chercheur doit encapsuler sa s\u00e9quence de programmation graphique entre l&rsquo;ouverture du pilote d&rsquo;exportation d\u00e9di\u00e9 et sa fermeture irr\u00e9versible via <code>dev.off()<\/code> :<\/p>\n<p><code># Exemple de pipeline d'exportation haute r\u00e9solution TIFF pr\u00e9presse<br \/>\ntiff(filename = \"Figure1_Publication.tif\",<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;width = 17, height = 12, units = \"cm\",<br \/>\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;res = 300, compression = \"lzw\")<\/p>\n<p># [Insertion ici de l'ensemble des commandes graphiques superpos\u00e9es Base R]<\/p>\n<p># Cl\u00f4ture imp\u00e9rative du flux d'enregistrement et \u00e9criture physique sur disque<br \/>\ndev.off()<\/code><\/p>\n<p>Pour les supports num\u00e9riques contemporains et les publications en libre acc\u00e8s, le recours aux pilotes vectoriels tels que <code>pdf(..., useDingbats = FALSE)<\/code> ou <code>svg()<\/code> est hautement pr\u00e9conis\u00e9. Les formats vectoriels \u00e9liminent toute pixelisation lors du zoom interactif, r\u00e9duisent drastiquement le poids m\u00e9moire des fichiers finaux et assurent une fid\u00e9lit\u00e9 g\u00e9om\u00e9trique absolue de l&rsquo;ensemble des superpositions de lignes, de polygones et de glyphes ponctuels \u00e9labor\u00e9es au sein de l&rsquo;environnement statistique R.<\/p>\n<h2>R\u00e9f\u00e9rences<\/h2>\n<ul>\n<li>American Psychological Association. (2020). <em>Publication manual of the American Psychological Association<\/em> (7th ed.). American Psychological Association. <a rel=\"noopener noreferrer\" href=\"https:\/\/doi.org\/10.1037\/0000165-000\">https:\/\/doi.org\/10.1037\/0000165-000<\/a><\/li>\n<li>Bertin, J. (1983). <em>Semiology of graphics: Diagrams, networks, maps<\/em>. University of Wisconsin Press.<\/li>\n<li>Chambers, J. M., Cleveland, W. S., Kleiner, B., &amp; Tukey, P. A. (1983). <em>Graphical methods for data analysis<\/em>. Wadsworth.<\/li>\n<li>Cleveland, W. S., &amp; McGill, R. (1984). Graphical perception: Theory, experimentation, and application to the development of graphical methods. <em>Journal of the American Statistical Association<\/em>, 79(387), 531\u2013554. <a rel=\"noopener noreferrer\" href=\"https:\/\/doi.org\/10.1080\/01621459.1984.10478080\">https:\/\/doi.org\/10.1080\/01621459.1984.10478080<\/a><\/li>\n<li>Murrell, P. (2018). <em>R graphics<\/em> (3rd ed.). Chapman and Hall\/CRC. <a rel=\"noopener noreferrer\" href=\"https:\/\/doi.org\/10.1201\/9780429497018\">https:\/\/doi.org\/10.1201\/9780429497018<\/a><\/li>\n<li>R Core Team. (2023). <em>R: A language and environment for statistical computing<\/em>. R Foundation for Statistical Computing. <a rel=\"noopener noreferrer\" href=\"https:\/\/www.R-project.org\/\">https:\/\/www.R-project.org\/<\/a><\/li>\n<li>Tufte, E. R. (2001). <em>The visual display of quantitative information<\/em> (2nd ed.). Graphics Press.<\/li>\n<li>Wickham, H. (2016). <em>ggplot2: Elegant graphics for data analysis<\/em> (2nd ed.). Springer-Verlag. <a rel=\"noopener noreferrer\" href=\"https:\/\/doi.org\/10.1007\/978-3-319-24277-4\">https:\/\/doi.org\/10.1007\/978-3-319-24277-4<\/a><\/li>\n<li>Wilkinson, L. (2005). <em>The grammar of graphics<\/em> (2nd ed.). Springer-Verlag. <a rel=\"noopener noreferrer\" href=\"https:\/\/doi.org\/10.1007\/0-387-28695-0\">https:\/\/doi.org\/10.1007\/0-387-28695-0<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Guide acad\u00e9mique complet pour apprendre \u00e0 superposer des graphiques dans R : nuages de points, lignes et densit\u00e9s avec le syst\u00e8me de base et ggplot2.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","template":"","categories":[1829,2193],"tags":[4267,4421,2956,4894,2041],"class_list":["post-2850","psych_stat","type-psych_stat","status-publish","hentry","category-methodologie-statistique","category-programmation-r","tag-base-r","tag-nuage-de-points","tag-programmation-r","tag-superposition-graphique","tag-visualisation-de-donnees"],"_links":{"self":[{"href":"https:\/\/french.arabpsychology.com\/index.php?rest_route=\/wp\/v2\/psych_stat\/2850","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/french.arabpsychology.com\/index.php?rest_route=\/wp\/v2\/psych_stat"}],"about":[{"href":"https:\/\/french.arabpsychology.com\/index.php?rest_route=\/wp\/v2\/types\/psych_stat"}],"author":[{"embeddable":true,"href":"https:\/\/french.arabpsychology.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/french.arabpsychology.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2850"}],"version-history":[{"count":1,"href":"https:\/\/french.arabpsychology.com\/index.php?rest_route=\/wp\/v2\/psych_stat\/2850\/revisions"}],"predecessor-version":[{"id":16406,"href":"https:\/\/french.arabpsychology.com\/index.php?rest_route=\/wp\/v2\/psych_stat\/2850\/revisions\/16406"}],"wp:attachment":[{"href":"https:\/\/french.arabpsychology.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2850"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/french.arabpsychology.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2850"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/french.arabpsychology.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2850"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}