Sociogram

À propos des sociogrammes

Un sociogramme cartographie le réseau de choix, de rejets et d'alliances au sein d'un groupe — qui apprécie qui, qui est isolé, où se forment les cliques. Jacob Moreno a introduit cette méthode en 1934 comme outil clinique pour la thérapie de groupe ; elle a depuis été adoptée par les enseignants (qui l'utilisent pour détecter l'exclusion et le harcèlement), les équipes RH (cartographie de l'influence informelle) et les chercheurs en organisation. Contrairement à un ecomap, qui se centre sur l'environnement extérieur d'une personne, un sociogramme traite chaque membre du groupe de manière symétrique.

Schematex suit les conventions de sociométrie de Moreno (1934) pour les rôles des nœuds et les types d'arêtes, étendues avec les notations modernes d'analyse des réseaux sociaux pour la valence, la direction et le poids. Cette page documente ce que le parseur accepte aujourd'hui.

sociogram·§ Moreno
↘ preview
100%
Sociogram: Group Therapy — Week 6 Sociogram with 7 members and 12 connections Group Therapy — Week 6 strong bond tension Dr. Park James Maria Lee Sarah Tom Nina ROLES Star (sociometric center) TIES Positive tie Negative tie Neutral tie
UTF-8 · LF · 21 lines · 473 chars✓ parsed·5.0 ms·9.7 KB SVG

1. Votre premier sociogramme

Le sociogramme utile le plus simple : quatre personnes, trois types de relations différents.

sociogram·§ Moreno
↘ preview
100%
Sociogram: Study group Sociogram with 4 members and 3 connections Study group lab partners rivalry Alice Bob Carol Dave TIES Positive tie Negative tie
UTF-8 · LF · 8 lines · 194 chars✓ parsed·1.2 ms·5.5 KB SVG

Quatre règles couvrent 80 % des usages :

  1. Commencez par le mot-clé sociogram, suivi éventuellement d'un titre entre guillemets.
  2. Chaque personne est un nœud — déclaré explicitement avec id [label: "…"] ou créé automatiquement la première fois qu'il apparaît dans une arête.
  3. Connectez deux nœuds avec un opérateur d'arête<-> (mutuel), -> (unidirectionnel), -x> (rejet), -.- (neutre). Voir §3.
  4. Déclarez éventuellement des groupes et des lignes config pour contrôler la mise en page et la colorisation.

Les commentaires doivent commencer par # sur leur propre ligne.


2. Nœuds

Une ligne de nœud est id [attr: valeur, …]. Les nœuds sont également créés implicitement lors de leur première référence dans une arête — mais une déclaration explicite permet de définir des étiquettes, des groupes et des rôles.

Règles d'identifiant. Doit correspondre à [a-zA-Z][a-zA-Z0-9_-]*. L'identifiant est utilisé en interne ; l'attribut label: définit le nom d'affichage.

Attributs de nœud :

AttributValeursEffet
label: "…"chaîne entre guillemetsNom d'affichage (par défaut l'identifiant)
group: ididentifiant de groupeAssocie le nœud à un groupe pour la colorisation
role: …star, isolate, bridge, neglectee, rejectedAnnotation de rôle sociométrique explicite
size: …small, medium, largeRemplacement de la taille du nœud
sociogram·§ Moreno
↘ preview
100%
Sociogram: Group roles demo Sociogram with 5 members and 5 connections Group roles demo Dr. Park James Nina Alex Sam ROLES Star (sociometric center) Isolate Neglectee TIES Positive tie
UTF-8 · LF · 12 lines · 321 chars✓ parsed·0.8 ms·7.2 KB SVG

3. Arêtes

Une ligne d'arête est idGauche OP idDroit suivie éventuellement de [label: "…", weight: N]. Les deux identifiants sont enregistrés automatiquement comme nœuds s'ils ne sont pas encore déclarés.

3.1 Direction et valence

