Many years ago, a friend went to grad school to study computer science in the University of Minnesota. I asked him what his research topic was. He said: cellular automata. It sounded interesting as a term, especially "automata". Although he explained it, I didn't understand much. But the term stuck with me along the years.

Recently, I became interested in visualizing math functions [Lorenz Attractor] [Normal Distribution] in Tableau. It's a great way to learn math and learn some advanced features of Tableau. Zen Master Noah Salvaterra's masterful article taught me how to use state iterations in calculating recursive functions. A speech by Stephen Wolfram in which he showed many fun images engendered by cellular automata, picked my curiosity. I want to see if I can render them in Tableau.

After quite a bit of trial and errors, along with self doubts and struggle, I finally made it work! Among the 256 variants, a few of them reproduce the Sierpinski Triangle or similar! Zen Master Joshua Milligan created it in a different approach in Tableau.
The data set
It is very simple. Only 4 rows data are needed.
We only need to define 4 points in the grid. The size along each dimension is defined by a parameter. The other data marks are created through data densification.

The parameters
M: 2M+1 is the width of the grid because we need an odd number.
N: The height of the grid.
Rule: the 256 rules of the cellular automata.

The state in a string
The calculation of each point is a function of the previous row and the two extra wraparound bits. Thus a 2M+3-bit string is used to store those bits. Through iterations, the state string is updated at each iteration. A recursive function is a state machine after all.

The formula is built on previous_value() function which keeps the state string.
The rules
I used the latest Viz-in-Tooltip to show the rule being used. Also added link to my twitter, rules by Wolfram and Wikipedia's entry on cellular automata.
The red button
The default view of the chart is in black and white. The red button is used to show a colored version of the chart, making it a bit more dramatic. 
That's it! Click image to access the interactive version. Note that we picked the phone size for the viz. You can view it right from your phone.
0

Add a comment

(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.