Skip to content
GRAPHIC WALKER
Référence API
GraphicRenderer

GraphicRenderer

GraphicRenderer affiche des graphiques préconfigurés à partir de spécifications Graphic Walker. Il affiche les graphiques sans l'interface d'édition complète — les utilisateurs peuvent voir et interagir avec les graphiques mais ne peuvent pas modifier les encodages de champs.

import { GraphicRenderer } from '@kanaries/graphic-walker';

Quand l'utiliser

ComposantUtilisation
GraphicWalkerVous avez besoin de l'interface complète d'exploration par glisser-déposer
GraphicRendererVous souhaitez afficher des graphiques sauvegardés avec les contrôles de la barre d'outils visibles
PureRendererVous souhaitez un graphique minimal en lecture seule sans chrome d'interface

Props

GraphicRenderer accepte toutes les mêmes props que GraphicWalker, plus :

PropTypePar défautDescription
containerClassNamestringundefinedClasse CSS pour le conteneur du graphique.
containerStyleReact.CSSPropertiesundefinedStyles en ligne pour le conteneur du graphique.
overrideSize{ mode: 'auto' | 'fixed' | 'full'; width: number; height: number }undefinedRemplace la taille du graphique définie dans la spécification.

Toutes les props de données, d'apparence, d'i18n et de ref de GraphicWalker s'appliquent également ici.

Exemple

import { GraphicRenderer } from '@kanaries/graphic-walker';
import type { IChart } from '@kanaries/graphic-walker';
 
const savedCharts: IChart[] = [
  {
    visId: 'chart-1',
    name: 'Monthly Revenue',
    encodings: {
      dimensions: [],
      measures: [],
      rows: [{ fid: 'revenue', name: 'Revenue', analyticType: 'measure', semanticType: 'quantitative' }],
      columns: [{ fid: 'month', name: 'Month', analyticType: 'dimension', semanticType: 'temporal' }],
      color: [],
      opacity: [],
      size: [],
      shape: [],
      theta: [],
      radius: [],
      longitude: [],
      latitude: [],
      geoId: [],
      details: [],
      filters: [],
      text: [],
    },
    config: {
      defaultAggregated: true,
      geoms: ['line'],
      coordSystem: 'generic',
      limit: -1,
    },
    layout: {
      showTableSummary: false,
      stack: 'none',
      showActions: false,
      interactiveScale: true,
      zeroScale: true,
      size: { mode: 'auto', width: 800, height: 400 },
      format: {},
      resolve: {},
    },
  },
];
 
function Dashboard() {
  return (
    <GraphicRenderer
      data={data}
      fields={fields}
      chart={savedCharts}
      appearance="media"
    />
  );
}

Avec taille fixe

<GraphicRenderer
  data={data}
  fields={fields}
  chart={savedCharts}
  overrideSize={{ mode: 'fixed', width: 600, height: 400 }}
/>