sociogram·§ Moreno
↘ preview
100%
Sociogram: Edge types Sociogram with 6 members and 6 connections Edge types chose B mutual rejects D mutual reject indifferent mutual neutral A B C D E F TIES Positive tie Negative tie Neutral tie
UTF-8 · LF · 17 lines · 351 chars✓ parsed·0.7 ms·7.4 KB SVG
OpérateurDirectionValenceSignification
A -> BunidirectionnelpositiveA a choisi B
A <- BunidirectionnelpositiveB a choisi A (identique à B -> A)
A <-> BmutuelpositiveLes deux se sont choisis
A -- Bnon orientépositiveRelation connue ; direction non enregistrée
A -x> BunidirectionnelnégativeA rejette B
A <x- BunidirectionnelnégativeB rejette A
A <x-> BmutuelnégativeRejet mutuel
A -x- Bnon orienténégativeConflit ; direction inconnue
A -.> BunidirectionnelneutreA est indifférent envers B
A <.-> BmutuelneutreIndifférence mutuelle
A -.- Bnon orienténeutreRelation neutre

3.2 Poids / intensité

Un poids plus élevé = une ligne plus épaisse. Utilisez les opérateurs de raccourci ou remplacez explicitement avec [weight: N].

PoidsRaccourciDirectionSignification
2 (défaut)-> <-> -- -x> -.-quelconqueConnexion standard
3==> <== <==> ===unidirectionnel / mutuel / non orientéFort
4===> <=== <===>unidirectionnel / mutuelTrès fort
personnalisé[weight: N]Tout entier
sociogram·§ Moreno
↘ preview
100%
Sociogram: Relationship strengths Sociogram with 4 members and 4 connections Relationship strengths weight 2 (default) weight 3 (strong) weight 4 (very strong) weight 1 (weak) A B C D TIES Positive tie
UTF-8 · LF · 10 lines · 282 chars✓ parsed·0.5 ms·5.7 KB SVG

3.3 Étiquettes d'arête

A -> B [label: "meilleur ami"] — l'étiquette apparaît sur la ligne de connexion.


4. Groupes

Un bloc group regroupe des nœuds dans un sous-groupe nommé pour la colorisation et le regroupement dans la mise en page.

Syntaxe de groupe :

  • group id [label: "…", color: "#hex"] — la ligne d'en-tête du groupe.
  • Les lignes membres suivent, chacune indentée d'au moins 4 espaces, un nœud par ligne.
  • Une ligne non indentée (ou le prochain group) ferme le groupe courant.
  • Les membres peuvent avoir leurs propres propriétés : anna [label: "Anna K.", size: large].

Les nœuds peuvent également être assignés en ligne : alice [group: girls].

sociogram·§ Moreno
↘ preview
100%
Sociogram: Classroom dynamics Sociogram with 8 members and 7 connections Classroom dynamics conflict cross-group Tom Jack Mike Leo Anna Beth Chloe Diana GROUPS Boys Girls TIES Positive tie Negative tie
UTF-8 · LF · 19 lines · 477 chars✓ parsed·19.1 ms·8.7 KB SVG

5. Configuration

Les lignes config: ajustent la mise en page et l'encodage visuel. Chacune est sur sa propre ligne.

Clé de configurationValeursDéfautEffet
layoutcircular, force-directed, concentriccircularAlgorithme de placement
sizinguniform, in-degree, betweennessuniformTaille des nœuds selon la métrique
coloringdefault, group, roledefaultSchéma de couleurs des nœuds
highlightliste séparée par des virgules : stars, isolates, cliquesstars,isolatesQuels motifs annoter

Notes sur la mise en page :

  • circular — nœuds répartis uniformément sur un anneau. Convient aux petits groupes (≤ 15).
  • force-directed — modèle à ressorts ; les clusters émergent automatiquement. Convient aux groupes de taille moyenne avec des sous-groupes distincts.
  • concentric — les anneaux intérieurs contiennent les nœuds à fort degré entrant. Convient pour montrer la structure cœur-périphérie.

Circulaire — placement uniforme en anneau ; chaque nœud est également visible. Convient aux petits groupes soudés.

sociogram·§ Moreno
↘ preview
100%
Sociogram: Therapy group — circular Sociogram with 7 members and 10 connections Therapy group — circular Dr. Park James Maria Lee Sarah Tom Nina ROLES Star (sociometric center) Neglectee TIES Positive tie Negative tie
UTF-8 · LF · 19 lines · 411 chars✓ parsed·0.9 ms·9.1 KB SVG

Force-directed — la physique de ressorts rapproche les nœuds connectés et éloigne les nœuds déconnectés. Les sous-groupes se regroupent de manière organique.

