flowchart LR
A[Design <br> Elements] --> B[Colour <br> Palette]
A --> C[Typography <br> Hierarchy]
A --> D[White Space <br> & Grouping]
A --> E[Visual <br> Emphasis]
F[Advanced <br> Actions] --> G[Set Actions <br> Dynamic Sets]
F --> H[Sheet Swap <br> via Parameters]
F --> I[Drill-through <br> Navigation]
style A fill:#e3f2fd,stroke:#1976D2
style F fill:#f3e5f5,stroke:#7B1FA2
23 Dashboard Design Elements and Interaction with Dashboard Actions
This chapter deepens the skills from Chapters 21 and 22, focusing on the visual design elements that distinguish a professional dashboard from an amateur one, and on advanced interaction patterns using dashboard actions. The design topics covered are: colour palette selection and application, typography hierarchy, white space and visual grouping, and the use of visual emphasis to direct attention. The interaction topics extend the Chapter 21 introduction to actions into more advanced patterns: multi-level drill-through using set actions, sheet swapping using parameter actions, and designing dashboards that respond dynamically to user selections.
23.1 Colour Palette Design for Dashboards
Professional dashboards use a consistent, purposeful colour system, not a collection of whatever colours happen to be assigned by default. A dashboard colour system has three layers:
Layer 1, The background system (neutral colours): - Dashboard background: #FFFFFF (white) or #F8F8F8 (near-white). - Card/container backgrounds: #FFFFFF (creates “card on surface” effect against grey background). - Header background: A single brand or accent colour (used sparingly, for the header strip only). - Grid lines and borders: #E0E0E0 (light grey, present but subordinate).
Layer 2, The primary data colour: - The main colour used for the primary measure in the primary chart. One colour, used consistently. - Example: Tableau Blue (#4E79A7) for the revenue line/bar in all views.
Layer 3, The semantic accent colours: - Positive/above target: #59A14F (green), used only for “good” signals. - Negative/below target/alert: #E15759 (red), used only for “bad” signals. - Neutral comparison: #BAB0AC (grey), used for prior periods, benchmarks, less important series.
The principle: Use the primary data colour for most marks. Reserve semantic colours exclusively for good/bad signals. Never use red for non-alert purposes (a bar coloured red for the East region will be misread as “East is bad”). This colour discipline allows the reader’s eye to instantly identify alerts without reading labels.
KPI tiles (single-number summary cards) are the most important place to apply semantic colour, the green/red signal communicates pass/fail instantly without requiring the reader to evaluate a number.
Building a conditionally coloured KPI background:
Code
# Determines background colour: green if on target, red if below
IF SUM([Sales]) >= [Monthly Target]
THEN "#59A14F" // green hex
ELSE "#E15759" // red hex
ENDUse this string calculated field in a custom background shape: create a sheet with mark type Square, place the colour field on the Colour shelf (using a custom colour per string value), size to full view. Place this sheet behind the KPI number sheet using floating layout, positioning it as the background layer.
Alternatively, use the built-in conditional formatting: place the calculated colour field on the Colour shelf of a Text mark type sheet, assign custom colours per value in the Edit Colours dialog.
23.2 Typography Hierarchy in Dashboards
Typography hierarchy guides the reader through the dashboard by using visual weight (size, boldness) to signal importance. A three-level hierarchy is sufficient for most dashboards:
| Level | Use | Specification |
|---|---|---|
| Level 1, Dashboard Title | The dashboard name | 20–24pt, bold, primary brand colour or dark grey |
| Level 2, Section Header / Chart Title | Individual chart titles | 14–16pt, bold or semi-bold, dark grey (#333333) |
| Level 3, Axis Labels / Data Labels / Body Text | All other text | 10–12pt, regular weight, medium grey (#666666) |
Avoid using more than two font families in a dashboard. A clean, readable sans-serif font (Arial, Helvetica, or Tableau’s default Tableau Regular) for all text produces a more professional result than mixing serif and sans-serif fonts.
Font size on Tableau Server: Tableau’s default font sizes often look correct in Tableau Desktop but appear smaller when published to Tableau Server or Tableau Cloud. Test all font sizes at the published resolution and increase by 1–2pt if needed.
23.3 White Space and Visual Grouping
White space (empty space between elements) is not wasted space, it is a structural element that creates visual grouping, guides the reading flow, and reduces cognitive load. Dashboards that are “too busy” are almost always dashboards with insufficient white space, not dashboards with too much content.
Proximity principle: Elements that are close together appear to be related. Group charts that answer the same analytical question close together (small gap) and separate charts that answer different questions (larger gap). This spatial grouping communicates relationships without labels.
White space recommendations: - Between chart containers: 8–12px gap (consistent throughout the dashboard). - Between the chart content and the container edge (inner padding): 6–8px. - Between the header section and the chart body: 12–16px (larger gap signals a section break). - Above chart titles: 4–6px (titles should feel attached to their chart, not floating).
Implementing in Tableau: Set padding values in the container Edit Layout dialog. The outer padding controls the gap between containers; the inner padding controls the gap between the container edge and its contents. Apply the same outer padding to all chart containers to ensure visual consistency.
23.4 Visual Emphasis Techniques
A professionally designed dashboard uses visual emphasis to direct the reader’s eye to the single most important finding on the page. Techniques for creating visual emphasis in Tableau:
Size emphasis: The primary chart is larger than supporting charts. The largest element is perceived as most important. If all charts are the same size, the reader must decide independently what to focus on.
Colour emphasis: One mark or one chart section is coloured with the accent/alert colour; everything else is grey or the neutral primary colour. The coloured element immediately attracts attention.
Border/callout emphasis: A thin coloured border on a specific chart signals “this is the one to look at”. A floating text annotation with an arrow points directly at a specific mark.
Spacing emphasis: More white space around the primary chart than around supporting charts. Isolation draws attention.
Combining techniques: For maximum effect, apply two emphasis techniques simultaneously to the primary finding, for example, the largest chart (size) with a colour annotation pointing to the anomaly (colour). Avoid applying all four techniques at once, emphasis loses meaning when everything is emphasised.
23.5 Advanced Actions: Set Actions
A set action updates the membership of a Tableau Set based on user selection, combining the power of sets (which can drive calculations, filters, and highlights anywhere in the workbook) with direct user interaction. Set actions enable sophisticated “in-group vs. out-group” analysis patterns that cannot be achieved with simple filter actions.
How set actions work: 1. Create a Set based on a dimension (e.g., a “Selected Customers” set based on Customer Name). 2. Create calculated fields that reference the set: IF [Selected Customers] THEN SUM([Sales]) ELSE 0 END. 3. Create a dashboard action: Dashboard > Actions > Change Set Values. 4. Configure: Source Sheet (where the user clicks), Target Set (the set to update), Run on Select. 5. When the user clicks a customer mark, the “Selected Customers” set updates to include only that customer, and all calculated fields referencing the set instantly update.
Set action use case, Comparative Analysis: Create two charts side by side: “Selected Segment” and “All Other Segments”. A set action on the category bar chart populates the “Selected” set. One chart always shows the selected items’ metrics; the other always shows the complement, enabling direct comparison of the selected group against the rest of the market.
[Insert screenshot of a dashboard with a bar chart on the left (user clicks a category bar) and two KPI tiles on the right, one showing the selected category’s metrics and one showing all-other categories’ metrics, updating dynamically based on the selection]
23.6 Advanced Actions: Sheet Swapping
Sheet swapping allows multiple worksheets to occupy the same dashboard space, with only one visible at a time. The user selects which sheet to display using a parameter or a set of navigation buttons. This technique is valuable when multiple chart types (e.g., bar chart, line chart, scatter plot) could all answer the same business question and the user should choose their preferred view.
Implementation using a parameter:
Code
# Parameter: "Chart Type Selector", Allowed values: Bar, Line, Scatter- Create a String Parameter with allowed values: “Bar”, “Line”, “Scatter”.
- Create three worksheets: one bar chart, one line chart, one scatter plot, all showing the same underlying data.
- On each worksheet, create a Boolean calculated field:
Code
# Show Bar: TRUE when bar is selected
[Chart Type Selector] = "Bar"- Drag this Boolean to the Filters shelf on each worksheet (keep only TRUE rows, because the filter returns FALSE when the wrong type is selected, the worksheet shows nothing when it is “inactive”).
- On the dashboard, place all three worksheets in the same floating container, stacked on top of each other at the same position with the same size.
- Add a Parameter Action (or a quick filter control for the parameter) to update the parameter value.
- When the parameter changes, two sheets show empty content (invisible), and one shows the correct chart, creating the sheet swap effect.
[Insert screenshot of a dashboard with three “View as” buttons at the top (Bar, Line, Scatter) and a chart area below that changes chart type based on the selected button]
23.7 Drill-Through Navigation Design
Complex business questions require multiple analytical levels, a summary dashboard for the executive view and a detail dashboard for the operational drill-down. Drill-through navigation connects these levels.
The two-dashboard pattern: - Summary dashboard: Shows aggregate KPIs, trend charts, and geographic views. Designed for scanning. Click a region or category to navigate to the detail view for that entity. - Detail dashboard: Shows transaction-level or customer-level data for the selected entity. Designed for investigation. Includes a “Back” navigation button to return to the summary.
Implementing drill-through: 1. Create both dashboards. 2. On the Summary dashboard, add a Go-to-Sheet action (Dashboard > Actions > Go to Sheet) targeting the Detail dashboard. 3. Configure the action to pass the selected dimension value (e.g., Region = “East”) as a filter to the Detail dashboard. 4. On the Detail dashboard, add a Navigation button (Objects panel > Navigation) pointing back to the Summary dashboard. 5. The selected filter from the Summary dashboard persists into the Detail dashboard, the user arrives at the Detail view already filtered to the entity they selected.
Breadcrumb context: Add a dynamic text box to the Detail dashboard header: “Showing detail for: <ATTR([Region])>”. This confirms to the user which filter is currently active, preventing confusion when they arrive at the detail view.
23.8 Summary
| Topic | Key Technique | Access Point |
|---|---|---|
| Dashboard colour system | 3 layers: neutral / primary / semantic | Format > Workbook; Edit Colours dialogs |
| Conditional KPI colour | Calculated colour field on Colour shelf | Calculated field with hex colour strings |
| Typography hierarchy | 3 levels: 20pt title / 14pt headers / 10pt labels | Format > Font per level |
| White space | Consistent 8–12px container gaps | Container > Edit Layout > Padding |
| Visual emphasis | Size, colour, isolation, border | Layout sizing + mark colour + annotation |
| Set actions | Dynamic in-group vs. out-group analysis | Dashboard > Actions > Change Set Values |
| Sheet swapping | Parameter-controlled chart type switching | Parameter + Boolean filter + floating overlay |
| Drill-through navigation | Two-dashboard pattern with Go-to-Sheet | Dashboard > Actions > Go to Sheet |
| Breadcrumb context | Dynamic text showing active filter state | Text box with ATTR() field reference |
The most impactful dashboard design improvement you can make is to adopt a consistent colour system, one primary data colour and two semantic colours (green and red), and apply it ruthlessly. Dashboards built with consistent colour systems are not just more attractive: they are more trustworthy, because the reader can rely on the meaning of colours being stable across all charts. When every use of red means “alert” and every use of green means “good”, the reader processes the dashboard faster and with more confidence. This is the difference between a dashboard that looks like it was designed and one that looks like it was assembled.