Matrix / Quadrantendiagramm
Über Matrixdiagramme
Ein Matrixdiagramm platziert Elemente in einem zweidimensionalen Raum, der durch zwei sich kreuzende Achsen definiert wird – am häufigsten ein 2×2-Quadrantenraster – sodass die Position auf einen Blick Bedeutung vermittelt. Produktmanager verwenden die Eisenhower-Matrix, um dringende Arbeit von wichtiger Arbeit zu trennen; Strategieberater verwenden die BCG-Matrix, um Portfolio-Investitionen zuzuteilen; HR-Teams verwenden das 9-Box-Raster, um Leistung gegen Potenzial abzubilden. Die visuelle Konvention geht auf die Portfolioarbeit der Boston Consulting Group in den 1970er Jahren zurück und wurde durch Frameworks wie Ansoff, Johari und RICE erweitert.
Schematex unterstützt drei Matrix-Modi: quadrant (2×2- oder 3×3-Blasendiagramme mit beschrifteten Achsen), heatmap (N×M-farbige Zellenraster) und correlation (N×M-Punkt-Intensitätstabellen). Acht vorgefertigte Templates decken die gängigsten Frameworks ab, und alle Achsenbeschriftungen, Quadrantennamen und Punkteigenschaften sind vollständig anpassbar.
1. Ihre erste Matrix
Die kleinste nützliche Matrix: eine benutzerdefinierte 2×2 mit zwei beschrifteten Achsen und drei Punkten.
Vier Regeln decken 80 % der Anwendungsfälle ab:
- Beginnen Sie mit dem Schlüsselwort
matrix, optional gefolgt von einem Template-Namen oder einem zitierten Titel. - Legen Sie die Achsen mit
x-axis:undy-axis:fest – oder verwenden Sie ein eingebautes Template und überspringen Sie diesen Schritt. - Jeder Punkt ist
"Label" at (x, y), wobeixundyDezimalbrüche von 0.0 (niedrig/links/unten) bis 1.0 (hoch/rechts/oben) sind. - Fügen Sie optionale Eigenschaften hinzu –
size:,category:,color:,shape:,highlight:– nach den Koordinaten.
Kommentare müssen mit
#überall in einer Zeile beginnen (außerhalb von Zeichenfolgen in Anführungszeichen).
2. Eingebaute Templates
Ein Template konfiguriert Achsen, Quadrantenbeschriftungen und Rastergröße vor. Verwenden Sie einfach den Template-Namen als zweites Token in der Headerzeile.
| Template | Raster | Anwendungsfall |
|---|---|---|
eisenhower | 2×2 | Dringlichkeit / Wichtigkeit Aufgabenpriorisierung |
impact-effort | 2×2 | Feature-Priorisierung nach Auswirkung vs. Aufwand |
rice | 2×2 | RICE-Bewertung – Reichweite × Auswirkung vs. Aufwand |
bcg | 2×2 | Portfolio – Marktanteil vs. Wachstumsrate |
ansoff | 2×2 | Produkt-/Markt-Wachstumsstrategie |
johari | 2×2 | Selbstbewusstsein – bekannt an sich selbst vs. bekannt von anderen |
9-box | 3×3 | HR-Talentüberprüfung – Leistung vs. Potenzial |
risk-matrix | 5×5 | Risikobewertung – Wahrscheinlichkeit vs. Schweregrad (Heatmap) |
Achsen und Quadrantenbeschriftungen aus einem Template können mit expliziten x-axis: / y-axis: / quadrant-Direktiven überschrieben werden.
3. Achsen
Achsenzeilen deklarieren die semantischen Pole jeder Dimension.
x-axis: Low Effort → High Effort
y-axis: Low Value → High ValueDer Pfeil trennt das niedrige Label (links / unten) vom hohen Label (rechts / oben). Alle folgenden Trennzeichen sind gleichwertig:
| Trennzeichen | Beispiel |
|---|---|
→ (Unicode) | x-axis: Rare → Certain |
-> (ASCII) | x-axis: Rare -> Certain |
↑ | y-axis: Cheap ↑ Expensive |
← / <- / < | Umgekehrte Achse – hohes Label ist links |
Eine umgekehrte Achse ist für Konventionen gedacht, bei denen der „hohe" Wert links oder unten sitzt:
x-axis: High Market Share ← Low Market Share4. Punkte
Jeder Punkt ist eine Blase, die durch ein normalisiertes (x, y)-Koordinatenpaar positioniert wird.
"Label" at (x, y)
"Label" at (x, y) size: 4 category: design color: #7B1FA2 highlight: true note: "clarify spec"| Eigenschaft | Werte | Bedeutung |
|---|---|---|
size: | positive Zahl | Blasenflächengewicht (Standard: 3) |
category: | einfaches Wort | Farbgruppe; treibt die Legende |
color: | Hex-Zeichenfolge | Blasenfarbe für diesen Punkt überschreiben |
shape: | circle | square | triangle | diamond | Blasenform (Standard: circle) |
highlight: | true | Zeichnet einen Betonungsring um die Blase |
note: | Zeichenfolge in Anführungszeichen | Tooltip-Annotation |
label: | Zeichenfolge in Anführungszeichen | Ersetzt das Anzeigelabel (unterschiedlich von der ID) |
Koordinaten außerhalb [0, 1] werden an die Diagrammgrenze abgeschnitten und mit einem Badge markiert – der ursprüngliche Wert wird für die Tooltip-Anzeige gespeichert.
5. Quadrantenbeschriftungen
Beschriften Sie jeden Quadranten mit einem Namen und einem optionalen Untertitel.
quadrant Q1 "Do First"
quadrant Q2 "Schedule"
quadrant Q3 "Delete"
quadrant Q4 "Delegate"
# Mit einem optionalen Untertitel:
quadrant Q1 "Do First" description: "High urgency, high importance"Die Quadrantennummerierung folgt der mathematischen Standardkonvention: Q1 = oben rechts, Q2 = oben links, Q3 = unten links, Q4 = unten rechts. Das Q-Präfix ist optional – quadrant 1 "Label" ist gleichermaßen gültig.
6. Heatmap-Modus
Der Heatmap-Modus füllt N×M-Zellen mit Farbintensität anstatt Blasenpositionen zu zeichnen.
matrix heatmap 4x3 "Skill Matrix"
rows: [Strategy, Execution, Communication, Technical]
cols: [Junior, Mid, Senior]
cell (0,0) level: weak
cell (1,0) level: medium
cell (2,0) level: strong
cell (0,1) value: 7
cell (1,2) label: "Top 10%"matrix heatmap SPALTExZEILE— Header setzt die Rasterdimensionen.rows:undcols:— durch Kommas getrennte oder in eckigen Klammern eingeschlossene Achsenbeschriftungen.cell (Spalte, Zeile)— nullbasiert, zuerst Spalte, dann Zeile (Zeile 0 = unten).level:—strong(3),medium(2) oderweak(1) – Kurzschreibweise für Wärmeintensität.value:— expliziter numerischer Wert (überschreibtlevel:).label:— zitierter Text, der in die Zelle platziert wird.
7. Korrelationsmodus
Der Korrelationsmodus rendert eine N×M-Punktmatrix, bei der die Intensität die Beziehungsstärke zwischen Zeilen- und Spaltenvariablen darstellt.
matrix correlation 4x4 "Product Metrics"
rows: [DAU, Retention, Revenue, NPS]
cols: [DAU, Retention, Revenue, NPS]
cell (0,0) value: 1
cell (1,0) value: 0.82
cell (2,0) value: 0.54
cell (3,0) value: 0.71Dieselbe cell-Syntax gilt. level: strong | medium | weak wird im Korrelationsmodus ebenfalls akzeptiert.
8. SIPOC-Modus
Ein SIPOC ist die einseitige Gliederungstabelle, die die Define-Phase eines Six-Sigma-DMAIC-Projekts eröffnet. Sie benennt, in fünf festen Spalten von links nach rechts, alle Beteiligten und alles, was den Prozess berührt: Suppliers · Inputs · Process · Outputs · Customers. Bevor ein Team irgendetwas misst oder verbessert, legt SIPOC die Grenze fest – „wo beginnt dieser Prozess, wo endet er, und wer liefert Arbeit hinein und heraus."
matrix sipoc "Order fulfilment"
suppliers: "Vendor", "Warehouse"
inputs: "PO", "Stock levels"
process: "Receive order", "Pick", "Pack", "Ship"
outputs: "Shipped package", "Invoice"
customers: "End customer", "Finance"- Beginnen Sie mit
matrix sipoc, optional gefolgt von einem zitierten Titel. - Jede der fünf Spalten ist eine eigene Direktive:
suppliers:,inputs:,process:,outputs:,customers:. - Nach dem Doppelpunkt listen Sie die Einträge als durch Kommas getrennte Zeichenfolgen in Anführungszeichen auf. Eine Spalte kann beliebig viele Einträge haben; die Zeilen stapeln sich einfach von oben nach unten innerhalb dieser Spalte.
- Die
process:-Spalte ist die übergeordnete Schrittsequenz (typischerweise 4–7 Schritte) – halten Sie sie auf die Hauptstufen beschränkt, kein detailliertes Flussdiagramm.
Die fünf Spalten werden immer in der kanonischen S-I-P-O-C-Reihenfolge gerendert, unabhängig von der Reihenfolge, in der Sie sie deklarieren, sodass das Diagramm korrekt lesbar ist, auch wenn ein LLM die Blöcke in falscher Reihenfolge ausgibt.
9. QFD-Modus (House of Quality)
Quality Function Deployment (QFD) — das House of Quality, eingeführt von Yoji Akao — übersetzt Kundenwünsche in die Ingenieurmerkmale, die sie erfüllen. Zeilen sind die WHATs (Kundenanforderungen, jede mit einem Wichtigkeitsgewicht); Spalten sind die HOWs (die messbaren Ingenieurmerkmale, die das Team kontrolliert). Der Körper des Rasters erfasst, wie stark jedes HOW jedem WHAT dient.
Das Unterscheidungsmerkmal: die Engine berechnet die untere Zeile für Sie. Die technische Wichtigkeit jedes HOW ist die Summe seiner Spalte aus Gewicht × Beziehungsstärke – eine gerangte Antwort auf die Frage „welches Ingenieurmerkmal bewegt den meisten Kundenwert und ist daher den meisten Aufwand wert." Und das Dach des Hauses – eine Halbmatrix aus Rautenzellen über den Spalten – erfasst, ob sich zwei HOWs gegenseitig helfen oder behindern.
matrix qfd "Coffee maker"
what: "Quiet operation" weight: 5
what: "Brews fast" weight: 3
what: "Energy efficient" weight: 4
how: "Fan RPM" dir: down
how: "Heater watts" dir: up
how: "Insulation" dir: up
rel (0,0): 9
rel (0,2): 3
rel (1,1): 9
rel (2,1): 3
rel (2,2): 9
roof (0,1): --
roof (1,2): +WHATs und HOWs
| Direktive | Form | Bedeutung |
|---|---|---|
what: | what: "Label" weight: N | Eine Kundenanforderung (eine Zeile). weight: ist ihre Wichtigkeit, konventionell 1–5. Die Deklarationsreihenfolge ist die Zeilenreihenfolge, ab 0 indiziert. |
how: | how: "Label" dir: up|down | Ein Ingenieurmerkmal (eine Spalte). Die Deklarationsreihenfolge ist die Spaltenreihenfolge, ab 0 indiziert. dir: ist das Optimierungsziel – up = mehr ist besser, down = weniger ist besser. |
Beziehungszellen
rel (i, j): Stärke erfasst, wie stark HOW der Spalte j WHAT der Zeile i dient. Der Index ist (Zeile, Spalte), beide nullbasiert.
| Stärke | Bedeutung |
|---|---|
9 | Starke Beziehung |
3 | Mittlere Beziehung |
1 | Schwache Beziehung |
| (weggelassen) | Keine Beziehung – Zelle weglassen |
Die Skala 9 / 3 / 1 ist die QFD-Konvention: sie ist bewusst nicht-linear, sodass eine starke Verbindung mehrere schwache überwiegt, wenn die Wichtigkeitszeile summiert wird.
Berechnete technische Wichtigkeitszeile
Die Engine summiert jede Spalte, um die technische Wichtigkeitszeile am Fuß des Hauses zu erstellen:
importance(j) = Σ über Zeilen i ( weight(i) × strength(i, j) )Für das Kaffeemaschinen-Beispiel berechnet sich die Zeile zu 45 / 39 / 51 — Isolierung (51) ist das Merkmal mit dem höchsten Hebelwert, Heizerwatts (39) das mit dem niedrigsten. Diese Rangordnung ist das Lieferergebnis: Sie sagt dem Team, wo es technischen Aufwand einsetzen soll.
Fügen Sie normalize: true (in einer eigenen Zeile, überall im Block) hinzu, um jede Spalte als Prozentsatz der Gesamtsumme anstatt einer Rohsumme anzuzeigen – für dieses Beispiel 33% / 29% / 38%. Prozentwerte machen die relativen Prioritäten bei sehr unterschiedlichen Gewichtsskalen leichter lesbar.
Das Dach — HOW × HOW-Korrelationen
Das Dach ist die dreieckige Halbmatrix über den Spalten. roof (i, j): Glyph erfasst, ob HOW i und HOW j sich gegenseitig verstärken oder behindern – die Synergien und Kompromisse, die ein Team in Einklang bringen muss.
| Glyph | Korrelation |
|---|---|
++ | Stark positiv – Verbesserung des einen hilft dem anderen stark |
+ | Positiv |
- | Negativ |
-- | Stark negativ – Verbesserung des einen schadet dem anderen (ein Kompromiss) |
| (weggelassen) | Keine Korrelation – Zelle weglassen |
Jeder Dacheintrag wird als Rautenzelle im standardmäßigen QFD-Giebeldach-Raster gerendert. Im Beispiel markiert roof (0,1): --, dass das Drücken des Fan-RPM nach unten bei gleichzeitigem Drücken der Heizerwatts nach oben ein Kompromiss ist, und roof (1,2): + markiert, dass Heizerwatts und Isolierung sich gegenseitig verstärken.
10. Punnett-Modus (Mendelsche Genetik)
Ein Punnett-Quadrat sagt die Nachkommen einer genetischen Kreuzung voraus. Sie schreiben nur die zwei elterlichen Genotypen; die Engine übernimmt die Mendelsche Buchführung – sie zählt die Gameten jedes Elternteils auf (ein Allel pro Genlocus), füllt das Raster mit jeder Gametenkombination und berechnet die Genotyp- und Phänotypverhältnisse. Der Benutzer füllt das Raster nie selbst.
matrix punnett "Eye color (Bb × Bb)"
cross: Bb x Bb
trait B: "Brown eyes" / "Blue eyes"Die Kreuzung
| Direktive | Form | Bedeutung |
|---|---|---|
cross: | cross: Bb x Bb | Die zwei elterlichen Genotypen, durch x, × oder * getrennt. parents: ist ein akzeptierter Alias. |
trait: | trait B: "Dominant" / "Recessive" | (optional) Benennt die zwei Phänotypen für Gen B, damit die Legende in einfachem Englisch statt B_ / bb lesbar ist. |
Allelschreibweise setzt Dominanz – dies ist die Standard-Genetikkonvention. Ein Großbuchstabe ist das dominante Allel, der entsprechende Kleinbuchstabe ist rezessiv. Ein Genotyp gruppiert Allele nach Buchstaben: RrYy hat zwei Loci, R/r (rund/faltig) und Y/y (gelb/grün). Ein Gen ist eine monohybride Kreuzung (2×2-Raster), zwei Gene eine dihybride (4×4), drei eine trihybride (8×8).
Berechnete Verhältnisse (das Unterscheidungsmerkmal)
Die Engine leitet aus den Genotypen allein ab:
- die Gameten jedes Elternteils – die Spalten- und Zeilenköpfe – indem ein Allel pro Locus genommen wird (sodass ein Heterozygot
BbBundbergibt); - das Nachkommengitter – jede Gametenpaarung, geschrieben mit dominantem Allel zuerst (
Bb, niebB); - das Phänotypverhältnis – Boxen, gruppiert nach dem Phänotyp, den sie ausdrücken, auf den kleinsten Term reduziert. Eine monohybride
Bb × Bbergibt das klassische 3:1; eine dihybrideRrYy × RrYyergibt das berühmte 9:3:3:1; - das Genotypverhältnis – z. B.
1:2:1(1 BB, 2 Bb, 1 bb) für den Monohybriden.
Jede Box ist nach ihrer Phänotypklasse eingefärbt, und die Fußzeile listet das Phänotypverhältnis mit einer Legende plus dem Genotypverhältnis auf.
11. Konfigurationsoptionen
Ein config:-Block optimiert das visuelle Rendering. Jede Option steht in einer eigenen eingerückten Zeile unterhalb des config:-Headers.
config:
quadrantBg: true
gridLines: true
axisArrows: true
bubbleScale: area
legendPosition: bottom-right| Schlüssel | Werte | Standard | Wirkung |
|---|---|---|---|
quadrantBg | true | false | true | Farbige Quadrantenhintergrundfüllungen |
gridLines | true | false | true | Gitterlinien-Overlay |
axisArrows | true | false | true | Pfeile an Achsenenden |
bubbleScale | area | radius | area | Ob size: die Blasenfläche oder den Radius skaliert |
quadrantAnnotations | true | false | true | Quadrantenbeschriftungstext in Ecken anzeigen |
legendPosition | bottom-right | right | bottom-center | none | bottom-right | Platzierung der Kategorielegende |
labelCollision | auto | offset-only | leader-only | off | auto | Überlappungsvermeidungsstrategie für Punktbeschriftungen |
offChartPolicy | clamp-badge | drop | clamp-badge | Was mit Punkten außerhalb [0,1] geschehen soll |
Zwei Kurzdirektiven funktionieren auch auf oberster Ebene (nicht im config:-Block):
axis: off # off | on | auto — Achsenlinien anzeigen oder ausblenden
margins: true # true | false — Score + Rank-Ränder anzeigen (Korrelationsmodus)12. Labels und Kommentare
- Titel:
matrix "Mein Titel"odertitle: Mein Titelals eigenständige Zeile. - Punktlabel: die zitierte Zeichenfolge vor
at (…). - Achsenbeschriftungen:
x-axis:- undy-axis:-Direktiven. - Quadrantenbeschriftungen:
quadrant Q1 "Name"-Direktive. - Kommentare:
#überall in einer Zeile, außerhalb zitierter Zeichenfolgen.
matrix "Prioritization"
# Dies ist ein Kommentar
x-axis: Low Cost → High Cost # Inline-Kommentar nach einer Direktive
"Fix bug" at (0.1, 0.9) size: 3 # Kommentar nach einem Punkt13. Tabellenmodus (style: table)
Das Standard-Matrix-Rendering ist ein Streu- / Blasendiagramm – Punkte schweben bei (x, y)-Koordinaten. Für Frameworks, bei denen die Ausgabe eine Liste von Elementen ist, gruppiert nach Quadranten (Eisenhower, Johari, Impact-Effort, 9-Box), verwenden Sie style: table, um stattdessen zu einem Text-in-Zelle-Layout zu wechseln.
matrix eisenhower "This Week"
style: table
Q2: "Ship hotfix"
Q2: "Customer demo prep"
Q1: "Write Q3 OKRs"
Q1: "Refactor auth layer"
Q4: "LinkedIn updates"
Q3: "Reorganize Slack channels"style: table wendet diese Änderungen automatisch an:
| Wirkung | Detail |
|---|---|
| Achsen und Pfeile ausgeblendet | Keine Achsenlinien, Beschriftungen oder Pfeilspitzen |
| Gitterlinien ausgeblendet | Nur der äußere Rahmen und Zellentrennlinien bleiben |
| Quadrantentitel in Zellen verschoben | Jeder Titel wird ein Zellenheader statt eines Ecken-Overlays |
| Elemente als Aufzählungsliste gestapelt | Mehrere Einträge für denselben Quadranten stapeln sich von oben nach unten |
Q1 … Q4-Kurzschreibweise (nur 2×2)
Für 2×2-Templates verwenden Sie Qn: "Element" anstelle der längeren cell (Spalte, Zeile) label: "Element"-Form. Zuordnung:
| Kurzschreibweise | Zelle | Eisenhower | Johari |
|---|---|---|---|
Q1: | oben rechts | Schedule | Blind |
Q2: | oben links | Do First | Open / Arena |
Q3: | unten links | Delete | Hidden / Façade |
Q4: | unten rechts | Delegate | Unknown |
Wiederholen Sie einen Kurzschreibweiseschlüssel, um mehrere Elemente zur selben Zelle hinzuzufügen:
Q2: "Ship hotfix"
Q2: "Customer demo prep"Für 3×3-Raster (9-Box) verwenden Sie direkt cell (Spalte, Zeile) label: "…" – die Q-Kurzschreibweise ist nur für 2×2.
Wann Tabelle vs. Streu verwenden
style: table verwenden für | Streu (Standard) verwenden für |
|---|---|
| Eisenhower mit Aufgabenlisten | Eisenhower mit size:-Aufwandsgewichten |
| Johari-Window-Coaching | Impact-Effort mit Blase = Umsatz |
| Backlog-Gruppierung (kein numerischer dritter Dimension) | RICE / BCG-Portfolio (dritte Dimension IST die Blasengröße) |
| 9-Box-Talentüberprüfung | Risiko-Heatmap (5×5 mit numerischem Schweregrad) |
14. Reservierte Wörter und Escaping
Am Zeilenanfang reserviert: matrix (Header), x-axis:, y-axis:, quadrant, config:, title:, rows:, cols:, grid:, axis:, margins:, cell. Im SIPOC-Modus: suppliers:, inputs:, process:, outputs:, customers:. Im QFD-Modus: what:, how:, rel, roof, normalize:.
Punktzeilen müssen mit einem Anführungszeichen beginnen (" oder '). Eine Zeile, die nicht mit einem Anführungszeichen beginnt, wird nicht als Punkt behandelt.
Zeichenfolgen mit Leerzeichen in Achsenbeschriftungen müssen nicht in Anführungszeichen gesetzt werden – der Text nach dem Doppelpunkt (und nach dem Pfeil) wird wörtlich übernommen. In note:- und label:-Punkteigenschaften verwenden Sie doppelte Anführungszeichen.
15. Häufige Fehler
| Sie schrieben | Parser meldet | Behebung |
|---|---|---|
"Fix bug" at (1, 2) | Punkt geparst; x=1 abgeschnitten, y=1 abgeschnitten; Off-Chart-Badge angezeigt | Halten Sie Koordinaten in [0.0, 1.0] oder akzeptieren Sie das Abschneiden-Badge |
quadrant 1 "Quick Wins" (kein Q-Präfix) | Akzeptiert – Q-Präfix ist optional | Sowohl quadrant 1 als auch quadrant Q1 funktionieren |
config: gridLines: false (in derselben Zeile) | Nur config:-Schlüsselwort erkannt; gridLines: false still ignoriert | Setzen Sie Optionen in eigene eingerückte Zeilen unterhalb von config: |
x-axis: "Low" → "High" (Beschriftungen in Anführungszeichen) | Pfeil nicht innerhalb der Anführungszeichen gefunden – als Klartext behandelt | Anführungszeichen entfernen: x-axis: Low → High |
matrix heatmap ohne Dimensionen | Standard 2×2; rows/cols-Direktiven setzen die tatsächliche Größe | Geben Sie Dimensionen im Header an: matrix heatmap 4x4 |
cell (0, 0) level: Strong (Großbuchstabe S) | level-Abgleich ist Groß-/Kleinschreibung-unabhängig – akzeptiert | Sowohl strong als auch Strong funktionieren |
shape: oval | Unbekannter Formwert – still ignoriert | Verwenden Sie circle, square, triangle oder diamond |
"Fix bug" at (0.1, 0.9) auf einem Eisenhower mit einer Aufgabenliste | Gültiger Streupunkt – aber Sie wollten wahrscheinlich eine Liste in einer Zelle | Fügen Sie style: table hinzu und verwenden Sie stattdessen Q2: "Fix bug" |
Q1: "item" auf einem 3×3-Template | Q-Kurzschreibweise wird als Punktzeile geparst – still verworfen | Verwenden Sie cell (Spalte, Zeile) label: "item" für 3×3-Raster |
16. Grammatik (EBNF)
document = header directive*
header = "matrix" ( template-name | mode-header | title )? NEWLINE
template-name = "eisenhower"|"impact-effort"|"rice"|"bcg"|"ansoff"|"johari"|"9-box"|"risk-matrix"
mode-header = ( "heatmap" | "correlation" ) ( number "x" number )? title?
| ( "sipoc" | "qfd" | "punnett" ) title?
title = quoted-string | bare-text
directive = x-axis | y-axis | quadrant-dir | config-block
| point | cell | q-short | rows-dir | cols-dir | grid-dir
| style-dir | title-dir | axis-dir | margins-dir
| sipoc-col | qfd-what | qfd-how | qfd-rel | qfd-roof | normalize-dir
| punnett-cross | punnett-trait
| comment | blank
# SIPOC mode
sipoc-col = ( "suppliers:" | "inputs:" | "process:" | "outputs:" | "customers:" )
WS quoted-string ( "," quoted-string )* NEWLINE
# QFD / House of Quality mode
qfd-what = "what:" WS quoted-string WS "weight:" number NEWLINE
qfd-how = "how:" WS quoted-string ( WS "dir:" ( "up" | "down" ) )? NEWLINE
qfd-rel = "rel" WS "(" number "," number ")" ":" WS ( "9" | "3" | "1" ) NEWLINE # (row, col)
qfd-roof = "roof" WS "(" number "," number ")" ":" WS ( "++" | "+" | "-" | "--" ) NEWLINE # (how, how)
normalize-dir = "normalize:" WS "true" NEWLINE
# Punnett (Mendelian genetics) mode
punnett-cross = ( "cross:" | "parents:" ) WS genotype WS ( "x" | "×" | "*" ) WS genotype NEWLINE
punnett-trait = "trait" WS letter ":" WS quoted-string WS "/" WS quoted-string NEWLINE # dominant / recessive
genotype = ( letter letter )+ # allele pairs grouped by letter; case = dominance, e.g. "RrYy"
x-axis = "x-axis:" WS axis-spec NEWLINE
y-axis = "y-axis:" WS axis-spec NEWLINE
axis-spec = text arrow text | text # plain text → high label only
arrow = "→" | "->" | "↑" | "←" | "<-" | "<" | "↓"
quadrant-dir = "quadrant" WS "Q"? digit WS quoted-string ( WS "description:" quoted-string )? NEWLINE
config-block = "config:" NEWLINE ( INDENT key ":" WS value NEWLINE )*
point = quoted-string WS "at" WS "(" number "," number ")" ( WS point-prop )* NEWLINE
point-prop = "size:" number
| "category:" bareword
| "color:" hex-color
| "shape:" ( "circle"|"square"|"triangle"|"diamond" )
| "highlight:" "true"
| "note:" quoted-string
| "label:" quoted-string
cell = "cell" WS "(" digit "," digit ")" ( WS cell-prop )* NEWLINE
cell-prop = "value:" number
| "label:" quoted-string
| "level:" ( "strong" | "medium" | "weak" )
style-dir = "style:" WS "table" NEWLINE
q-short = "Q" ( "1" | "2" | "3" | "4" ) ":" WS quoted-string NEWLINE # 2×2 only
rows-dir = "rows:" WS label-list NEWLINE
cols-dir = "cols:" WS label-list NEWLINE
grid-dir = "grid:" WS number "x" number NEWLINE
axis-dir = "axis:" WS ( "off" | "on" | "auto" ) NEWLINE
margins-dir = "margins:" WS ( "true" | "false" | "on" | "1" ) NEWLINE
label-list = "[" text ("," text)* "]" | text ("," text)*
quoted-string = '"' any-char-but-quote* '"' | "'" any-char-but-quote* "'"
comment = "#" any NEWLINEMaßgebliche Quelle: src/diagrams/matrix/parser.ts. Wenn dies vom Parser abweicht, hat der Parser Vorrang – bitte öffnen Sie ein Issue.
17. Standardkonformität
Schematex-Matrixdiagramme implementieren die Standard-2×2-Quadrantenkonvention der Boston Consulting Group (1970), der Eisenhower-Entscheidungsmatrix, der Ansoff-Wachstumsmatrix und des Johari-Window-Frameworks. Das 9-Box-Raster folgt der McKinsey/GE-Talentüberprüfungs-Konvention (3×3, Leistung × Potenzial). Heatmap- und Korrelationsmodi folgen keinem benannten externen Standard, verwenden jedoch die universelle Zellenintensitätskodierung, die in Tools wie der bedingten Formatierung von Excel und R's corrplot zu finden ist.
Was heute implementiert ist:
- ✅ 2×2-Quadrantenmodus mit benutzerdefinierten Achsen und Quadrantenbeschriftungen
- ✅ 3×3-Quadrantenmodus (
9-box-Template) - ✅ N×M-Heatmap-Modus mit
level:- undvalue:-Zellen - ✅ N×M-Korrelationsmodus
- ✅ SIPOC-Modus — fünfspaltige Lieferanten · Eingaben · Prozess · Ausgaben · Kunden-Gliederungstabelle (Six Sigma DMAIC Define)
- ✅ QFD / House of Quality-Modus — WHATs × HOWs-Raster, 9 / 3 / 1-Beziehungsskala, berechnete technische Wichtigkeitszeile (mit
normalize: true-Prozentwerten) und das HOW × HOW-Korrelationsdach (++/+/-/--) - ✅ Punnett-Modus — Mendelsche Kreuzung aus zwei elterlichen Genotypen; die Engine berechnet die Gameten, das Nachkommengitter und die Genotyp- + Phänotypverhältnisse (monohybrid 3:1, dihybrid 9:3:3:1); Allelschreibweise = Dominanz; optionale
trait-Phänotypnamen; Mono-/Di-/Trihybrid (2×2 / 4×4 / 8×8) - ✅ Acht eingebaute Templates (eisenhower, impact-effort, rice, bcg, ansoff, johari, 9-box, risk-matrix)
- ✅ Punkteigenschaften: size, category, color, shape, highlight, note
- ✅ Umgekehrte Achsen (
←/<-) - ✅ Config-Block (quadrantBg, gridLines, axisArrows, bubbleScale, legendPosition, labelCollision, offChartPolicy)
- ✅
style: table— Text-in-Zelle-Layout mitQ1…Q4-Kurzschreibweise (2×2) und gestapelten Aufzählungslisten - ⏳
label:-Überschreibung für Punkte (geparst, Renderer-Unterstützung ausstehend) - ⏳ Off-Chart-
drop-Richtlinie (geparst, Renderer schneidet heute immer ab und zeigt Badge) - ⏳
margins:-Korrelations-Score/Rank-Seitenleiste (geparst, noch nicht gerendert)
Referenzen:
- Henderson, B. (1970). The Product Portfolio. Boston Consulting Group.
- Covey, S. (1989). The 7 Habits of Highly Effective People. (Eisenhower-Matrix-Popularisierung)
- Ansoff, H.I. (1957). "Strategies for Diversification." Harvard Business Review.
- Akao, Y. (1990). Quality Function Deployment: Integrating Customer Requirements into Product Design. Productivity Press. (House of Quality)
- Pyzdek, T. & Keller, P. (2018). The Six Sigma Handbook (5. Aufl.). McGraw-Hill. (SIPOC in DMAIC Define)
- Punnett, R.C. (1905). Mendelism. Macmillan. (das Punnett-Quadrat); Mendel, G. (1866). "Versuche über Pflanzenhybriden."
18. Roadmap
Geplant – noch nicht parsebar. Verwenden Sie diese heute nicht in generiertem DSL; der Parser wird sie ablehnen oder ignorieren.
- Schwimmbahn-/Zonen-Overlays — benannte rechteckige Hervorhebungsregionen, die hinter dem Raster gezeichnet werden.
- Schwellenwertlinien — horizontale oder vertikale Referenzlinien mit Beschriftungen (z. B. „Break-even"-Linie).
- Blasenbeschriftungen innen — Option, das Punktlabel innerhalb der Blase statt daneben zu drucken.
- Export als Tabelle — strukturierter CSV / JSON-Ausgabe neben dem SVG für den Tabellenkalkulationsimport.
- 4×4 und benutzerdefinierter Beschriftungs-Quadrantenmodus — beliebiges NxM mit beschrifteten Zellen im Quadranten- (Blasendiagramm-) Modus, nicht nur Heatmap.
Verfolgen Sie den Fortschritt in den GitHub-Issues, wenn Sie eines davon früher benötigen.
Verwandte Beispiele
Sofort einsatzbereite Szenarien aus der Beispielgalerie:
Found this useful?
Schematex is free, fully open source, and zero-dependency. A star helps other developers discover it.