Skip to content
GRAPHIC WALKER
Anleitungen
Geografische Visualisierung

Geografische Visualisierung

Graphic Walker unterstuetzt zwei Arten von geografischen Visualisierungen: Choroplethenkarten (eingefaerbte Regionen) und Punktkarten (Markierungen an Koordinaten). Beide erfordern die Einstellung des Koordinatensystems auf 'geographic'.

Choroplethenkarten

Choroplethenkarten faerben geografische Regionen basierend auf Datenwerten ein. Sie benoetigen:

  1. Eine GeoJSON- oder TopoJSON-Datei, die Regionsgrenzen definiert
  2. Ein Feld in Ihren Daten, das mit Regions-IDs in den Geodaten uebereinstimmt

Verwendung der geographicData-Prop

Uebergeben Sie geografische Daten direkt:

import { GraphicWalker } from '@kanaries/graphic-walker';
 
const geoData = await fetch('/us-states.geojson').then(r => r.json());
 
<GraphicWalker
  data={salesByState}
  fields={fields}
  geographicData={{
    type: 'GeoJSON',
    data: geoData,
    key: 'name',  // property in GeoJSON features to match against
  }}
/>

Setzen Sie in der Diagrammkonfiguration coordSystem: 'geographic' und geoms: ['choropleth'], ziehen Sie dann das Bundesland-Feld in den geoId-Kanal und einen Messwert in den color-Kanal.

Verwendung der geoList-Prop

Stellen Sie eine Liste geografischer Datensaetze bereit, aus denen Benutzer in der Benutzeroberflaeche waehlen koennen:

<GraphicWalker
  data={data}
  fields={fields}
  geoList={[
    {
      type: 'GeoJSON',
      name: 'US States',
      url: 'https://example.com/us-states.geojson',
    },
    {
      type: 'TopoJSON',
      name: 'World Countries',
      url: 'https://example.com/world-110m.json',
    },
  ]}
/>

TopoJSON-Unterstuetzung

TopoJSON-Dateien sind kompakter als GeoJSON. Geben Sie den objectKey an, um auszuwaehlen, welche Ebene verwendet werden soll:

<GraphicWalker
  data={data}
  fields={fields}
  geographicData={{
    type: 'TopoJSON',
    data: topoData,
    key: 'id',
    objectKey: 'countries',  // defaults to the first key in topology.objects
  }}
/>

Punktkarten (POI)

Punktkarten zeigen Daten als Markierungen an geografischen Koordinaten an. Ihre Daten benoetigen Laengen- und Breitengradfelder.

Setzen Sie in der Diagrammkonfiguration coordSystem: 'geographic' und geoms: ['poi'], und kodieren Sie dann Laengen- und Breitengradfelder in die entsprechenden Kanaele.

const data = [
  { city: 'New York', lng: -74.006, lat: 40.7128, population: 8336817 },
  { city: 'Los Angeles', lng: -118.2437, lat: 34.0522, population: 3979576 },
];
 
const fields = [
  { fid: 'city', name: 'City', semanticType: 'nominal', analyticType: 'dimension' },
  { fid: 'lng', name: 'Longitude', semanticType: 'quantitative', analyticType: 'dimension' },
  { fid: 'lat', name: 'Latitude', semanticType: 'quantitative', analyticType: 'dimension' },
  { fid: 'population', name: 'Population', semanticType: 'quantitative', analyticType: 'measure' },
];

Benutzerdefinierte Kartenkacheln

Passen Sie die Basiskartenkachel-URL ueber die Eigenschaft geoMapTileUrl in IVisualLayout an:

<GraphicWalker
  data={data}
  fields={fields}
  defaultConfig={{
    layout: {
      geoMapTileUrl: 'https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png',
    },
  }}
/>

Layout-Optionen fuer Karten

EigenschaftTypBeschreibung
scaleIncludeUnmatchedChoroplethbooleanNicht uebereinstimmende Regionen in die Farbskala einbeziehen
showAllGeoshapeInChoroplethbooleanAlle geografischen Formen anzeigen, auch ohne uebereinstimmende Daten
geoMapTileUrlstringBenutzerdefinierte Kartenkachel-URL-Vorlage
geoUrl{ type: 'GeoJSON' | 'TopoJSON'; url: string }URL zum Laden geografischer Daten
geoKeystringEigenschaftsschluessel zum Abgleich von Daten mit Features