A beeswarm chart displays individual data points, arranged to avoid overlap, in order to provide a clear and detailed view of distribution. They are not however, easy to build intuitively within Tableau natively.
Let's walk through the process! I followed along this tutorial for reference: https://www.flerlagetwins.com/2020/11/beeswarm.html
Here is my example, examining the average rating of episodes for each character in the soprano's:
![](https://www.thedataschool.co.uk/content/images/2025/01/image-373.png)
Step 1: Create Bins
![](https://www.thedataschool.co.uk/content/images/2025/01/image-383.png)
Replace my fixed calculation with your own measure, and replace my 0.1's with your desired bin size (if in doubt you can use a parameter here and easily edit it down the line).
Step 2: Calculate the number of points in each vertical line
![](https://www.thedataschool.co.uk/content/images/2025/01/image-384.png)
Next, we create a calculated field to get the number of points in each strip (each line of dots). This will allow us to then figure out the positioning of each dot so that they are center aligned.
Replace my [Role] field with your own dimension.
Step 3: Find your maximum coordinate
![](https://www.thedataschool.co.uk/content/images/2025/01/image-385.png)
Step 4: Find your coordinate
![](https://www.thedataschool.co.uk/content/images/2025/01/image-386.png)
Step 5: Build your chart
Ensure your Bin field is a dimension and bring it to the rows shelf. Drag ID to detail and bring your Coordinate field to columns. Right click on the Coordinate field and ensure its table calculation is set up as follows:
![](https://www.thedataschool.co.uk/content/images/2025/01/image-388.png)
Step 6: Format until you drop!
And their you have it.. native Tableau Beeswarm charts! There is an excellent extension from LaDataViz for some more dynamic variations:
![](https://exchange.tableau.com/_next/image?url=%2Fassets%2Fimages%2FTableauExchange.png&w=640&q=75)
but if you are like me (cheap), then I am happy to report that they are still possible.