PlotSet LogoPlotSet

How to Create a Chord Diagram

A step by step walkthrough for turning a source, target and value spreadsheet into a published chord diagram in PlotSet, from the three-column matrix to the ordering that keeps the ribbons readable.

Environ 9 minutes

A matrix of flows between entities is the starting point, and how to create a chord diagram in PlotSet from it, not the sample data that ships with the template, is what this guide covers. You will end up with entities arranged around a circle, ribbons sized to the amounts moving between them, and either a live embed with hover highlighting or a PNG, SVG or PDF you can drop into a deck. The click path is the same one a real PlotSet project follows from upload to publish.

If your data is already three columns, source, target and value, this takes about eight or nine minutes. Add another five if you are pulling the matrix out of a wider report or a pivot table, since that reshaping is the part people usually get stuck on before they ever open PlotSet.

Les données dont vous avez besoin

Three columns, one row per directed pair: source entity, target entity, and the amount flowing from source to target. Include a separate row for the reverse direction when the flows are not equal.

Exemple de CSV
SourceTargetGWh
NorwaySweden842
SwedenNorway613
SwedenFinland410
FinlandSweden295
SwedenDenmark378
DenmarkSweden201
DenmarkGermany530
GermanyDenmark344
NorwayDenmark156
DenmarkNorway98
Remarques

This is long format, not a wide matrix. If your source data looks like a grid with countries down the side and across the top, you need to unpivot it into source, target, value rows before uploading. A spreadsheet's UNPIVOT or a quick PIVOT-to-long formula handles this faster than retyping by hand.

A pair with flow in both directions needs two rows, one each way. Uploading only "Norway,Sweden,842" with nothing for the return trip renders as a one-way ribbon, which is fine if that is genuinely the case, but wrong if you just forgot the other row.

Keep the value column as plain numbers, no thousand separators and no currency symbols. A cell like "1,234" or "$1,234" sometimes imports as text rather than a number, and a text value cannot size a ribbon.

Rows where source and target are the same entity (a self-loop) do not draw a ribbon in a chord layout. Drop them before uploading rather than leaving them in as dead rows.

Les étapes

Le parcours exact dans PlotSet, d'un modèle vierge à un graphique terminé.

  1. 01

    Open the chord diagram template

    From the PlotSet dashboard, start a new project and choose the Chord Diagram template. It loads with sample data already bound, which is the fastest way to see the three-column shape, source, target, value, before you bring in your own file.

    Le sélecteur de modèles de PlotSet : les catégories de graphiques listées à gauche, la grille 'Bar Charts' ouverte et la carte du modèle 'Bar Chart' affichant son bouton 'Select'.
    Chaque guide commence ici. Choisissez la catégorie, puis le modèle : c'est la même grille quel que soit le type de graphique visé.
  2. 02

    Shape your sheet into source, target and value

    One row per directed pair. If a report gave you a wide matrix instead, with entities down the side and across the top, unpivot it into these three columns first. This is usually the slowest part of the whole process and the one worth doing carefully.

  3. 03

    Import the file or connect a sheet

    Import a CSV or .xlsx file from the data panel, paste rows directly, or connect a Google Sheet if you want the diagram to pick up new numbers later without a re-upload. PlotSet reads your first row as headers automatically.

    La vue données de l'éditeur PlotSet : une grille de tableur dont les colonnes 'Name', 'Value' et 'Region' sont remplies de chiffres par province canadienne, à côté du panneau 'Data' qui propose l'import d'un CSV, 'Magic Import' et la synchronisation d'une Google Sheet.
    La vue données, ici sur un projet de graphique en barres. Importez un CSV, extrayez les chiffres d'une image avec 'Magic Import' ou synchronisez une Google Sheet. Le panneau est identique pour tous les types de graphique.
  4. 04

    Map the source, target and value columns

    Confirm which column feeds each end of the ribbon and which one sets its width. PlotSet usually guesses correctly when your headers are named clearly, but check it manually if your sheet carries extra columns it might have picked up by mistake.

    Le panneau de données de PlotSet avec les associations de colonnes mises en évidence : 'Label/time' affecté à la colonne A, 'Values' à la colonne B et 'Filter/color' à la colonne C, et le bouton 'Auto Binding' juste en dessous.
    Les associations déterminent quelle colonne devient l'étiquette, laquelle fournit les valeurs et laquelle pilote la couleur. 'Auto Binding' les devine à partir de vos en-têtes : vérifiez-les plutôt que de les tenir pour acquises.
  5. 05

    Order the entities around the circle

    Drag entities in the editor so ones that trade heavily with each other sit next to each other, rather than leaving them in upload or alphabetical order. This single change does more to cut down crossing ribbons than any styling option.

  6. 06

    Aggregate anything too small to matter

    If a handful of entities carry almost no volume, group them into a single "Other" row in your source sheet before re-uploading. Thin ribbons from minor entities add visual noise without adding information, and removing them is usually what turns a knot into a readable diagram.

  7. 07

    Style the ribbons and turn on hover highlighting

    Ribbon colour is inherited from the source arc by default, which is the setting to keep so a reader can trace where a ribbon started. Turn on hover highlighting so pointing at one entity dims every ribbon except its own; this is what actually makes a dense chord diagram usable rather than decorative.

    L'éditeur PlotSet sur l'onglet 'Preview' : un graphique Chord Diagram terminé sur le canevas, avec le panneau de réglages entouré en rouge le long du bord droit.
    L'onglet 'Preview' pour un graphique Chord Diagram. Tous les réglages de style se trouvent dans le panneau entouré en rouge : apparence, en-tête, pied de page et les options propres à ce type de graphique, chacun dans un onglet distinct.
  8. 08

    Publish the diagram, embed it, or export it

    Publish for a live, interactive diagram with the hover highlighting intact and a shareable link, grab the embed code for a page on your own site, or export a static PNG, SVG or PDF if you need an image for a report.