sociogram·§ Moreno
↘ preview
100%
Sociogram: Classroom dynamics — force-directed Sociogram with 8 members and 8 connections Classroom dynamics — force-directed conflict cross-group Tom Jack Mike Leo Anna Beth Chloe Diana GROUPS Boys Girls TIES Positive tie Negative tie
UTF-8 · LF · 20 lines · 507 chars✓ parsed·2.2 ms·8.9 KB SVG

Concentrique — nœuds triés par degré entrant ; les nœuds à haute centralité apparaissent sur les anneaux intérieurs, les nœuds périphériques sur les anneaux extérieurs.

sociogram·§ Moreno
↘ preview
100%
Sociogram: Informal influence — concentric Sociogram with 7 members and 9 connections Informal influence — concentric VP Eng Lead A Lead B Alice Bob Carol Dave TIES Positive tie
UTF-8 · LF · 19 lines · 387 chars✓ parsed·1.0 ms·8.0 KB SVG

6. Rôles sociométriques

Le parseur stocke les annotations de rôle sur les nœuds. Le renderer les utilise pour appliquer des badges visuels — un marqueur étoile pour star, une bordure en pointillés pour isolate, et ainsi de suite.

RôleSignification
starFigure centrale choisie par beaucoup (fort degré entrant)
isolateAucune connexion entrante ni sortante
neglecteeS'adresse aux autres mais ne reçoit aucun choix
rejectedReçoit des arêtes de rejet de plusieurs membres
bridgeConnecte deux clusters autrement séparés
sociogram·§ Moreno
↘ preview
100%
Sociogram: Role annotations Sociogram with 5 members and 6 connections Role annotations Maria Sam New Kid Alex Pat ROLES Star (sociometric center) Isolate Neglectee Rejected TIES Positive tie Negative tie
UTF-8 · LF · 13 lines · 384 chars✓ parsed·0.6 ms·8.1 KB SVG

7. Étiquettes et commentaires

  • Titre : sociogram "Study group" — première ligne uniquement.
  • Étiquette de nœud : alice [label: "Alice K."].
  • Étiquette de groupe : group boys [label: "Boys"].
  • Étiquette d'arête : alice -> bob [label: "lab partners"].
  • Commentaires : # en début de ligne (après les espaces initiaux).

8. Mots réservés et échappement

Réservés en début de ligne : sociogram (en-tête), group, config:.

Jetons opérateurs réservés — évitez ces séquences dans les identifiants : ->, <-, <->, --, ===, ==>, <==, <===>, -x>, <x-, -x-, <x->, -.>, <.->, -.-.

Les chaînes avec des espaces doivent être entre guillemets dans les valeurs label: et color:.


9. Erreurs courantes

Vous avez écritLe parseur indiqueCorrection
tom; jack; mike sur une ligne de groupetom; échoue la regex d'identifiant — ignoré silencieusementUn nœud par ligne, chacun indenté ≥ 4 espaces
Membres du groupe indentés de 2 espacesNon traités comme membres du groupe (le parseur exige ≥ 4)Utilisez une indentation de 4 espaces ou plus
alice <> bobAucun opérateur correspondant — non analysé comme arêteUtilisez <-> pour mutuel positif
config: layout = gridValeur inconnue ignorée silencieusement ; la mise en page reste circularUtilisez circular, force-directed ou concentric
Nœud avec un espace dans l'identifiant : dr parkLe parseur prend dr comme identifiant et park comme jeton errantUtilisez le tiret bas : dr_park [label: "Dr. Park"]

10. Grammaire (EBNF)

document       = header (blank | comment | config | group-block | edge | node)*

header         = "sociogram" ( WS quoted-string )? NEWLINE
quoted-string  = '"' any-char-but-quote* '"'

config         = "config:" WS key WS "=" WS value NEWLINE
key            = "layout" | "sizing" | "coloring" | "highlight"

group-block    = "group" WS id ( "[" group-attrs "]" )? NEWLINE
                   ( INDENT≥4 member-line )*
member-line    = id ( "[" node-attrs "]" )? NEWLINE
group-attrs    = group-attr ("," group-attr)*
group-attr     = "label:" quoted-string | "color:" quoted-string

