PlotSet LogoPlotSet

视频模板

Animated Swarm Plot Maker

Turn a spreadsheet of values over time into an animated swarm plot: circles drift along an axis and nudge each other apart as your data moves, so the whole distribution stays visible instead of just the top few. Upload a CSV, pick your columns, export an MP4.

预览即将推出

Swarm Plotanimated swarm plot

什么是 Swarm Plot?

Four countries sit at different points on an axis (Japan out front, India trailing, Brazil and Germany in between), and an animated swarm plot is what happens when that cluster drifts and jostles as the underlying numbers move, instead of freezing in one frame. Each series gets a circle, and the circle's position along the axis tracks its value at a given moment. Unlike a bar chart race, a swarm plot doesn't sort things into a leaderboard: circles that land near the same value cluster together and gently push each other apart so none overlap, and you see the shape of the whole group rather than just who's in first.

PlotSet's Race Swarm template does this with real force-directed physics: circles have a collision radius, and as their target position shifts, they drift toward it and jostle their neighbors out of the way. That jostling is what makes the format worth watching. A cluster of countries sitting close together on GDP per capita visibly stays a tight clump for years, then one circle breaks away and drifts across the chart on its own. You watch the separation happen rather than reading it off two static snapshots.

It reads best when the question is 'how is this whole set of values spread out and shifting' rather than 'who's winning.' A bar chart race answers the second question well; a swarm plot answers the first.

您需要的数据

按照这样的格式准备数据表,Swarm Plot 模板就能自动生成。

示例 CSV
DateBrazilGermanyIndiaJapan
2000-01-013.47.21.19.8
2010-01-014.99.11.710.4
2020-01-015.610.22.411.1
主要列

Date

One row per point in time, oldest first. Each remaining column is a circle.

The key column is a date, one row per point in time, oldest first at the top. Every other column is a series: its header becomes the circle's label, and each value in that column is the position the circle drifts to at that time step. This is the same wide layout a bar chart race uses: if your data is currently one row per series-and-date combination, pivot it so each series has its own column before uploading.

Because the whole point is watching circles separate and regroup, four or five time steps tends to look static; the swarm barely has anywhere to go. Eight to twenty rows gives the physics room to show real drift and collision, and more series (ten-plus) makes the clustering itself more visible than it would be with just three or four circles bouncing around alone.

何时创建 Swarm Plot

  • Showing a distribution shift, not a ranking

    Income spread across regions, test scores across schools, price points across a product line: anything where the interesting story is the shape of the group, not which single entry is on top.

  • Data with values that cluster and separate

    If several series sit close together for part of the timeline and then spread out, the swarm's jostling physics makes that separation visible in a way a bar chart or line chart underplays.

  • Medium-sized groups, roughly 10 to 40 circles

    Enough circles to actually read as a swarm rather than a handful of dots, but not so many that the collisions turn into a solid, unreadable mass. This is where the format earns its keep over a bar chart race.

  • Social clips built around a single visual hook

    The physics itself is the hook. A cluster of circles suddenly breaking apart, or several outliers drifting back into the pack, makes a strong five-second moment for a feed or a short-form video.

何时不需要它

  • You care about exact rank order

    Circles aren't sorted top to bottom like race bars; position reflects value on an axis, and a viewer can't reliably read '#3 out of 12' off a swarm. Use a bar chart race if ranking is the actual point.

  • Fewer than about six series

    With only a handful of circles there's little jostling to show and the animation reads as a few dots drifting, not a swarm. A line chart race or a simple bar chart race carries small series counts better.

  • You need readers to pull precise numbers off the screen

    Like most motion charts, a swarm plot is built for the overall shape, not for someone pausing the video to read '4.9' off a specific circle. Pair it with a data table if exact figures matter.

如何创建 Swarm Plot

从电子表格到渲染的 MP4,一步一步来。

01

Open the Swarm Plot template

PlotSet loads the Swarm Plot template with the Brazil, Germany, India and Japan data used throughout this page, so you can see the expected sheet shape before touching your own file.

02

Shape your sheet as one column per circle

First column is the date, oldest row first. Every other column is one series that gets its own circle, and its header becomes that circle's label in the animation.

03

Upload or paste your data

Import a CSV, an .xlsx file, or paste straight from a spreadsheet. PlotSet reads the header row automatically and assigns a circle to each numeric column.

04

Set colors and collision timing

Set a color per series, pick a typeface for labels, and choose how long the swarm takes to settle at each time step. Add a music track if the export is headed to social.

05

Render on PlotSet's servers and grab the MP4

Preview the motion, then render. The video renders server-side, so you don't need local export horsepower. Download the MP4 directly, or share a hosted link once it's done.

从已加载示例数据的 Swarm Plot 模板开始,再替换成您自己的数据。

打开模板

Swarm Plot:常见问题

A video where each series is a circle that drifts along an axis as its value changes over time, nudging its neighbors apart instead of overlapping them. It shows how a whole group of values is spread out and shifting, not just which one is highest.

立即渲染您的 Swarm Plot

免费开始。无需信用卡。