While researching on Mandelbrot Set fractals, I stumbled upon the Multiplication Circles. They are  times tables mapped on a circle. This video gives an excellent introduction to the subject, which inspired me to create it in Tableau. This has been implemented in Tableau before using a pre-calculated data set by Ben Bausili. Here I use a quite different approach based on data densification and inner dimensions of the numbers.

There are two important parameters for creating such a circle: Modulo and Multiplier.

The Modulo 
The Modulo is the number of equally-spaced points on a circle. Any number that's greater than the Modulo will be mapped on those with the same residue after a full circle.

The Multiplier
The Multiplier will decide that any point P will connect with its multiple P*Multiplier.

1) Multiplier=2
For example, let Multiplier=2. Then each point will be connected its double, like 1->2, 2->4, 4->8 and 8->16 etc. Also, 3->6, 6->12, 12->24 etc. Note that these series of numbers are connected one after another. Hence we can create a table of series as follows:
1,2,4,8,...
3,6,12,24,...
5,10,20,30,...
...
Which is equivalent to a series of power of 2:
1*(2^0,2^1,2^2,....)
3*(2^0,2^1,2^2,....)
5*(2^0,2^1,2^2,....)
......

2) Multiplier=3
When the Multiplier = 3, each point will be connected to its triple.
1,3,9,27,...
2,6,18,54,...
4,12,36,108,...
5,15,45,135,...
......
which is equivalent to a series of power of 3:
1*(3^0,3^1,3^2,...)
2*(3^0,3^1,3^2,...)
4*(3^0,3^1,3^2,...)
5*(3^0,3^1,3^2,...)
......
Note that the first numbers of each series are 3X + Residue(Mod 3). Each X together with all the non-zero residues will define a set of numbers that are the first numbers of each series. Each X and a non-zero residue will uniquely identify a series of connected points/numbers.

3) Multiplier = M
In this case, we will have series like M*X+ Residue (Mod M). Each X and a non-zero residue will uniquely identify a series of connected points/numbers.

1*(M^0,M^2,M^3,...)
2*(M^0,M^2,M^3,...)
...
(M-1)*(M^0,M^2,M^3,...)
(M+1)*(M^0,M^2,M^3,...)
...

The Dimensions

Given Multiplier, we will have 3 dimensions for a number on the circle:
Series, Residue and Exponent

These 3 dimensions will uniquely identify each number and thus a series:
(Multiplier*Series+Residue%Multiplier)*(Multiplier^Exponent)
For multiplier=2, a number will be expressed as (2*Series+1)*2^Exponent
For multiplier=3, a number will be expressed as
(3*Series+1)*3^Exponent
(3*Series+2)*3^Exponent
where Series is the integer series from 0,1,2 to infinity as well as Exponent. Residue is the limited integer series from 1,2 to Multiplier-1.

Here is a table of numbers when Multiplier=2. Each row is a series (=set) of connected numbers.
Multiplier=3
Multiplier=4

The Filters

1) Number filter
For a given N points (N = Modulo) evenly distributed on a circle, we need at most N-1 connected lines. The Nth point will either point to itself or be connected with a lower number. The (N-1)th number will connect with (N-1)*Multiplier. Any number higher will not be necessary and thus can be filtered out.

2) Series filter
Any series will need to have at least two numbers so that there will be one line to connect them.

Thus the series filter is
Multiplier*Series+Residue<=N-1

Here is the table of Multiplier=2 after filtering: (Set=Series)

Multiplier=3 after filtering: (Set=Series)
Multiplier=4 after filtering: (Set=Series)
3) Residue filter
Residue must be smaller than the Modulo.

Examples

There are many variations of the multiplication circles, as well as many possible ways to color them. Here I would show two of them.

1) Animated Multiplication Circles
It is implemented by paging Multiplier from 2 to 51.

Click here to access the workbook.  The animation on top of this post is created using this workbook.

2) Grid of 50 Multiplication Circles
Click here to access the workbook.
 A few more examples of the multiplication circles based on various visual elements are as follows. Click here to view the workbook.

(Refresh the page if you want to view the gif image multiple times. Or go to Tableau Public and click the button at the top-right corner.)

Jake and I collaborated on a dashboard. He told me that he learnt a way to create an in-place help page in Tableau. He first saw it at a conference somewhere and couldn't recall who the speaker was. So I am blogging here about it but the credit goes to somebody else. If anyone knows who the original creator is, leave a comment below.

The key idea is to float a semi transparent worksheet on top of the dashboard, where a help text box is strategically placed on top of each chart. This way, we can explain how to view each chart and what data points are important, etc. This worksheet is collapsible by a show/hide button. 

Below I would like to show how this worksheet can be constructed.

1. Sheet with a single data mark.

  • Double click the empty space in Marks panel and add two single quotes. Make the null pill a text label. This creates a single null mark.
  • Set the view as "Entire View"

2. Create an show/hide button

  • Go to the target dashboard
  • Drag a floating vertical container to the dashboard, making it cover all the area of interest.
  • Drag the Single Null Mark sheet and drop it into the above container. Hide the sheet title.
  • Create an open/close button for the container and place the button at the top-right corner.

3. Add annotations

  • Format the sheet background opacity as 70% in the layout manager             
  • Select area annotations and place them anywhere of interest. 
  • Write help text and format it to highlight important messages.  
  • The text can serve as functional guide and/or insight guide.

Here is an example. Feel free to download the workbook and explore. Click the "i" button at the top-right corner to view the in-place help. 

0

Add a comment

Blog Archive
Loading
Dynamic Views theme. Powered by Blogger. Report Abuse.