Org Chart in Tableau

Since starting my new position, I’ve been talking about my work and department with my wife. I set out to create an organizational chart to give her more context when I speak about certain things. There are plenty of tools that facilitate org charts. Microsoft alone has Visio and Powerpoint. Heck, you could even use Excel or Word. But hey, I’m a Tableau user, so let make this more interesting.

Org charts in Tableau are not native. I searched the web and came across this thread on Tableau’s Ideas section. It would be interesting if Tableau added this as a Show Me feature. Perhaps they will someday. So I used this thread as a starting point on how to accomplish my goal.

The key to an org chart is connecting points. Let’s also not forget that the data structure is important when it comes to Tableau. Each data point needs two rows of data. You’re drawing a line to connect dots, so you need to have one row for the starting location (direct report) and one row for the end location (manager). Here’s how I set up my data:

ScreenHunter_01 Sep. 12 10.47

I have three individuals in this sample. Name1 is the top of the chart, so note the blank X, Y coordinates in the repeated row. This is because Name1 does not have a line to connect to its manager. I assigned each person an ID and mapped their manager ID. Only records in Order 1 have a Display Name and Display Title. This is used in the Label shelf so the records aren’t displayed twice. The hardest part of this is the X and Y coordinates. Depending on the size and branches of your org chart, you have to play around with their values. On a simple chart, you could probably automate the generation of these with Excel formulas.

The entire data file is stored here.

On to building the chart. Place the X values on the column shelf and the Y values on the row shelf. Go to Analysis and deselect Aggregate Measures. You should have something like this.

ScreenHunter_02 Sep. 12 11.06

Add the Y values to the rows again and enable dual axis with synchronized axis. On the Marks card, I set the first Y values to Line and the second to Square. Now you have something like this. It’s close but obviously needs a little more work.

ScreenHunter_06 Sep. 12 16.48

Each pair of records needs an unique ID. This ID will connect the hierarchy in the proper manner, instead of the mess above. We have this unique value as the ID column. Place the ID column in the Details shelf. From here you’re pretty much done. All that is left is formatting and labeling the values.

ScreenHunter_07 Sep. 12 16.53

Here’s my finished product. I placed this single sheet into a dashboard and set it to legal landscape. Click the image to navigate to the Tableau Public version if you wish to download the workbook.

Organizational Chart

Thanks for tuning in. Hopefully one day, I’ll be the at the top of this chart :).

Share Button

23 comments

  1. This is a good post showing some of the fundamentals for plotting x/y and connecting lines. Thanks for sharing! I’m with you: I would love to have visualizations like this naively supported in Tableau. But the fact that you can create them demonstrates that almost anything can be done!

          1. hi Can I use the same tree diagram to map the customer traffic flow like 100K customers came to app and they went to flow 1 , 2 , 3 and flow 1 further have a, b , c .. and labels should have data and based on filter data can changed.

  2. Hi this was really helpful. Apart from the x and y axis, is the ID column derived in a specific way or just random unique numbers?

  3. Bernardo, very nice work. I wanted to create a way to auto-generate the X,Y coords for this so I created a workflow in Alteryx to calculate the X,Ys for the viz. It calculates the maximum number of entries on any level as well as the number of levels and then “fits” the entries accordingly. Here’s the viz – https://www.dropbox.com/s/exoiily9jxh2fu6/HR_Hierarchy2.twbx?dl=0 .

    I would be glad o share the Alteryx workflow if anyone is interested.

    1. Andy, yes I’m replying very late. Your Alteryx solution is interesting. I wish I still had an Alteryx license but my current company is not a customer (I tried too). Thanks for commenting and showing your alternate method!

  4. Hi, I’m having an issue getting the colors to match up correctly. SVP shows up as every color, instead of pink. Any suggestions? Thanks for this!

      1. Hi Bernardo,

        Thanks for your help. What is the best way to upload the workbook? I can also e-mail it to you, if that is easier.

        Sincerely,
        Rebecca

          1. Hello Bernado… I am looking at your org chart and would also like to have a copy of the data if possible e-mailed to me… You can send it at dvd at aishaproductions dot ca

  5. Hi Bernardo, Thank you for this org chart. When I use your data I am able to reproduce your results. When I use my own data I have problems. My data set is composed of a series of documents with unique ID numbers. The documents have been coded for year, content, and other variables. The specific viz I am trying to create is an org chart or network chart of the relationships among the documents. More specifically, it looks at the documents that reference other documents. The x-axis is document year, the y-axis is document month (although I would prefer to organize according to reference type). I am able to generate a scatter plot and insert document labels. When I try to connect the documents to their pairs, Tableau generates some strange random lines. I have tried the dual axis function and have synchronized. Do you have any recommendations on how to organize my data to generate the desired results? I am happy to send you a sample of the data set if that would help.

    1. Hi, I’d be glad to take a look at some sample data. You can contact me at dataknightrises at gmail dot com. I’m currently on vacation though so it won’t be till January. Thanks.

  6. Bernardo, this is exactly what I was looking for. Thank you! I have a question related to another question in this thread related to adding detail by color and/or shapes. I have a category I want to highlight by shape, but there seems to be some overlap based on the connecting Manager ID and ID. I am not sure how to overcome this using filters. I’ve tried duplicating the data and building the dual axis using unique data sets (same data but 2 sets) and still have the issue. Any ideas? Here is the sample. You’ll notice some have a circle and a star shape overlapping each other.

    https://public.tableau.com/views/OrgChartinTableau_2/OrganizationalChart?:embed=y&:display_count=yes&:showVizHome=no#3

Leave a Reply