Maybe you've seen them: Rainbows of circles representing members of the U.S. Senate, House of Representatives, or all of Congress.

I wanted to make such a visualization to show the number of members of Congress who've tested positive for coronavirus and the positive tests among each party.

If not for the serious nature of the topic, it was a fun puzzle to solve.

The steps I took were:

- Figure out how many circles fit in each ring
- Calculate the positions for every circle
- Sort the positions to suit my needs
- Marry the positions to data

It turns out that once I established **a)** the number of circles in each ring and **b)** the size of those circles, I could figure out the rest with code.

You can play with the final results, or take a look at the code yourself. But here's the explanation: