Power BI Interactive Resume

The purpose of creating this interactive resume (CV) in Microsoft Power BI is to highlight some of my dashboard skills while letting potential employers or clients learn about my professional experience in a more interesting way than a traditional resume.

Faking a Gantt chart in Power BI

While developing this dashboard I ran into numerous roadblocks that highlight the fact that Power BI is still maturing compared to Tableau (its polished competitor). For example, I initially anticipated no problems in creating a simple timeline view of my work experience. In Tableau it’s easy to create a Gantt chart:
tableau gantt chart

I searched the Power BI custom visuals gallery and found a promising Gantt chart visual. However it turned out to be very underdeveloped:
Power BI Gantt Chart

First, I couldn’t change the height of the bars and they took up excessive space in my report. Second, I couldn’t customize the bar colors. Third, the tooltips displayed extra info that I couldn’t eliminate like “Completion %.”

Disappointed, I researched additional options. The pulse chart custom visual looked promising because I could show milestones on a timeline:
Power BI Pulse Chart Timeline

However, the drawbacks were that I couldn’t show length of time worked at a given job, nor show categories (education, main full time job, part time side job, etc.) Also, I didn’t have control of colors of the dots to the degree I wanted.

Not to be deterred, I put my effort into figuring out a way to mimic a Gantt chart for my Power BI resume. I had the thought that a Stacked Bar chart could replicate a Gantt chart if I were to insert dummy blocks that separated the real blocks. I began by making each Job a separate segment on the bar chart, split into the various categories (Education, Main, Part Time 1, Part Time 2):
Power BI Stacked Bar Chart Without Blanks

Now I needed to figure out a way to place blank dummy bars in between the actual job bars to show gaps in the timeline. To do this, I generated a calculated table using DAX (Power BI’s formula language for defining custom calculations). I started with a Date Table that included all dates between the earliest start date of any job minus one day (keep this in mind because I’ll come back to this) and the latest end date of any job. For each of these dates, there could be one of four job categories (Education, Main Job, Side Job 1, Side Job 2), so I calculated the Cartesian product of these two datasets, resulting in a table with four times as many dates.
Power BI Calculated Table Mockup

Using the DAX SUMMARIZE function, I collapsed that table back into a simple list of jobs that included any employment gaps precalculated as “jobs.”
Jobs With Dummy Blanks

When I used this new table as the source data for the Stacked Bar Chart in Power BI (using the duration column to specify the width of the bar on the visual), I got something like this:
Power BI Stacked Bar Chart with Blank Jobs

Then, I changed the color of all the dummy “jobs” to White:
Power BI Stacked Bar Chart with White Blank Jobs

Adding the date axis to a Power BI stacked bar chart

You might be wondering how I simulated a date Axis on this chart. Remember that earlier when I created the calculated table with all dates I expressly increased the date range by one day earlier than the earliest start date. That way, PowerBI sees a gap BEFORE the first job in every category. To each of these initial gaps, I added roughly 2005 years to their duration:
Power BI Calculated Table Added Delay to Jobs

I set the bar chart X-axis to begin at value 2006. With a bit of formatting (removed decimals and commas from the X-Axis) I got something like this:
Power BI Final Gantt Chart Timelines

I was pretty happy with it! Because the visual is a standard Power BI bar chart, I can click on each bar segment to highlight/filter the rest of the report. It took a lot more hacking than should be necessary, but in the end I was happy to have achieved the Gantt Chart effect I was going for!

0 Comments

Submit a Comment

Your email address will not be published. Required fields are marked *

View my interactive resume

View Resume

Let's work together!

6 + 15 =

Free WordPress Themes, Free Android Games