node           = id ( "[" node-attrs "]" )? NEWLINE
node-attrs     = node-attr ("," node-attr)*
node-attr      = "label:" quoted-string
               | "group:" id
               | "role:" role
               | "size:" ("small" | "medium" | "large")

edge           = id WS op WS id ( "[" edge-attrs "]" )? NEWLINE
edge-attrs     = edge-attr ("," edge-attr)*
edge-attr      = "label:" quoted-string | "weight:" number

op             = // positive
                 "<===>" | "===>" | "<==="
               | "<==>"|"==>"|"<=="
               | "===" | "<->" | "->" | "<-" | "--"
               // negative
               | "<x->" | "-x>" | "<x-" | "-x-"
               // neutral
               | "<.->" | "-\.>" | "-.-"

role           = "star" | "isolate" | "bridge" | "neglectee" | "rejected"
id             = [a-zA-Z] [a-zA-Z0-9_-]*
comment        = "#" any NEWLINE

Source faisant autorité : src/diagrams/sociogram/parser.ts. En cas de divergence avec le parseur, le parseur a la priorité — veuillez ouvrir un ticket.


11. Conformité aux normes

Les sociogrammes Schematex suivent les conventions de sociométrie de Moreno (1934) pour les rôles des nœuds (star, isolate, neglectee) et la sémantique de choix orienté. L'ensemble des opérateurs d'arêtes est étendu avec la valence (positive / négative / neutre) et les niveaux de poids conformément à la pratique moderne d'analyse des réseaux sociaux (Hanneman & Riddle, 2005).

Ce qui est implémenté aujourd'hui :

  • ✅ Arêtes orientées, mutuelles et non orientées
  • ✅ Opérateurs de valence positive, négative et neutre
  • ✅ Quatre niveaux de poids (1–4) avec opérateurs de raccourci et [weight: N]
  • ✅ Groupes avec couleur
  • ✅ Déclarations de rôle de nœud (star, isolate, bridge, neglectee, rejected)
  • ✅ Trois mises en page : circulaire, force-directed, concentrique
  • ✅ Trois modes de dimensionnement : uniforme, degré entrant, centralité d'intermédiarité
  • ⏳ Mise en évidence automatique des cliques — enveloppe convexe ombrée (voir §13)
  • ⏳ Vue atome social (mise en page centrée sur l'ego)

Références :

  • Moreno, J.L. (1934). Who Shall Survive? Foundations of Sociometry, Group Psychotherapy and Sociodrama. Beacon House.
  • Hanneman, R.A. & Riddle, M. (2005). Introduction to Social Network Methods. UC Riverside.

12. Exemples associés

sociogram·§ Moreno 1934
Sociogram: Playground Dynamics Sociogram with 8 members and 10 connections Playground Dynamics conflict tom jack mike leo anna beth chloe diana GROUPS Boys Girls TIES Positive tie Negative tie Neutral tie
Playground dynamics
Moreno sociogram of classroom playground dynamics — mutual friendships, one-way choices, and peer conflicts mapped by gender group using force-directed layout.
education
sociogram·§ Moreno 1934
Sociogram: Engineering team — informal influence Sociogram with 10 members and 10 connections Engineering team — informal influence alex sam priya jordan kim tao lee ravi nina dev GROUPS Tech leads Senior ICs Junior TIES Positive tie Neutral tie
Engineering team influence mapping
Informal influence map of an engineering team showing tech leads, senior ICs, and junior members — reveals bridging nodes and isolated individuals.
business & operations

13. Feuille de route

Prévu — pas encore analysable. N'utilisez pas ces éléments dans le DSL généré aujourd'hui ; le parseur les rejettera ou les ignorera.

  • Mise en évidence automatique des cliques — enveloppe convexe ombrée dessinée autour des sous-groupes à choix mutuels d'au moins 3 membres.
  • Détection automatique des bridgesrole: bridge déduit de la centralité d'intermédiarité sans déclaration explicite.
  • Vue atome social — mise en page centrée sur l'ego où un nœud désigné est placé au centre.
  • Export de matrice de réciprocité — sortie de tableau structuré accompagnant le schéma.

Suivez les tickets GitHub si vous avez besoin de l'une de ces fonctionnalités plus tôt.

Found this useful?

Schematex is free, fully open source, and zero-dependency. A star helps other developers discover it.