Skip to content
GRAPHIC WALKER
Anleitungen
Themes & Erscheinungsbild

Theming & Erscheinungsbild

Graphic Walker bietet mehrere Ebenen der visuellen Anpassung: Dark Mode, Diagramm-Rendering-Themes und vollstaendige UI-Farbanpassung.

Dark Mode

Steuern Sie den Dark Mode mit der appearance-Prop:

// Follow user's OS preference (default)
<GraphicWalker appearance="media" />
 
// Always light
<GraphicWalker appearance="light" />
 
// Always dark
<GraphicWalker appearance="dark" />

Diagramm-Themes

Die vizThemeConfig-Prop steuert, wie Diagramme gerendert werden. Waehlen Sie ein integriertes Theme oder uebergeben Sie ein benutzerdefiniertes Vega-Konfigurationsobjekt:

Integrierte Themes

ThemeBeschreibung
'vega'Standard-Vega-Lite-Theme
'g2'Von G2 (AntV) inspiriertes Theme
'streamlit'Von Streamlit inspiriertes Theme
<GraphicWalker vizThemeConfig="streamlit" data={data} fields={fields} />

Benutzerdefinierte Vega-Konfiguration

Uebergeben Sie ein vollstaendiges Vega/Vega-Lite-Konfigurationsobjekt fuer detaillierte Kontrolle ueber das Diagramm-Rendering:

const customTheme = {
  arc: { fill: '#4c78a8' },
  area: { fill: '#4c78a8' },
  bar: { fill: '#4c78a8' },
  line: { stroke: '#4c78a8' },
  point: { fill: '#4c78a8' },
  axis: {
    domainColor: '#888888',
    gridColor: '#e0e0e0',
    tickColor: '#888888',
  },
};
 
<GraphicWalker vizThemeConfig={customTheme} data={data} fields={fields} />

Benutzerdefinierte UI-Farben

Die uiTheme-Prop ermoeglicht es Ihnen, die UI-Elemente (Schaltflaechen, Panels, Text) getrennt vom Diagramm-Theme anzupassen. Sie akzeptiert ein IUIThemeConfig mit Farbsaetzen fuer sowohl hellen als auch dunklen Modus:

const uiTheme = {
  light: {
    background: '#ffffff',
    foreground: '#1a1a1a',
    primary: '#6366f1',
    'primary-foreground': '#ffffff',
    muted: '#f1f5f9',
    'muted-foreground': '#64748b',
    border: '#e2e8f0',
    ring: '#6366f1',
  },
  dark: {
    background: '#0f172a',
    foreground: '#f8fafc',
    primary: '#818cf8',
    'primary-foreground': '#0f172a',
    muted: '#1e293b',
    'muted-foreground': '#94a3b8',
    border: '#334155',
    ring: '#818cf8',
  },
};
 
<GraphicWalker uiTheme={uiTheme} data={data} fields={fields} />

Farbsatz-Eigenschaften

EigenschaftErforderlichBeschreibung
backgroundJaSeiten-/Komponenten-Hintergrundfarbe
foregroundJaPrimaere Textfarbe
primaryJaPrimaere Aktionsfarbe (Schaltflaechen, Links)
primary-foregroundJaText auf primaer gefaerbten Elementen
mutedJaGedaempfte Hintergruende (ausgewaehlte Elemente, Trennlinien)
muted-foregroundJaBeschreibungs-/Sekundaertextfarbe
borderJaRahmenfarbe fuer Container
ringJaFokusringfarbe
cardNeinKartenhintergrund (Standard: background)
card-foregroundNeinKartentextfarbe (Standard: foreground)
popoverNeinPopover-Hintergrund (Standard: background)
popover-foregroundNeinPopover-Textfarbe (Standard: foreground)
secondaryNeinSekundaerer Schaltflaechen-Hintergrund (Standard: muted)
secondary-foregroundNeinSekundaerer Schaltflaechentext (Standard: primary)
accentNeinHover-Zustand-Hintergrund (Standard: muted)
accent-foregroundNeinHover-Zustand-Text (Standard: primary)
destructiveNeinGefahr-/Loeschaktionsfarbe
destructive-foregroundNeinText auf destruktiven Elementen
dimensionNeinDimensionsfeld-Badge-Farbe
measureNeinMesswertfeld-Badge-Farbe
inputNeinEingabe-Rahmenfarbe (Standard: border)

Farbpaletten

Steuern Sie die in der Diagrammkodierung verwendete Farbpalette mit der Eigenschaft colorPalette in IVisualLayout, oder verwenden Sie die scales-Prop fuer kanalspezifische Steuerung.

Kategoriale Paletten

Fuer nominale Daten: accent, category10, category20, category20b, category20c, dark2, paired, pastel1, pastel2, set1, set2, set3, tableau10, tableau20

Sequentielle Einfarbton-Paletten

Fuer ansteigende quantitative Werte: blues, tealblues, teals, greens, browns, oranges, reds, purples, warmgreys, greys

Sequentielle Mehrfarbton-Paletten

Fuer quantitative Daten in Heatmaps: viridis, magma, inferno, plasma, cividis, turbo, bluegreen, bluepurple, goldgreen, goldorange, goldred, greenblue, orangered, purplebluegreen, purpleblue, purplered, redpurple, yellowgreenblue, yellowgreen, yelloworangebrown, yelloworangered, darkblue, darkgold, darkgreen, darkmulti, darkred, lightgreyred, lightgreyteal, lightmulti, lightorange, lighttealblue

Divergierende Paletten

Fuer Daten mit einem bedeutungsvollen Mittelpunkt: blueorange, brownbluegreen, purplegreen, pinkyellowgreen, purpleorange, redblue, redgrey, redyellowblue, redyellowgreen, spectral

Zyklische Paletten

Fuer periodische Muster: rainbow, sinebow

Beispiel fuer benutzerdefinierte Skalen

<GraphicWalker
  data={data}
  fields={fields}
  scales={{
    color: {
      scheme: 'tableau10',
    },
    size: {
      rangeMin: 10,
      rangeMax: 100,
    },
  }}
/>

Skalen koennen auch Funktionen sein, die Feldinformationen erhalten:

<GraphicWalker
  data={data}
  fields={fields}
  scales={{
    color: (info) => ({
      scheme: info.semanticType === 'nominal' ? 'tableau10' : 'viridis',
    }),
  }}
/>