Partez du modèle Chord Diagram avec des données d'exemple déjà chargées, puis remplacez-les par les vôtres.

Ouvrir le modèle

Publier, intégrer ou exporter

La dernière ligne droite est la même pour tous les types de graphique : 'Share' transforme le graphique en lien public actif et en code d'intégration, 'Export' l'enregistre sous forme de fichier statique.

Share : lien public et code d'intégration

Activer le code d'intégration et le lien public revient à publier le graphique. Le lien peut être envoyé à qui vous voulez sans risque, et le code d'intégration s'insère dans n'importe quelle page sous la forme d'une iframe qui conserve les infobulles au survol et l'interactivité. Si vous modifiez le graphique par la suite, cliquez sur 'Recreate' pour répercuter ces changements sur le lien comme sur le code.

La barre d'outils de l'éditeur PlotSet avec le bouton 'Share' mis en évidence, juste à côté du bouton 'Export'.
C'est par 'Share' qu'un graphique terminé devient un lien public et un code d'intégration.
La fenêtre 'Share' de PlotSet : l'interrupteur qui active le code d'intégration et le lien public, les boutons 'Link', 'Embed', Facebook, Reddit, Twitter, LinkedIn et Email, et le lien public du graphique avec un bouton 'Copy'.
Activez le code d'intégration et le lien public, puis copiez le lien ou récupérez l'iframe. 'Recreate' répercute vos modifications ultérieures sur le lien et le code déjà partagés.

Export : SVG, PNG ou JPG

Le bouton 'Export' génère une copie statique à la taille dont vous avez besoin. Le SVG reste net à toutes les échelles et peut encore être modifié dans un outil de design ; PNG et JPG sont les choix sûrs pour les présentations et les documents. C'est le multiplicateur d'échelle qui vous donne une image nette sur un écran retina.

La barre d'outils de l'éditeur PlotSet avec le bouton 'Export' mis en évidence.
C'est par 'Export' que vous obtenez un fichier statique pour une diapositive ou un rapport.
La fenêtre 'Export chart' de PlotSet : un sélecteur d'échelle réglé sur 2x, les champs de largeur et de hauteur à 1000 × 600, et le menu des formats ouvert, affichant SVG, PNG et JPG.
Le SVG reste net à toutes les tailles et modifiable dans un outil de design ; PNG et JPG sont les choix sûrs pour une présentation. Réglez l'échelle avant d'exporter pour que l'image soit nette sur un écran retina.

Conseils de style pour un Chord Diagram

Cluster before you sort

Ordering by total flow puts the busiest entities together automatically, but clustering by relationship, region, category, whatever groups things that actually trade with each other, usually cuts crossings further. Try both and keep whichever produces fewer ribbons crossing the centre.

Leave the gap between arcs alone unless it's cramped

The default spacing keeps each entity's total flow readable as an arc length. Shrinking the gap to fit more entities in usually backfires: past a point, the arcs blur into a single ring and the totals stop being legible at all.

Match your CSV's direction convention to how you read it

Decide once whether a row means "source sent to target" and stick to it across every row. Mixing conventions partway through a sheet, so one row means "exports" and the next means "imports", produces a diagram that is internally inconsistent even though every number in it is correct.

Name the aggregated bucket honestly

If you grouped a long tail of small entities into "Other", say so in the title or a caption. A reader who assumes "Other" is a real single entity will misread its arc as one busy participant rather than twelve quiet ones.

Erreurs courantes en créant un Chord Diagram

Every ribbon looks one-directional even though the real flows go both ways

This almost always means the sheet only had one row per pair. Check your source data for the return-direction row, Target back to Source, and add it if the underlying flow is genuinely asymmetric or reciprocal.

All the ribbons render the same width regardless of the numbers

The value column probably imported as text rather than a number, usually because a cell had a thousand separator, a currency symbol, or a trailing space. Strip formatting from the value column in your spreadsheet and re-upload.

The diagram is a solid knot of crossing ribbons

This is what happens past roughly fifteen entities, or with fewer entities left in upload order instead of clustered. Aggregate the smallest entities into an "Other" group and reorder the remaining ones so related entities sit adjacent on the circle.

En savoir plus sur le Chord Diagram

Vous n'êtes pas sûr que le Chord Diagram soit le bon choix ? Découvrez ce que c'est, quand l'utiliser et quand l'éviter.

À propos du Chord Diagram

Chord Diagram : questions fréquentes

Three columns in long format: source, target and value, with one row per directed pair. If your data currently sits in a wide matrix with entities down the side and across the top, unpivot it into these three columns before uploading.

Créez votre Chord Diagram maintenant

Gratuit pour commencer avec plus de 300 modèles. Aucune carte bancaire requise.