Tableau 8: The Official Guide 9780071816779, 0071816771, 9780071816786, 007181678X

Present a unified view of complex BI using the entire Tableau 8 toolkit Create and distribute dynamic, feature-rich data

216 48 37MB

English Pages 230 [306] Year 2013

Report DMCA / Copyright

DOWNLOAD PDF FILE

Table of contents :
Cover......Page 1
Title Page......Page 4
Copyright Page......Page 5
Contents at a Glance......Page 8
Contents......Page 10
Acknowledgments......Page 16
About the Media Included with This Book......Page 18
What is Tableau?......Page 20
The Data Window......Page 22
Shelves and Cards......Page 23
Basic Tableau Design Flow......Page 24
Using Show Me......Page 28
Choosing Mark Types......Page 31
Choosing Color Options......Page 33
Setting Mark Size......Page 34
Choosing Shapes......Page 35
Text Tables and Mark Labels......Page 36
Formatting Options......Page 39
Evaluating Multiple Measures......Page 41
Shared Axis Charts......Page 42
Dual Axis Charts......Page 45
Connecting to Various Data Sources......Page 50
Adding and Joining Multiple Tables from the Same Database......Page 54
Modifying Tableau’s Default Field Assignments......Page 57
Hiding, Renaming, and Combining Fields......Page 58
Using Hierarchies, Groups, and Sets......Page 62
Saving and Sharing Metadata......Page 72
Extracting Data......Page 74
Data Blending......Page 79
Moving from Test to Production Databases......Page 85
Bar Chart......Page 88
Line/Area Chart......Page 90
Tableau 8 Forecasting......Page 92
Pie Chart......Page 93
Text Table/Crosstab......Page 95
Scatter Plot......Page 99
Bubble Chart......Page 102
Bullet Graph......Page 104
Box Plot......Page 107
Tree Map......Page 111
Word Cloud......Page 113
Basic Filtering......Page 114
Interactive Filtering......Page 120
Quick Filters......Page 122
Creating a Parameter......Page 125
Displaying a Parameter......Page 128
Using a Parameter in a Worksheet......Page 129
Filter Actions......Page 131
Highlight Actions......Page 134
URL Actions......Page 137
Chapter 6: Tableau Maps......Page 140
Geocoded Fields......Page 143
Geographic Hierarchies and Ambiguity......Page 147
Custom Geocoding......Page 150
Background Maps and Layers......Page 159
Map Options......Page 161
Web Map Services......Page 162
Mapping and Mark Types......Page 164
Custom Background Images......Page 167
Generating Your Own Coordinate System......Page 168
Adding a Custom Background Image......Page 170
Chapter 7: Calculated Fields, Table Calculations, and Statistics......Page 174
Creating Calculated Fields......Page 175
Numeric Calculations......Page 176
String Manipulation......Page 177
Date Calculations......Page 179
Logic Constructs......Page 181
Creating Binned Fields......Page 185
Table Calculations......Page 186
Reference Lines, Bands, and Distribution......Page 198
Single Reference Line......Page 199
Reference Band......Page 200
Reference Distribution......Page 201
Trend Lines......Page 203
Creating a Simple Dashboard......Page 206
Tiled Placement......Page 208
Floating Placement......Page 215
Associated Dashboard Elements......Page 216
Layout Container......Page 217
Image......Page 219
Setting Dashboard and Element Sizes......Page 220
Dashboard Actions......Page 221
Highlight Action......Page 222
Filter Action......Page 223
URL Action......Page 226
Printing to PDF Format......Page 230
Exporting Worksheet Data......Page 231
Exporting Worksheet Images......Page 233
Using Tableau Reader......Page 234
Publishing to the Web......Page 235
Sharing on Tableau Public......Page 236
Publishing to Tableau Server and Tableau Online......Page 237
Using Tableau with iPad, Android, and Other Smartphones and Tablets......Page 240
ASIN......Page 250
DEGREES......Page 251
MAX......Page 252
RADIANS......Page 253
SQRT......Page 254
ASCII......Page 255
ENDSWITH......Page 256
LEFT......Page 257
MAX......Page 258
RIGHT......Page 259
TRIM......Page 260
DATEADD......Page 261
DAY......Page 262
MIN......Page 263
TODAY......Page 264
DATETIME......Page 265
Logical Functions......Page 266
IF......Page 267
ISDATE......Page 268
Aggregate Functions......Page 269
COUNT......Page 270
MEDIAN......Page 271
SUM......Page 272
Pass-Through Functions......Page 273
RAWSQLAGG_REAL......Page 274
User Functions......Page 275
ISUSERNAME......Page 276
Table Calculation Functions......Page 277
FIRST......Page 278
LAST......Page 279
PREVIOUS_VALUE......Page 280
RUNNING_COUNT......Page 281
RUNNING_MIN......Page 282
SIZE......Page 283
WINDOW_AVG......Page 284
WINDOW_MAX......Page 285
WINDOW_MEDIAN......Page 286
WINDOW_MIN......Page 287
WINDOW_STDEV......Page 288
WINDOW_SUM......Page 289
WINDOW_VAR......Page 290
WINDOW_VARP......Page 291
Index......Page 292
Recommend Papers

Tableau 8: The Official Guide
 9780071816779, 0071816771, 9780071816786, 007181678X

  • 0 0 0
  • Like this paper and download? You can publish your own PDF file online for free in a few minutes! Sign Up
File loading please wait...
Citation preview

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / FM

Conceived by Paul Sochan

00-FM.indd 1

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / FM

About the Author George Peck has been involved in various IT pursuits for over 35 years. He founded his own consulting and training firm, The Ablaze Group, in 1994 (www.AblazeGroup.com). He has trained, consulted, and developed custom software for large and small organizations throughout the United States, Canada, the United Kingdom, and Puerto Rico. George works with a variety of Business Intelligence toolsets. In addition to being a certified trainer for Tableau, he consults on Tableau and Tableau Server, as well as SAP BusinessObjects products. George is the best-selling author of several BI books published by McGraw-Hill Education, including multiple editions of Crystal Reports: The Complete Reference. In addition to his software endeavors, George is a broadcaster and voice actor. His voice may be heard on national radio, TV, and web commercials, promotions, and documentaries. He programs his own eclectic music radio station and hosts a regular jazz radio program in Denver, Colorado. He may be reached via e-mail at Author@ TableauBook.com.

About the Technical Editor Molly Monsey is part of Tableau’s training team who, since joining in 2011, has developed and conducted customer and partner courses all over the world. Starting at Tableau in 2009 as a product consultant, Molly served as a technical resource, providing support and training for internal and external audiences. Prior to Tableau, Molly worked in finance as a loan specialist responsible for analyzing data for thousands of customers. Molly is a Seattle, Washington, native and a graduate of the University of Washington Business School.

00-FM.indd 2

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / FM

Tableau 8: The Official Guide George Peck

New York  Chicago  San Francisco Athens  London  Madrid  Mexico City  Milan  New Delhi  Singapore  Sydney  Toronto

00-FM.indd 3

30/07/13 4:39 PM

Copyright © 2014 by McGraw-Hill Education. All rights reserved. Printed in the United States of America. Except as permitted under the Copyright Act of 1976, no part of this publication may be reproduced or distributed in any form or by any means, or stored in a database or retrieval system, without the prior written permission of publisher, with the exception that the program listings may be entered, stored, and executed in a computer system, but they may not be reproduced for publication. ISBN: 978-0-07-181677-9 MHID: 0-07-181677-1 e-Book conversion by Cenveo® Publisher Services Version 1.0 The material in this eBook also appears in the print version of this title: ISBN: 978-0-07-181678-6, MHID: 0-07-181678-X. McGraw-Hill eBooks are available at special quantity discounts to use as premiums and sales promotions, or for use in corporate training programs. To contact a representative please e-mail us at [email protected]. All trademarks are trademarks of their respective owners. Rather than put a trademark symbol after every occurrence of a trademarked name, we use names in an editorial fashion only, and to the benefit of the trademark owner, with no intention of infringement of the trademark. Where such designations appear in this book, they have been printed with initial caps. Information has been obtained by Publisher from sources believed to be reliable. However, because of the possibility of human or mechanical error by our sources, Publisher, or others, Publisher does not guarantee to the accuracy, adequacy, or completeness of any information included in this work and is not responsible for any errors or omissions or the results obtained from the use of such information. TERMS OF USE This is a copyrighted work and McGraw-Hill Education (“McGraw-Hill”) and its licensors reserve all rights in and to the work. Use of this work is subject to these terms. Except as permitted under the Copyright Act of 1976 and the right to store and retrieve one copy of the work, you may not decompile, disassemble, reverse engineer, reproduce, modify, create derivative works based upon, transmit, distribute, disseminate, sell, publish or sublicense the work or any part of it without McGraw-Hill’s prior consent. You may use the work for your own noncommercial and personal use; any other use of the work is strictly prohibited. Your right to use the work may be terminated if you fail to comply with these terms. THE WORK IS PROVIDED “AS IS.” McGRAW-HILL AND ITS LICENSORS MAKE NO GUARANTEES OR WARRANTIES AS TO THE ACCURACY, ADEQUACY OR COMPLETENESS OF OR RESULTS TO BE OBTAINED FROM USING THE WORK, INCLUDING ANY INFORMATION THAT CAN BE ACCESSED THROUGH THE WORK VIA HYPERLINK OR OTHERWISE, AND EXPRESSLY DISCLAIM ANY WARRANTY, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. McGraw-Hill and its licensors do not warrant or guarantee that the functions contained in the work will meet your requirements or that its operation will be uninterrupted or error free. Neither McGraw-Hill nor its licensors shall be liable to you or anyone else for any inaccuracy, error or omission, regardless of cause, in the work or for any damages resulting therefrom. McGraw-Hill has no responsibility for the content of any information accessed through the work. Under no circumstances shall McGraw-Hill and/or its licensors be liable for any indirect, incidental, special, punitive, consequential or similar damages that result from the use of or inability to use the work, even if any of them has been advised of the possibility of such damages. This limitation of liability shall apply to any claim or cause whatsoever whether such claim or cause arises in contract, tort or otherwise.

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / FM

For Denise Let’s go another 25

00-FM.indd 5

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / FM

This page has been intentionally left blank

00-FM.indd 6

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / FM

Contents at a Glance Introduction to Tableau 8  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Basic Visualization Design  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Data Connection Details  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Top 10 Chart Types  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Interacting with the Viewer  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Tableau Maps  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Calculated Fields, Table Calculations, and Statistics  . . . . . . . . . . . . . . . Creating Dashboards  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Distributing and Sharing Your Visualizations  . . . . . . . . . . . . . . . . . . . . .

1 9 31 69 95 121 155 187 211



1 2 3 4 5 6 7 8 9



A Function Reference  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231

Index  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273

vii

00-FM.indd 7

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / FM

This page has been intentionally left blank

00-FM.indd 8

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / FM

Contents Acknowledgments  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv About the Media Included with This Book  . . . . . . . . . . . . . . . . . . . . . . . xvii

1 Introduction to Tableau 8  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . What Is Tableau?  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Tableau User Interface  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . The Data Window  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Shelves and Cards  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Basic Tableau Design Flow  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1 1 3 3 4 5



2 Basic Visualization Design  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Using Show Me  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Choosing Mark Types  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Color, Size, Shape, and Label Options  . . . . . . . . . . . . . . . . . . . . . . . . . . . Choosing Color Options  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting Mark Size  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Choosing Shapes  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Text Tables and Mark Labels  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Formatting Options  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Evaluating Multiple Measures  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Shared Axis Charts  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Dual Axis Charts  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

9 9 12 14 14 15 16 17 20 22 23 26



3 Data Connection Details  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Connecting to Various Data Sources  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Adding and Joining Multiple Tables from the Same Database  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Customizing Your View of the Data  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modifying Tableau’s Default Field Assignments  . . . . . . . . . . . . Hiding, Renaming, and Combining Fields  . . . . . . . . . . . . . . . . . Changing Default Field Appearance  . . . . . . . . . . . . . . . . . . . . . . Using Hierarchies, Groups, and Sets  . . . . . . . . . . . . . . . . . . . . . . Saving and Sharing Metadata  . . . . . . . . . . . . . . . . . . . . . . . . . . . .

31 31 35 38 38 39 43 43 53

ix

00-FM.indd 9

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / FM

x





Tableau 8: The O f f icial Guide

Extracting Data  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Data Blending  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Moving from Test to Production Databases  . . . . . . . . . . . . . . . . . . . . . .

55 60 66



4 Top 10 Chart Types  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Bar Chart  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Line/Area Chart  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Tableau 8 Forecasting  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pie Chart  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Text Table/Crosstab  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Scatter Plot  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Bubble Chart  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Bullet Graph  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Box Plot  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Tree Map  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Word Cloud  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

69 69 71 73 74 76 80 83 85 88 92 94



5 Interacting with the Viewer  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Filtering Data  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Basic Filtering  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Interactive Filtering  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Quick Filters  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Parameters  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating a Parameter  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Displaying a Parameter  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Using a Parameter in a Worksheet  . . . . . . . . . . . . . . . . . . . . . . . . Worksheet Actions  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Filter Actions  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Highlight Actions  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . URL Actions  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

95 95 95 101 103 106 106 109 110 112 112 115 118



6 Tableau Maps  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Geocoded Fields  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Geographic Hierarchies and Ambiguity  . . . . . . . . . . . . . . . . . . . Custom Geocoding  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Background Maps and Layers  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Map Options  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Web Map Services  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Mapping and Mark Types  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Custom Background Images  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Generating Your Own Coordinate System  . . . . . . . . . . . . . . . . . Adding a Custom Background Image  . . . . . . . . . . . . . . . . . . . . .

121 124 128 131 140 142 143 145 148 149 151

00-FM.indd 10

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / FM



Contents



7 Calculated Fields, Table Calculations, and Statistics  . . . . . . . . . . . . . Creating Calculated Fields  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Numeric Calculations  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . String Manipulation  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Date Calculations  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Logic Constructs  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating Binned Fields  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table Calculations  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Reference Lines, Bands, and Distribution  . . . . . . . . . . . . . . . . . . . . . . . . Single Reference Line  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Reference Band  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Reference Distribution  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Trend Lines  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

155 156 157 158 160 162 166 167 179 180 181 182 184



8 Creating Dashboards  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Creating a Simple Dashboard  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Tiled Placement  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Floating Placement  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Associated Dashboard Elements  . . . . . . . . . . . . . . . . . . . . . . . . . . Advanced Dashboard Elements  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Layout Container  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Blank  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Text  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Image  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Web Page  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Setting Dashboard and Element Sizes  . . . . . . . . . . . . . . . . . . . . . Dashboard Actions  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Highlight Action  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Filter Action  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . URL Action  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

187 187 189 196 197 198 198 200 200 200 201 201 202 203 204 207



9 Distributing and Sharing Your Visualizations  . . . . . . . . . . . . . . . . . . . Exporting Worksheets and Dashboards  . . . . . . . . . . . . . . . . . . . . . . . . . . Printing to PDF Format  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exporting Worksheet Data  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exporting Worksheet Images  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exporting Dashboard Images  . . . . . . . . . . . . . . . . . . . . . . . . . . . . Using Tableau Reader  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Publishing to the Web  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sharing on Tableau Public  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Publishing to Tableau Server and Tableau Online  . . . . . . . . . . . Using Tableau with iPad, Android, and Other Smartphones and Tablets  . . . . . . . . . . . . . . . . . . . .

211 211 211 212 214 215 215 216 217 218

00-FM.indd 11

xi

221

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / FM



xii

00-FM.indd 12



Tableau 8: The O f f icial Guide

A Function Reference  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Number Functions  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ABS  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ACOS  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ASIN  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ATAN  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ATAN2  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . COS  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . COT  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DEGREES  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . EXP  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LN  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LOG  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MAX  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MIN  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PI  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . POWER  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RADIANS  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ROUND  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SIGN  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SIN  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SQRT  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SQUARE  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TAN  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ZN  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . String Functions  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ASCII  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CHAR  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CONTAINS  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ENDSWITH  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . FIND  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ISDATE  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LEFT  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LEN  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LOWER  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LTRIM  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MAX  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MID  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MIN  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RIGHT  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RTRIM  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SPACE  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

231 231 231 231 231 232 232 232 232 232 233 233 233 233 234 234 234 234 235 235 235 235 236 236 236 236 236 237 237 237 238 238 238 239 239 239 239 240 240 240 241 241

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / FM



Contents

STARTSWITH  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TRIM  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . UPPER  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Date Functions  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DATEADD  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DATEDIFF  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DATENAME  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DATEPART  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DATETRUNC  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DAY  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ISDATE  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MAX  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MIN  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MONTH  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NOW  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TODAY  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . YEAR  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Type Conversion Functions  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DATE  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DATETIME  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . FLOAT  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . INT  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . STR  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Logical Functions  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CASE  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IF  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IFNULL  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IIF  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ISDATE  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ISNULL  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ZN  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Aggregate Functions  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ATTR  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AVG  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . COUNT  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . COUNTD  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MAX  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MEDIAN  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MIN  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . STDEV  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . STDEVP  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SUM  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . VAR  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . VARP  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

00-FM.indd 13

xiii

241 241 242 242 242 243 243 243 243 243 244 244 244 245 245 245 246 246 246 246 247 247 247 247 248 248 249 249 249 250 250 250 251 251 251 252 252 252 253 253 253 253 254 254

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / FM



xiv

Tableau 8: The O f f icial Guide

Pass-Through Functions  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RAWSQLAGG_BOOL  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RAWSQLAGG_DATE  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RAWSQLAGG_DATETIME  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RAWSQLAGG_INT  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RAWSQLAGG_REAL  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RAWSQLAGG_STR  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RAWSQL_BOOL  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RAWSQL_DATE  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RAWSQL_DATETIME  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RAWSQL_INT  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RAWSQL_REAL  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RAWSQL_STR  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . User Functions  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . FULLNAME  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ISFULLNAME  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ISMEMBEROF  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ISUSERNAME  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . USERDOMAIN  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . USERNAME  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table Calculation Functions  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . FIRST  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . INDEX  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LAST  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LOOKUP  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PREVIOUS_VALUE  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RUNNING_AVG  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RUNNING_COUNT  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RUNNING_MAX  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RUNNING_MIN  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RUNNING_SUM  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SIZE  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TOTAL  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . WINDOW_AVG  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . WINDOW_COUNT  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . WINDOW_MAX  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . WINDOW_MEDIAN  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . WINDOW_MIN  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . WINDOW_STDEV  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . WINDOW_STDEVP  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . WINDOW_SUM  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . WINDOW_VAR  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . WINDOW_VARP  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

254 255 255 255 255 255 256 256 256 256 256 256 256 256 257 257 257 257 258 258 258 259 260 260 261 261 262 262 263 263 264 264 265 265 266 266 267 268 269 270 270 271 272

Index  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273 To obtain material from the disc that accompanies the printed version of this eBook, please click here.

00-FM.indd 14

09/08/13 10:26 AM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / FM

Acknowledgments

A

book of this magnitude is a combined effort. While the author receives primary credit on the cover, there are lots of other people who have made this endeavor possible. First and foremost, thanks to Paul Sochan at Tableau Software. Not only did he introduce me to this incredible toolset, but offered up the initial “Hey, you ought to write a book!” thought. Good idea, Paul! Molly Monsey from Tableau is, perhaps, the best technical editor I’ve ever had the pleasure of working with. Yes, she caught some technical errors. But, more importantly, she brought me back on track, helped me smooth out some awkward language, and just made the book so much more understandable. And, she’s just a cool lady! Francois Ajenstat at Tableau was helpful beyond description. Thanks so much for early alphas and betas, great feedback, and quick answers to every pesky question I asked. Elissa Fink at Tableau has been such a pleasure to work with—let’s sell lots of books and software together! And, of course, thanks to Christian Chabot, Chris Stolte, and Pat Hanrahan for coming up with a great idea and founding a wonderful company. There’s a core group at McGraw-Hill Education made up of “behind the scenes” folks that rarely get enough credit. Wendy Rinaldi and I go way back. Wendy, it was great to work with you again, as in the beginning. Thanks to Lisa McCoy for making sense of occasional nonsensical stuff. And Patty Mon and Jean Bodeaux worked so diligently to make this a great final product! Finally, and most importantly, I give eternal thanks to Denise. You’ve stood by me and supported me through more of these projects than I can immediately remember, over a longer period of time than I like to remember. I Love You. George Peck [email protected] July 2013

xv

00-FM.indd 15

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / FM

This page has been intentionally left blank

00-FM.indd 16

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / FM

About the Media Included with This Book

T

ableau 8: The Official Guide includes a companion CD that features videos by the author demonstrating key concepts, as well as sample Tableau 8 workbooks that may be opened directly in Tableau 8.

Videos To view related videos, insert the included CD into your computer’s CD drive. If the disc does not auto-start, perform the following steps:

1. Click the Start button.



2. View the list of drives. • In Windows XP, select My Computer. • In Windows Vista/7, select Computer.



3. Right-click the CD drive icon.



4. View the files on the CD. • In XP/Vista, from the drop-down list, select Explore. • In 7, from the drop-down list, select Open.



5. Double-click the icon of the Tableau_8 or Tableau_8.exe file.

Sample Workbooks You may copy workbooks in the CD Sample Workbooks folder to your hard drive, or open them directly from the CD drive (you won’t be able to save changes to the CD drive, however). All sample workbooks are Tableau Packaged Workbook (.twbx) files. You may open these in Tableau 8 without regard to original data source locations. All data sources, necessary images, custom geocoding, and so forth are included in the packaged workbook.

xvii

00-FM.indd 17

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / FM



xviii

Tableau 8: The O f f icial Guide

If you wish to expand the content of the packaged workbook, right-click it in Windows Explorer and choose Unpackage. You may also rename the file extension from .twbx to .zip and use a standard ZIP utility to unzip the packaged workbook contents. Look for any updated or corrected information at www.TableauBook.com. Questions about the content of these sample workbooks may be e-mailed to [email protected].

Ebook Users: Downloading the Media from the McGraw-Hill Professional Media Center If you purchased the ebook edition of Tableau 8: The Official Guide, you can download all of the example material and video included on the print book CD from the McGraw-Hill Professional Media Center. Instructions for downloading are included at the end of the ebook table of contents.

00-FM.indd 18

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 1

1

CHAPTER

Introduction to Tableau 8

W

hile social networking, cloud computing, and mobility are three of the biggest growth segments of Information Technology in the second decade of the 2000s, Business Intelligence is no slouch. Demand for new and innovative ways for organizations to view the ever-increasing amount of available data continues to grow. Data Discovery is a newer niche area of Business Intelligence that concentrates on visual and graphical analytics, as opposed to more traditional text-based reporting. And while an Internet search on the word dashboard might have returned a large number of results relating to part of a car interior several years ago, initial search returns now largely relate to some form of computer-based data visualization. Tableau fits squarely into this Data Discovery/dashboard realm. While standard Business Intelligence tools for corporate and enterprise reporting abound, newer visualization tools, such as Tableau, are just coming of age. Now in its eighth major release, Tableau continues to sit at the leading edge of this growing segment of Information Technology. Note  Open the Chapter 1 - First Workbook.twbx file in Tableau to see examples that relate to this chapter.

What Is Tableau? Tableau Software has its roots in the Stanford University Computer Science department, in a Department of Defense–sponsored research project aimed at increasing people’s ability to rapidly analyze data. Chris Stolte, a Ph.D. candidate, was researching visualization techniques for exploring relational databases and data cubes. Stolte’s Ph.D. advisor, Professor Pat Hanrahan, a founding member of Pixar and chief architect for Pixar’s RenderMan, was the worldwide expert in the science of computer graphics. Chris, Pat, and a team of Stanford Ph.D.s realized that computer graphics could deliver huge gains in people’s ability to understand databases. Their invention VizQL™ brought together these two computer science disciplines for the first time. VizQL lets people analyze data just by building drag-and-drop pictures of what they want to see. With Christian Chabot on board as CEO, the company was spun out of Stanford in 2003.

1

01-ch01.indd 1

30/07/13 4:34 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 1



2



Tableau 8: The O f f icial Guide

While Tableau 8 improves on the previous seven major releases of the software, the core approach to visual design remains the same: connect to a desired data source, and drag various data fields to desired parts of the Tableau screen. The result is a basic visualization that can then be enhanced and modified by dragging additional data fields to different destinations in the workspace. Beyond this basic visualization approach, Tableau’s Show Me feature allows quick choices of predefined visualizations by just selecting relevant data fields and clicking a thumbnail. For more advanced requirements, Tableau features a complete formula language, as well as more robust data connection options. When you first start Tableau, you are presented with the Start Page. The largest portion of the Start Page is reserved for thumbnails of recent workbooks you have used. Simply click on any one of these to open the workbook (like Microsoft Excel, Tableau’s format for storing data on your disk drive is in a workbook, with a .TWB or .TWBX file extension). You may also open sample workbooks included with Tableau 8 by clicking the desired thumbnail at the bottom of the Start Page. Connect to data source

Open previously used workbook

Connect to data source

Return to Start Page

Open sample workbooks included with Tableau

If you want to create a new workbook, you must first connect to a data source (types of data sources Tableau works with include industry standard databases such as Oracle or Microsoft SQL Server, Microsoft Excel spreadsheets, text files, and so forth). Unlike

01-ch01.indd 2

30/07/13 4:34 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 1



Chapter 1: 

I n t r o d u c t i o n t o Ta b l e a u 8

3

spreadsheet or word processing programs, Tableau must connect to some existing data before you can create a visualization. Certain data sources, known as saved data sources, will appear on the left side of the Start Page. These “pointers” to an existing data source can be selected by simply clicking them. If you want to connect to a different data source, click the Connect to Data tab (the tab with the “barrel” icon) in the upper right, or click Connect to Data in the upper left under the Data section. Once you’ve connected to a data source, a new workspace will appear where you can drag and drop desired data fields. Note  Detailed discussion of data connections can be found in Chapter 3.

Tableau User Interface Once you’ve connected to data, a new worksheet, labeled Sheet 1, will appear. You’ll notice that Tableau shares the “multiple worksheets within a workbook” paradigm of Microsoft Excel. A workbook can contain one or more worksheets, with each worksheet denoted by a tab at the bottom of the screen. As with most other standard Microsoft Windows programs, you’ll see a series of drop-down menus and a toolbar. Also, many Tableau functions can be selected from pop-up context menus that will appear when you right-click with your mouse. The left side of a Tableau worksheet contains the Data window, which breaks down data fields in your data source into dimensions and measures. You’ll find a blank visualization containing a single column, row, and center area, each labeled “Drop field here.” The remainder of the worksheet consists of a series of shelves and cards, where you can drag fields to control certain behavior and the appearance of your worksheet.

The Data Window Since all Tableau visualizations start with connection to a data source, the first area you’ll need to become familiar with is the Data window. Fields from your data source appear here, ready for you to drag and drop to relevant parts of the worksheet. In particular, the Data window is broken down into two sub-windows: Dimensions and Measures. Dimensions are categorical fields that tie data together into related groups. Measures are numeric fields that are aggregated as sums, averages, and so forth, for each occurrence of the grouped dimension. For example, if you want to create a bar chart showing total sales for each region, the region dimension will be used to create a separate bar for each region, with the size of the bar being determined by the sum of the sales measure.

01-ch01.indd 3

30/07/13 4:34 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 1



4



Tableau 8: The O f f icial Guide

Note  More details on the Data window, including how to reorganize dimensions and measures, along with detailed discussion of various data types, are available in Chapter 3.

Shelves and Cards Once you’ve connected to data and evaluated available dimensions and measures in the Data window, you’ll need to decide where to drag desired dimensions and measures. You may choose to drag directly on the visualization area where prompted to “Drop field here.” You may also choose to drop on a particular shelf or card. To create a vertical bar chart using the sales-by-region example discussed previously, you would simply drag the region dimension to the top column “Drop field here” area, or the Columns shelf. You would then drag the sales measure to the left of the region columns in the visualization, or the Rows shelf.

01-ch01.indd 4

30/07/13 4:34 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 1



Chapter 1: 

I n t r o d u c t i o n t o Ta b l e a u 8

5

The term shelf is unique to Tableau, and refers to a particular part of the worksheet where you can drag and drop a field from the Data window. The most common shelves are Columns and Rows, as dimensions or measures dropped on these shelves determine the basic layout of your visualization. However, other shelves are used frequently as well. The Filters shelf will narrow down data included in the visualization based on a field that you drag to it. The Pages shelf acts as a modified Filters shelf, allowing you to “page” through values within a dimension or measure to quickly see changes in data. Some parts of the workspace allow more than one function to be modified within the same general area. These are referred to as cards (also a term particular to Tableau). In particular, the Marks card (which has been completely redesigned in Tableau 8) is a single area of the workspace that contains different parts where you can drag and drop fields. For example, you can change the size of marks of your visualization by dropping a field onto the Size icon on the Marks card. You can also change colors by dropping a field on the Color icon on the Marks card. Once you’ve dropped fields on the Marks card, the fields will appear below the original icons where you dropped them. You’ll be able to tell which part of the Marks card the field was dropped on by the associated icon appearing to the field’s left. Note  It’s easy to confuse the terms “shelf” and “card” in Tableau. For example, the Pages and Filter shelves include a “Hide Card” option on their pop-up context menus. And the Rows and Columns shelves include both “Clear Shelf” and “Hide Card” options on their context menus.

Basic Tableau Design Flow Consider the basic bar chart illustrated in Figure 1-1. This is a fairly meaningful visualization, illustrating a comparison of sales by region, broken down by department. Notice the various portions of the worksheet discussed previously, such as the Data window, the Columns and Rows shelves, the Filters shelf, and the Marks card. This visualization was created with a few simple steps. As is always the case with a new worksheet, a data source must be chosen. In this case, the “Sample - Superstore - English (Extract)” saved data source that ships with Tableau 8 is selected. The resulting Data window breaks down available fields into dimensions (that categorize data) and measures (that are aggregated as sums, averages, and so forth). The illustrated vertical bar chart requires a dimension to appear on the Columns shelf and a measure to appear on the Rows shelf. Re-creating this chart involves simply dragging Region from the Dimensions portion of the Data window to the Columns shelf. This will create one “column,” or bar, for each dimension value, or each region.

01-ch01.indd 5

30/07/13 4:34 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 1



6



Tableau 8: The O f f icial Guide

Figure 1-1  Basic Tableau visualization

Then the measure used to determine the height of the bar (in this case, Sales) is dragged to the Rows shelf. By default, Tableau aggregates this measure as a sum, representing total sales as a bar. Note  You may also begin this bar chart by using Tableau double-click options. If you initially double-click the desired measure, it will automatically be placed on the Rows shelf. Then the desired dimension can be double-clicked, which will place it on the Columns shelf, resulting in the same bar chart. Note that the order in which you double-click is significant. If you double-click on the dimension first and the measure second, the result will be a text table and not a bar chart. As the data in the sample data source includes international customers, a large International bar initially appears. As the desire is to only include the four regions of the United States, data must be filtered to include only U.S. sales. This is accomplished by dragging the Country/Region dimension to the Filters shelf. The resulting dialog box allows only United States data to be selected.

01-ch01.indd 6

30/07/13 4:34 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 1



Chapter 1: 

I n t r o d u c t i o n t o Ta b l e a u 8

7

Notice that the region bars are broken down into three different colors (this is often referred to as a stacked bar chart). This is accomplished by dragging the Department dimension onto the Color icon on the Marks card. Note that this field now appears below the icons on the Marks card with a corresponding icon indicating that it was dragged onto Color. The resulting color legend appears on its own card. To help annotate the values represented by each bar stack, the Sales measure is dropped onto the Label icon on the Marks card. The resulting sales amount appears on each stacked bar. As with the Department dimension, the Sales measure is aggregated to a sum and appears below the icons on the Marks card with the corresponding label icon appearing to the left. You may notice that the regions are not appearing in alphabetical order (which is default behavior when initially creating a visualization). Instead, they are appearing in high to low order, based on sum of Sales. While there are several ways to accomplish this, the Sort Descending toolbar button is a very quick way to sort a visualization on its primary value. And, last but not least, don’t forget to give your worksheet a meaningful name. As with Microsoft Excel, Tableau’s default sheet names are the word “Sheet” followed by a number. This is hardly meaningful when dealing with a workbook containing many worksheets. Just right-click on the sheet tab at the bottom of the screen and choose

01-ch01.indd 7

30/07/13 4:34 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 1



8

Tableau 8: The O f f icial Guide

Rename Sheet from the context menu. Or just double-click on the tab and type in the desired sheet name. A nifty Tableau 8 new feature is the ability to color worksheet tabs. Just right-click on the tab and choose Color from the context menu and choose one of several colors to assign to the tab. Tip  Make sure you save Tableau workbooks early and often. Unlike some other applications, there is no auto-save or recovery option in Tableau. If the power fails, or your computer experiences a freeze or hang and you must reboot, you will lose any unsaved work. Video  Introduction to Tableau 8

01-ch01.indd 8

30/07/13 4:34 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 2

2

CHAPTER

Basic Visualization Design

O

ne of the compelling benefits of Tableau is how easily and quickly you can visualize your data. By providing a combination of automatic visual best practices, along with quick, shortcut approaches to visual design, you can create meaningful Tableau visuals in, literally, minutes. And, the more familiar you become with Tableau, the quicker it becomes to create more sophisticated and advanced visuals as well. One of the first choices you’ll make for many visualizations is which basic design method to use. The first option, briefly introduced in Chapter 1, simply involves dragging fields to shelves or double-clicking fields in the Data window. The second option, Show Me, provides a quick way of choosing from a list of predefined visualization types after selecting desired fields in the Data window. Note  Open the Chapter 2 - Basic Visualizations.twbx file in Tableau to see examples that relate to this chapter.

Using Show Me Any time you’re editing a new or existing worksheet, you’ll notice the Show Me tab at the upper right of the screen. Clicking that tab will expand the Show Me dialog box (to close the Show Me dialog box, just click the title bar of the dialog again). Show Me will display a series of thumbnail images representing the different types of charts you can create with just a few clicks. You can use Show Me anytime you want—whether you’ve already created an existing visualization or not. If you’ve already created a chart, Show Me will replace the existing chart with the type you choose in the Show Me dialog box (and, you can undo using the toolbar button or ctrl-z key combination if you want to

9

02-ch02.indd 9

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 2



10



Tableau 8: The O f f icial Guide

Exactly What’s a Dimension and What’s a Measure?

One of the first decisions you make when you create a Tableau visualization is which fields from your chosen data source you’ll use to compose the graphic. The Data window at the left of the Tableau screen automatically places these fields into one of two categories: dimensions and measures. This may raise the question, “What’s the difference?” or “What determines whether a field becomes a dimension or measure?” There’s no designation in the original database or data source (unless it’s a cube data source, such as Microsoft SQL Server Analysis Services) that indicates “dimension” or “measure.” Instead, Tableau makes a fairly basic distinction when examining the incoming fields from your data source: whether the field is numeric or non-numeric. Numeric fields are automatically assigned as measures, and non-numeric (text, date, and so forth) are automatically assigned as dimensions. A dimension is a field that organizes data in Tableau in categories, or “buckets” (Tableau uses the term member to refer to different dimension values). For example, if your data source contains United States data and includes a State field, “State” would become a dimension (it’s not numeric) and would potentially contain 50 members… one for each state. Even if the data source contains lots of records (far more than 50), there would still only be 50 unique state values, or “members,” of the State dimension. A dimension creates distinct divisions on a chart, such as separate bars for all 50 state members. These divisions typically display labels (Tableau refers to them as dimension headers) for each dimension member. Furthermore, Tableau typically treats dimensions as discrete values, consisting of specific, categorical members. You may notice light blue coloring for dimensions in the Data window and field indicators on shelves. While you may think this blue coloring indicates a dimension, it actually indicates a discrete value. As the name implies, a measure is a field that returns a numeric value for measuring something, such as a sales amount or order quantity. Expanding on the previous U.S. data discussion, a Sales Amount measure in the same data source could return far more than just 50 distinct values. In theory, many records could contain a variety of small sales amounts correlating to the smallest items your company sells (maybe even one cent), up to very large amounts for multiple high-priced items. As such, the Sales Amount measure isn’t considered by Tableau to have “members,” but instead contains a range of values, from the very minimum (potentially one cent) to the very maximum (potentially millions of dollars, or more), and every value in between the minimum and maximum.

02-ch02.indd 10

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 2



Chapter 2: 

Basic Visualization Design

11

A measure is usually aggregated to a single value (by default, measures are summed) for each corresponding dimension on a chart. So, using the previous Sales Amount by State example, a bar chart might consist of 50 bars, one for each state dimension member, with the size of the bar represented by the sum of Sales Amount for that state. And, while it’s easy to distinguish discrete dimension members, a measure can have a much larger variety of values. As such, Tableau treats measures as continuous values, consisting of a minimum, maximum, and everything in between. You’ll notice a light green coloring on continuous measures in the Data window and on shelves.

go back to the original chart). If you haven’t created a chart yet, Show Me will create one for you in the current blank worksheet.

While Show Me is designed to be a simple, quick way to create a chart, there are a few fine points you’ll need to know to make the best use of Show Me: •• If every thumbnail in Show Me is dimmed and unable to be selected, you probably are creating a new worksheet and no fields have been selected in the Data window. Select fields you wish to include in your chart, and associated thumbnails in Show Me will be enabled. •• If fields are selected, or you already have a chart created that you wish to change, Show Me will only show chart types that are appropriate for fields that are in use with your current chart or that have been selected in the Data window.

02-ch02.indd 11

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 2



12



Tableau 8: The O f f icial Guide

•• Depending on the number and type of fields selected, Show Me will highlight the recommended thumbnail with a blue box (this is yet another example of Tableau’s attempt to employ visual best practices for you). To use this recommended chart type, just click the thumbnail. If you prefer to use another chart type, just click the desired thumbnail. •• If you hover your mouse over a Show Me thumbnail, the bottom of the dialog box will show the name of the chart type you are hovering over, as well as the number of dimensions and/or measures that are required for that chart type. If you want to use that chart type, just ctrl-click the desired dimensions/ measures in the Data window until the desired thumbnail is enabled. Then, click the thumbnail to create the new chart.

Choosing Mark Types Video  Using the Marks Card No matter which approach you use to initially create a visualization (the drag-toshelves approach or Show Me), Tableau will make some default assumptions about the type of chart created, or more specifically, the mark type that will be used. For example, if you initially use a date dimension for a chart, you will find a line chart (and thus, a line mark type) being chosen by default. Use of a geographic dimension (a dimension with a small globe icon next to it) will typically result in a circle mark type placed on a map background. If you choose no dimensions, but instead choose more than one measure (resulting in a scatter plot), you’ll find the mark type defaults to an open circle. And, a bar mark type will typically result in other combinations of nondate, nongeographic dimension/measure combinations. In all these cases, a mark type of “Automatic” will appear on the Marks card (the dialog box that appears to the left of your finished chart). Again, this is Tableau’s approach to visual best practices; estimating the proper chart type and mark type based on the number and type of dimensions and measures chosen. However, there may be situations where you prefer to alter Tableau’s automatic choices. A very common requirement comes with date or date/time dimensions. As discussed previously, Tableau will choose a line mark type if you choose a date or date/time dimension. Line charts lend themselves to “trend over time” visualizations for a range of dates or date/times—this is a visual best practice. However, if you have a small number of distinct date dimension members you wish to compare (perhaps a “this year versus last year” or “four previous quarters” requirement), you may prefer an alternative to a line chart, such as a bar chart. Accomplishing this is as simple as changing the mark type on the Marks card from Automatic to Bar.

02-ch02.indd 12

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 2



Chapter 2: 

Basic Visualization Design

13

Depending on the mark type you select, other parts of the Marks card may change and require your attention. For example, if you choose a Pie mark type, an additional Angle option will appear on the Marks card. By placing a relevant measure on Angle and a desired dimension on Color, a pie chart wedge will be created for each member of the dimension placed on Color, with the wedge size based on the measure (with the largest aggregated measure value resulting in the largest “piece of the pie”). Maps also have interesting additional Marks card choices. While the default automatic mark type is a filled circle, you may desire some other mark type on a map background, such as a square or shape (a hollow circle being the default shape displayed). You may even prefer to display a filled map, whereby Tableau shades the entire area of a geographic region, such as country or state, by using the Filled Map mark type. Choosing different mark types can result in some interesting (but sometimes ineffective) charts. Feel free to experiment, but keep visual best practices in mind. Remember that you want to effectively convey information about your underlying data. Think about what combination of mark types and chart organization will accomplish this.

02-ch02.indd 13

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 2



14



Tableau 8: The O f f icial Guide

Color, Size, Shape, and Label Options In addition to mark types, the Marks card provides other options to customize the appearance of your chart. The first is color. Again, Tableau builds in visual best-practice adherence with default colors that are chosen for you (in fact, Tableau has hired experts in human visual interpretation to help identify the default color palettes and behavior that are built in to the product). You may choose your own colors, however, by using the Color item on the Marks card.

Choosing Color Options If your visualization consists of only one color (a single-dimension bar chart, a map, or so on), clicking Color on the Marks card will display a color palette dialog. Choose a different color from the palette, or click More Colors to display the standard Windows color palette dialog with precise color choices. You may also set transparency options, as well as choose colors for borders of marks. A halo option is even available that provides a way of shading the edges of certain mark types to make them easy to distinguish (typically, this is useful for large numbers of marks in a chart, such as a map with a large number of circles, or a busy scatter plot). You may also drag a dimension or measure to Color on the Marks card to color your chart based on relevant data. Coloring on a dimension will create distinct color values for each dimension member. As such, you’ll probably want to use a dimension with a small number of members for color (trying to color a “sales by year” bar chart based on a 50-member state dimension will probably prove to be of little use—a four-member region or five-member product type dimension may be more useful). Dragging a measure onto Color will create a shaded-variance color result based on the “continuous” behavior of numeric measures. For example, a profit measure will color the mark in a shaded variation based on whether profit is negative or positive— highly unprofitable bars may appear in a heavy shade of red, while very profitable bars appear as deep green. Moderately profitable bars will appear with a lighter shade of green, and bars that represent products sold at cost will appear with a neutral gray shade. The heat map illustrated in Figure 2-1 is another example of a mark colored via a measure. Regardless of whether you drag a dimension or measure to Color, a color legend will appear below the Marks card. Clicking the small arrow on the legend and choosing Edit Colors from the resulting menu, or clicking Color on the Marks card, will present options for customizing color behavior. Depending on whether a discrete dimension or continuous measure is on Color, the set of available colors will be reduced to those maintaining visual best practices. Furthermore, a set of predefined color palettes will be available for you to use as alternates. For example, the automatic red/green color palette discussed earlier used to distinguish profit may be better replaced with a blue/ orange palette more appropriate for a color-blind audience.

02-ch02.indd 14

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 2



Chapter 2: 

Basic Visualization Design

15

Tip  You may add more than one dimension to Color on the Marks card to create combined color variations. Just ctrl-click or shift-click the dimensions you wish to add in the Data window. Then, drag the group of dimensions to Color. Tableau will create a unique color for every combination of dimension member (because of this, you’ll probably want to use dimensions that have a relatively small number of members to avoid too many colors on the chart). You’ll notice that all dimensions you dragged will appear on the lower portion of the Marks card, each with a color icon. If you later wish to reduce the number of color dimensions, simply drag the desired color dimensions off the Marks card.

Setting Mark Size Depending on the mark type, you may wish to change the size of the mark, either consistently across all marks, or variably, based on another dimension or measure. Clicking Size on the Marks card simply displays a size slider that you may use to adjust the mark size. This is handy if you want to reduce or increase the white space between bars, make circles on a map larger, and so forth. However, by dragging another dimension or measure on Size, you can vary the mark size based on another field. This is handy when you wish to size-encode a mark—perhaps vary the size of a circle on a map based on sales, population, or something similar. Some chart types are based on variable mark sizes by design. The Heat Map is available in Show Me, or it can be designed manually. This alternative to a cross-tab or text table (similar to a spreadsheet) helps analyze a large number of measures in a row/column matrix. However, rather than showing the actual measure value at the intersection of each row and column, the Heat Map displays a shape (typically a square) that represents the value of the measure. By varying the size of the mark by placing a measure on Size, you can make quick comparisons by simply glancing at the size of a mark. Figure 2-1 illustrates the benefit of variable mark sizes.

02-ch02.indd 15

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 2



16



Tableau 8: The O f f icial Guide

Figure 2-1  Heat Map

Choosing Shapes As discussed earlier, Tableau provides an automatic mark type based on the types of fields you drag to shelves or the type of chart you choose in Show Me. One chart type, the scatter plot (available in Show Me, or resulting from initially using measures on rows and columns in your chart), results in a shape being chosen for the automatic mark type. If you don’t create a scatter plot, you may find certain situations where changing the mark type to Shape may be of benefit. By default, an open circle will appear as the initial shape and an additional Shape area will appear on the Marks card. If you click it, a default shape palette will appear, where you can choose an alternative shape. Clicking More Shapes in the shape palette will display the Edit Shape dialog box, where additional shape palettes are available for selection. The default open circle will be replaced by the selected palette/shape combination. The true power of shapes, however, becomes apparent when you drag another dimension or measure onto Shape on the Marks card (generally, you’ll find the most benefit from adding dimensions instead of measures). Tableau then assigns a different shape to each mark to delineate different dimension members or measure values. In addition, a shape legend will appear, showing assigned shapes.

02-ch02.indd 16

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 2



Chapter 2: 

Basic Visualization Design

17

To further customize shapes, click Shape on the Marks card, double-click the shape legend, or click the small arrow on the shape legend, followed by Edit Shape. The Edit Shape dialog box will appear with the currently assigned shapes displayed, as well as palette choices. If you wish to assign a different shape from the current palette to any existing dimension or measure value, select the dimension/measure value under Select Data Item and click the desired shape from the palette. If you wish to use a different palette, select it from the drop-down list. If you wish to assign all new shapes from the just-selected palette, click Assign Palette. Or, you may just choose one shape from a new palette for a particular dimension/measure by clicking the value and then the desired shape; shapes from more than one palette may be assigned this way.

Tip  You’re not limited to just using the available shapes in the palette drop-down list. To add your own custom shapes, obtain or create a series of image files in .png, .gif, .jpg, .bmp, or .tif formats. Generally speaking, you’ll benefit if the images are “icon size,” or around 32 by 32 pixels. And, if you want to color-code the shapes with Color on the Marks card, you’ll benefit from using .png or .gif format with background transparency enabled. Place the images in their own folder (the folder name will be used to name the palette in Tableau) within My Documents\My Tableau Repository\Shapes. If Tableau is running when you add shapes, click Reload Shapes in the Edit Shape dialog box to read the new shape folder.

Text Tables and Mark Labels Although Tableau is designed to present graphical representation of your data, sometimes plain text comes in handy (as proven by the continued popularity of the ubiquitous spreadsheet program introduced in the early 1980s). For these cases,

02-ch02.indd 17

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 2



18



Tableau 8: The O f f icial Guide

Tableau provides the text table (also known as a crosstab). A text table is available in Show Me, or is created automatically if you just double-click two dimensions and then one measure, in that order. The key to a text table is the Text area of the Marks card, which appears automatically with the two dimension, one measure scenario just discussed. Text will also appear on the Marks card if you explicitly replace some nontext mark type, such as bar or circle, with a Text mark type (Label appears in place of Text on the Marks card for non-text mark types, as discussed later in this section). By default, the field displayed at the intersection of each text table row and column is placed on Text on the Marks card. A field appears in the lower portion of the Marks card with the associated text icon. If you wish to display a different field on Text, simply drag the existing field off the Marks card and drag the new one onto Text. You may also click Text on the Marks card and adjust the alignment of the text, as well as customize the actual text displayed. You aren’t limited to displaying a single field in a text table either. Simply drag additional fields onto Text, and they’ll appear next to previously chosen ones. You may also invoke Measure Names and Measure Values to display multiple measures on a text table, as described later in the chapter. Tip  While using Measure Names and Measure Values automatically labels multiple measures, Chapter 4 discusses an innovative way to label multiple fields placed on Text without using Measure Names and Measure Values. Look for the sidebar “Using More than One Measure.” When using a graphical mark type, such as a bar or line, you may find it helpful to still show text around a mark indicating the actual value it represents (to show the value of a bar or point on a line, for example). This is possible using mark labels. Basic mark labels can be turned on with the Analysis | Show Mark Labels drop-down menu option, or the Mark Labels toolbar button. As mentioned previously, non-text-mark types will also display a Label option on the Marks card. Placing a field on Label will add a mark label to the corresponding mark. Using Label on the Marks card provides additional flexibility beyond the toolbar button option. You may place more than one field on Label. For example, you may wish to annotate a pie chart with not only the dollar value of the measure represented, but also the percentage each wedge contributes to the total. Or, you may choose to hide the standard color legend and add the dimension name to Label to place the label on top of each bar of a bar chart, as well as the value the bar represents. Simply drag more than one field onto Label. Changing the order in which fields display is as simple as dragging and dropping the order of fields in the lower part of the Marks card. You may also click Label and customize the mark label display in a number of ways. An edit box allows complete customization and formatting of all chosen labels. And, you may choose which marks to label (all, minimum/maximum only, and so forth) and when to display labels (always, or only when marks are selected or highlighted). And, an option appears allowing labels to overlap adjoining marks.

02-ch02.indd 18

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 2



Chapter 2: 

Basic Visualization Design

19

Tip  You may change the property of any existing field on the Marks card. For example, if you mistakenly drop a field on Color but actually want it on Label, there are two quick options. First, you may just drag the field from the lower portion of the Marks card onto the desired icon. Or, you may click the icon to the left of the desired field on the lower portion of the Marks card. A pop-up menu of available Marks card properties will appear. Choose the desired property you wish to move the field to (in the case of this example, choose Label). The icon next to the field, and the visualization, will change accordingly.

Customizing Tooltips

Tooltips are small pop-up text boxes that appear when you hover your mouse over a mark. By default, tooltips show values for all relevant fields included somewhere on your visualization, as well as clickable action links to create inclusion or exclusion filters, create a group or set (groups and sets are discussed in Chapter 3), and view the underlying data making up the mark.

There are several ways of customizing tooltip appearance. First, you may right-click any field used on the worksheet (on a shelf, on the Marks card, and so forth) and toggle the Include in Tooltip option (this option will not appear if you have customized the tooltip in the Edit Tooltip dialog box, described next). You may also choose the Worksheet | Tooltip drop-down menu option, or click Tooltip on the Marks card to display the Edit Tooltip edit box. You may format various parts of the tooltip text, add more fields (including an All Fields option), and choose whether or not to include the previously described action links in tooltips.

02-ch02.indd 19

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 2



20



Tableau 8: The O f f icial Guide

Formatting Options So far, customized formatting has been limited to options available in text edit dialog boxes. These dialog boxes permit you to select various parts of text and change font and color formatting. However, Tableau also includes complete formatting options for other parts of your visualization, such as marks, headers (column or row headings that appear for each dimension), axes, and so forth. There are several ways to initiate formatting in Tableau. You may choose options from the Format drop-down menu. You may also right-click virtually any kind of Tableau element (fields on shelves, marks, labels, legends, axes, and so forth) and choose Format from the context menu. The Data window will be replaced with a Format Window, as illustrated in Figure 2-2. You’ll notice several small icons at the top of the Format Window. Click the desired icon to change font, alignment, shading, borders, and lines on your worksheet. These icons Choose which type of formatting (font, alignment, and so forth) to perform

Format individual dimensions or measures in worksheet

Select which portion of worksheet to apply formatting to

Figure 2-2  The Format Window

02-ch02.indd 20

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 2



Chapter 2: 

Basic Visualization Design

21

equate to the first five options on the Format drop-down menu. Below the icons are three tabs: Sheet, Rows, and Columns. Click the desired tab to format the overall worksheet, or just row and column items. A small Fields drop-down arrow appears at the upper-right area of the Format Window. Clicking this arrow will expose a list of all dimensions and measures in use on the worksheet. Selecting an individual dimension or measure will allow you to format just occurrences of that field, as opposed to overall formatting for all fields. The previously described Sheet, Rows, and Columns tabs will be replaced with Header/Axis and Pane tabs. Header/Axis formatting applies to dimension labels (or headers), which appear for each member of a dimension. Axis formatting applies to a numeric axis that is associated with a numeric dimension. Pane formatting applies to the actual graphical or text items within your chart. In particular, charts based on more than one dimension will create a series of “panes” within each other, which are formatted via the Pane tab. Panes Axis

Dimension headers

02-ch02.indd 21

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 2



22



Tableau 8: The O f f icial Guide

Formatting in Tableau may require some getting used to, as the organization of the Format Window is different from many other standard Windows applications. Just experiment—if you don’t see the expected outcome, try choosing other combinations of tabs or formatting icons until you achieve the proper results. There is no OK confirmation button in the Format Window, so formatting happens on-the-fly as you choose options. You’ll be able to see the results of your choices immediately and reverse them if they’re not correct. And, you can always resort to the Undo button on the toolbar.

Evaluating Multiple Measures With most basic visualizations illustrated so far, a single measure has been analyzed (with the exception of the scatter plot, which analyzes the relationship between two measures). However, it’s often helpful to compare more than one measure—either comparing two measures on two different “panes” in a visualization, or within the same pane using the same axis. There are several ways of comparing more than one measure. The first is accomplished by simply dragging two or more measures onto the Rows or Columns shelf. The result will be multiple rows or columns, with each representing one measure. Consider the chart shown in Figure 2-3. Here, product category is contained on the Columns shelf, with the

Figure 2-3  Multiple measures on a shelf

02-ch02.indd 22

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 2



Chapter 2: 

Basic Visualization Design

23

sales measure and profit measure appearing on rows. This creates two different rows, with a separate axis, for each measure. This approach provides several benefits: Each measure can be compared across a single row, and the measures can be compared to each other by evaluating the two bars within each product category column. This type of chart is helpful if the two measures are drastically different in values or minimum/maximum scale, as each axis is automatically scaled to accommodate its specific measure.

Shared Axis Charts While the example presented in Figure 2-3 may be appropriate for certain measure comparisons, you may prefer a more direct comparison of multiple measures in the same “pane,” using the same axis. The shared axis chart, illustrated in Figure 2-4, accomplishes this. Here, both sales and profit share the same axis. This provides for a more direct comparison of not only the trend sales and profit take over time, but how profit and sales compare. Creating a shared axis chart, while simple, requires a specific approach. After creating a chart with the first measure, drag the second measure from the Data window onto the existing axis in the work area. Look carefully—you’ll see a “dual axis” icon (two side-by-side green bars) appear in the existing axis. When you see this icon, drop the

Figure 2-4  Shared axis chart

02-ch02.indd 23

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 2



24



Tableau 8: The O f f icial Guide

second measure. Both measures will now appear on the visualization in the same pane, sharing the same axis. You may do this as many times as necessary (as long as too many measures don’t render the chart unusable). Just drag additional measures onto the shared axis.

Dual axis icon to create shared axis chart

Best Practice  While Tableau permits multiple measures of drastically different values and scales to share a single axis, you’ll probably find these visualizations to be of limited use. The drastic difference will require Tableau to scale the shared axis for the larger measure, which may make comparison to the smaller measure difficult. As such, you should only use shared axis charts if the measures are not dramatically different in scale.

Measure Names and Measure Values

Shared axis charts are simple to create—simply drag another measure to an existing axis. However, various shelves and cards in the Tableau workspace suddenly show lots of changes based on this simple drag-and-drop. You’ll now notice several Measure Names and Measure Values fields appearing in various parts of the workspace.

02-ch02.indd 24

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 2



Chapter 2: 

Basic Visualization Design

25

In summary, Measure Names and Measure Values are a way of allowing more than one measure to appear in the same place. Measure Names exposes the names of multiple measures (in the example shown in Figure 2-4, there are two names: the word “Sales” and the word “Profit”). Measure Values exposes the actual values of the measures. In the example shown in Figure 2-4, the two values are sum of sales and sum of profit. You’ll notice that Measure Names is automatically placed on the Filters shelf, even though no data is actually being filtered from the underlying data source. Instead, the Measure Names filter is limiting the measures exposed to just sales and profit—all other measures in the data source will appear in the Measure Names filter, but only sales and profit are checked. And, you’ll notice Measure Values is placed on a shelf to actually expose multiple measures on the same shelf, without creating a new row or column for each measure. Furthermore, Measure Names has been placed on Color on the Marks card in the example illustrated in Figure 2-4 to create different colors for sales and profit.

Another helpful use of Measure Names and Measure Values is when you wish to use more than one measure in a text table/crosstab (text tables are discussed earlier in this chapter). While you may drag more than one measure on Text on the Marks card to add multiple measures to a text table, you may consider Tableau’s automatic doubleclick capability to add more measures. For example, if you drag desired dimensions to Rows and Columns shelves and then simply double-click a measure, the measure will automatically be placed on Text and will appear at the intersection of the row and column dimensions. Instead of dragging a second measure to Text, simply double-click the second measure. Tableau will invoke Measure Names and Measure Values, placing

02-ch02.indd 25

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 2



26



Tableau 8: The O f f icial Guide

Measure Values on Text to show multiple measures in the same place, and Measure Names on Rows to create a separate row for each measure. The added benefit of this approach, when compared to dragging individual measures to Text, is that a single set of headers appears containing the names of the measures. No special effort is required (such as a calculated field or manual editing of the text value) to properly label multiple measure rows or columns.

Note  While you’ll see Measure Names and Measure Values items in the Data window, it’s typically better to let Tableau invoke them automatically with drag-to-axis or double-click functionality described earlier. While you may drag them to shelves and cards directly from the Data window, you’ll probably find lots of additional (and often confusing) effort will be required to achieve the desired end results.

Dual Axis Charts One of the potential pitfalls with shared axis charts discussed earlier is an unacceptable difference in scale of values of the compared measures. Sharing a single axis becomes useless in these cases, as the axis scale required for the larger measure renders comparison to the smaller measure impractical. Tableau solves this problem with dual axis charts, charts that actually can display separate left and right axes. Figure 2-5 shows such an example. Here, sales and order quantity can be reasonably compared in the same physical space. However, there are two separate axes on the chart: the sales axis appears on the left, the order quantity axis on the right. Note the two different scales of the axes, which avoids the issue of comparing dissimilar measures on the same axis. As with shared axis charts, creating a dual axis chart is

02-ch02.indd 26

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 2



Chapter 2: 

Basic Visualization Design

27

simple, but requires one of two specific steps. First, drag the second measure from the Data window onto the right side of the existing chart in the work area. Look carefully— you’ll see a “single axis” icon (one green bar and a dashed line) appear on the right of the chart. When you see this icon, drop the second measure. You may also drag the second measure to the Rows or Columns shelves directly after the first measure. This will initially create a second row or column for the new measure. Now, right-click or select the drop-down menu arrow on the second measure indicator and choose Dual Axis from the context menu. This will place the second measure on its own axis on the right side of the chart.

Single bar icon and dashed line on right side of chart creates second axis

Note  As mentioned earlier, dual axis charts allow dissimilar measures to be analyzed in the same physical space. There is a potential pitfall, however. Since the different measures are displayed using separate axes, data “confusion” may result when comparing them. For example, if the scale of the left axis is showing millions of dollars, while the scale of the right axis is showing hundreds of orders, it may appear that orders being displayed are in the millions, or dollars being displayed are in the hundreds. While you may right-click the right axis and choose Synchronize Axis to set the scale for both axes to be identical, you have then eliminated one of the benefits of a dual axis chart by scaling both measures’ axes identically. You’ll need to consider the benefit of a dual axis chart against the possible data confusion of different axis scales in the same physical space.

02-ch02.indd 27

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 2



28



Tableau 8: The O f f icial Guide

Figure 2-5  Dual axis chart

Multi-Measure Marks Card Fine Points

In the dual axis example presented earlier, you may have noticed invocation of Measure Names but not Measure Values. In this case, Tableau automatically placed Measure Names on Color on the Marks card to set individual colors for the two measures. However, a closer look at the Marks card in this example reveals something new: a Multi-Measure Marks card. The previous example of two separate measures on the Rows or Columns shelf will also result in the same situation. When multiple measures are used on a visualization (with the exception of a shared axis chart), the Marks card will expand to show an All option, as well as options for individual measures. Click All or the desired measure you wish to modify. A separate Marks card will appear for your choice. All measures will be affected by choices you make in the All card (Measure Names sets separate colors if used on the All card). However, only the chosen measure will be affected when you select its corresponding Marks card.

02-ch02.indd 28

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 2



Chapter 2: 

Basic Visualization Design

29

Multi-measure Marks cards come in handy for creating a variation of the dual axis chart known as a combination chart. Like a dual axis chart, a combination chart displays more than one measure on separate axes. However, each measure uses a different mark type. For example, by selecting the Marks card for the second measure and choosing something other than an automatic mark type, you may maintain the default line chart for the first measure on the left axis, but display a bar chart for the second measure on the right axis. Color options may be set separately as well.

02-ch02.indd 29

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 2 Blind Folio 30

This page has been intentionally left blank

02-ch02.indd 30

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3

3

CHAPTER

Data Connection Details

A

s discussed in Chapter 2, the very first requirement when creating a new Tableau workbook is choosing a data source. Unlike traditional spreadsheet and word processing programs, Tableau can’t start with a “blank slate”; it must connect to some existing database, data file, or data source before you can begin to design a chart or graph. Tableau’s entire paradigm is visualizing data—the first thing you have to do is pick the data! Note  Open the Chapter 3 - Data Connections-Groups-Sets-Blending.twbx file in Tableau to see examples that relate to this chapter.

Connecting to Various Data Sources When you first start Tableau, you are presented with a wide array of “places to start,” including the ability to pick a previously used workbook from a series of thumbnails, open an existing workbook from either the recent file list or Open entry on the File Menu, or select existing sample workbooks from the bottom of the home screen. There are several approaches to creating a new workbook as well. The File | New drop-down menu option will display a new workbook in the Tableau workspace, but without any fields appearing in the Data Window—you will have nothing to drag to shelves. In this instance, you’ll need to click the Connect To Data option at the top of the Data Window, or use the corresponding Data | Connect To Data drop-down menu choice. You may also create a new workbook based on a chosen data source directly from the Tableau home screen. Just select Connect To Data in the upper left, or click the data tab (the tab displaying a small barrel icon) in the upper right. In all cases, the Tableau workspace or home page is replaced with the Connect To Data Window.

31

03-ch03.indd 31

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



32



Tableau 8: The O f f icial Guide

Tip  If your version of Tableau only presents the “In a file” selection of data sources and not the “On a server” selection, you have probably purchased Tableau Personal Edition. This version of Tableau is designed specifically for analysis of a limited set of PC-based “local” data sources, such as text files, Microsoft Excel and Access, and Tableau Data Extracts. If you need to analyze data located in standard corporate databases, such as Microsoft SQL Server or Oracle, or web-based data sources, such as SalesForce.com or Google Analytics, you’ll need to purchase Tableau Professional Edition. Only Professional Edition presents the “On a server” list of data sources. Tableau supports connections to many different databases and data sources, including standard corporate databases; newer “big data” data sources, such as various versions of Hadoop and Google Big Query; and web-based data sources,

03-ch03.indd 32

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



Chapter 3: 

Data Connection Details

33

such as Salesforce.com and Google Analytics. Even if the particular database you wish to connect to isn’t in the list of existing data sources, Tableau will connect to data via Microsoft’s Open Database Connectivity (ODBC) connection type. If your data source includes a standard ODBC driver, Tableau can probably connect to it. Select the type of data source you wish to connect to. An associated connection dialog box will appear, prompting you to choose various data source properties. Depending on the data source, you’ll need to provide a user name or e-mail address, password, server location, database name, and so forth. For example, to connect to Microsoft SQL Server, you’ll need to specify a server name, user ID and password (if not using Windows Authentication), and database name.

A different type of connection dialog will appear when you connect to web-based data sources. For example, connecting to Salesforce will present a significantly different dialog. You are still prompted for a user name, password, and server, but the list

03-ch03.indd 33

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



34



Tableau 8: The O f f icial Guide

of database/table options is different than that presented by a standard corporate database.

Note  Although a data source may appear in the list, connecting to it may require downloading additional drivers from the Tableau website. If a driver download is necessary, a dialog box indicating such will appear when you attempt to connect to a data source. Visit TableauSoftware.com/drivers to find additional drivers and try the connection again after the proper driver has been downloaded and installed. Video  Choosing Data Connections Regardless of which data source you use, Tableau eventually organizes data into one or more tables. A table consists of a single set of data items that relate to one particular function or category of data. For example, in an inventory database, there may be tables dedicated to ReorderLevel, OnHand, MasterInventory, and similar inventory-related functions. A payroll database may present Employee, Paycheck, Deduction, and PayPeriod tables. Choosing the proper table or tables is key to getting the right data for your charting need. Various data sources present table choices somewhat differently. In the SQL Server example presented previously, a Single Table

03-ch03.indd 34

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



Chapter 3: 

Data Connection Details

35

choice allows you to add just one table to your workbook. However, the Salesforce connection dialog illustrated previously offers a Standard choice, which will add multiple related tables automatically, or a Single Table choice to permit adding just one table. Once you pick a table and click OK to close the connection dialog, the Tableau workspace will appear with the Data window breaking down fields from the chosen data source as dimensions and measures (a complete discussion of dimensions versus measures, and how Tableau chooses them, appears in Chapter 2).

Adding and Joining Multiple Tables from the Same Database While it may be possible to create meaningful charts and graphs with a single database table, it’s not uncommon to require several (and sometimes many) tables to gather all the necessary data for your visualization. For this purpose, you must add more than one table and join the tables together on one or more common fields. When you connect to your data source, the connection dialog box will provide several radio buttons that allow you to choose a single table or multiple tables. The Single Table option is simple; just pick one of the available tables from the table list and click OK. That table will be added to the Data window, where you may choose fields to chart. However, if you need to use more than one table, the Multiple Tables radio button presents more advanced choices, including the requirement to join tables together. Begin by choosing the first table you want to add to the Data Window before you click the Multiple Tables radio button (you may remove a table later if you accidentally start with the wrong table, but it will save time if you pick the desired table first). Click Multiple Tables. The existing table will continue to appear, but additional buttons (Add Table, Edit, Remove, and Preview Results) will also appear.

03-ch03.indd 35

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



36



Tableau 8: The O f f icial Guide

Caution  In addition to Single Table and Multiple Tables radio buttons, some data sources will allow you to create custom SQL with a corresponding radio button. While there may be benefits (and sometimes a requirement) to base a Tableau visualization on a custom Structured Query Language query, you may see significant performance degradation as you interactively drag and drop fields in the workspace. In these situations, you may consider extracting the results of the custom SQL (extracting data is covered later in the chapter) for improved performance. Click Add Table. An Add Table dialog box will appear showing additional available tables in the data source. Click each table to see a list of fields available in that table. Once you’ve found the table you’d like to add, you may optionally change the table alias (a substitute name you can use for the table if the default table name conflicts with another table or is difficult to understand), as well as select or deselect fields from the table that you want included in the Data window. You may also assign a field alias (a substitute field name you can use for a particular field if the name conflicts with a field in another table or is difficult to understand) by double-clicking the field in the Table Fields list. Once you have made these choices, click the Join tab to join the new table to an already existing table.

Tableau will attempt to join your selected tables automatically on a common field name—you’ll see a join clause already appearing that ties the two table fields together. However, it’s possible that fields that are named identically in the two tables aren’t the proper fields to be used for the join (date and timestamp fields are often named the

03-ch03.indd 36

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



Chapter 3: 

Data Connection Details

37

same, but aren’t proper join fields). It’s also fairly common that the proper join field (or fields—joins may require more than one field) is not named identically and won’t be automatically chosen by Tableau. If the existing join clause is incorrect, select it and click the Delete button. Then, examine the two tables and available fields under the Add Join Clause section of the dialog box. Make choices based on these considerations: •• What common field exists between the two tables? Both fields should be the same data type (string, number, date, and so forth) and should contain similar values. If you need to browse table data, click the browse button to the right of each table name. •• Select the correct matching fields under each table. •• Choose a join operator from the drop-down list. Typically, you’ll leave the default equals sign as the join operator, which will match data from the two tables when the common fields are equal to each other. However, in some specialized cases, you may need to return data from the tables when the first join field is less than the second field, greater than the second field, and so forth. Make the desired choice from the dropdown menu. •• Choose a join type from the Join Type drop-down menu. By default, Inner is chosen, which will return a combined record when the join field matches in both tables. If you choose Left, all records will be returned from the left table (the table that appears in the join clause first), as well as matching records from the right table. If there is no matching data from the right table for a left table record, right table fields will be null. If you choose Right, all records will be returned from the right table (the table that appears in the join clause second), as well as matching records from the left table. If there is no matching data from the left table for a right table record, left table fields will be null. Full, which is not supported for all data sources, will return all combinations of matches from both left and right tables. If there is no match from one table to another, fields from the mismatched table will be null. Once you’ve made all choices, click OK. The Add Table dialog will close and you’ll notice the table you just added in the multiple tables list. If you need to add and join more tables, click Add Table and make table/join choices as many times as necessary. When you have finally added and joined all necessary tables, click OK to close the connection dialog box and display all chosen tables and fields in the Data window.

03-ch03.indd 37

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



38



Tableau 8: The O f f icial Guide

Note  In some cases, you may benefit from gathering data from tables from different databases. This requires data blending, which is discussed later in this chapter.

Customizing Your View of the Data It can be said that there are two fundamental requirements to successful data analysis in Tableau: learning to use Tableau to its fullest potential, and learning the underlying data source or database. While you may be very familiar with Tableau’s features and capabilities, a new database that you haven’t worked with before can be very daunting and complicated. A standard corporate database may consist of hundreds of underlying tables, each containing a significant number of fields. Depending on how the database is designed, the table and field names may be cryptic and unfamiliar. And, required fields for joining tables may be ambiguous. This complexity can cause even the most experienced Tableau analyst to shy away from a visualization project, as the underlying database may prove too complex. One of the ways that database designers and vendors simplify the organization of complex database structures is through the use of metadata. Metadata is a broad term that generally covers a simplified view of a complex database. By reducing the number of database tables to only those required for typical analysis (and by renaming them to be more intuitive), by pre-joining tables in advance, and by only including fields necessary for typical analysis (and renaming them to be meaningful), metadata can make complex databases easy to understand and analyze. While you may consider Tableau to be primarily a data visualization tool, it features many metadata capabilities that can greatly simplify the complexity of an underlying data source.

Modifying Tableau’s Default Field Assignments As discussed in Chapter 2, Tableau uses a field’s data type to determine whether to categorize a field as a dimension (non-numeric field) or measure (numeric field). While this automatic assignment is usually appropriate, there are times that you’ll need to override Tableau’s defaults. For example, a numeric key field may be more appropriately categorized as a dimension instead of a measure, as it will act as a unique key. Recategorizing a measure as a dimension is as simple as dragging it from the Measures area in the Data window to the Dimensions area. Recategorize a dimension as a measure using the same approach. Just drag it to the Measures area. The dimension will be moved to the Measures section of the Data Window with a default aggregation of Count. If a numeric value has been interpreted by the underlying database, and Tableau, as a text field (you’ll notice the small abc icon next to it), converting it to a measure alone will not convert it to a numeric value that can be summed. You’ll need to also right-click and choose Change Data Type | Number from the context menu, and then choose the desired default aggregation from the same menu.

03-ch03.indd 38

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



Chapter 3: 

Data Connection Details

39

Hiding, Renaming, and Combining Fields Even though the ability to change table and field aliases exists when first connecting to a data source, you may find a need to rename fields even after a data source connection has already been made. For example, a field with the same name may appear in more than one table and, as such, has been annotated with the table name to avoid ambiguity. Or, field names may simply be unintuitive, as database designers may not always keep simple fieldnaming concepts in mind when databases are initially designed. And, fields may have been added en masse with a number of tables that later are not required for common analysis tasks. These unneeded and hard-to-understand fields don’t lend themselves to common data analysis tasks. To hide a field that you no longer wish to use, simply right-click the field in the Data window and choose Hide from the context menu. The field will simply disappear from the Data window. You may hide as many fields as necessary, even ctrl- or shift-clicking multiple fields and choosing Hide from the combined context menu. You may even hide all fields that aren’t being used in a worksheet once you’ve completed your chart. Just right-click a blank portion of the Data window (make sure no fields are selected) and choose Hide All Unused Fields. If you later wish to redisplay fields that were previously hidden, you must perform a two-step process. First, right-click a blank portion of the Data window (make sure no fields are selected) and choose Show Hidden Fields. All previously hidden fields will now appear in the Data window, but will be dimmed. Select one or more hidden fields, right-click, and choose Unhide from the context menu. Renaming fields is very straightforward. Simply right-click a field you wish to rename and choose Rename from the context menu. A Rename Field dialog will appear. Just type in the desired field name and click OK. If you later decide to restore a field to its original name, right-click again, choose Rename, and then click Reset in the Rename Field dialog. If you need to combine the contents of more than one dimension into a single value (sometimes referred to as concatenation), it’s easy.

03-ch03.indd 39

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



40



Tableau 8: The O f f icial Guide

Just ctrl-click or shift-click the dimensions that you wish to combine. Then, right-click and choose Combine Fields from the context menu. A new dimension will appear in the Data window, initially named based on the field names of the combined fields. If you wish to rename the new dimension, right-click it and select Rename from the context menu. When the combined dimension is used in your worksheet, every combination of members from the source dimensions will result in a new combined member.

Using Clipboard Data Sources

When you look at the list of available data sources on the Connect To Data screen, you may be under the impression that the only way to make use of data is to ensure that it is in one of these formats. In fact, it’s possible to “cut and paste” data directly into Tableau via the Windows Clipboard. Consider the World Population web page illustrated here. Note that a standard “table” organization exists, with each country comprising a row, and country name and population for four years spread across five columns. Notice that the table has been highlighted, including the first row containing labels for the country and year columns.

03-ch03.indd 40

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



Chapter 3: 

Data Connection Details

41

Making use of this data in Tableau is as easy as copying the highlighted data to the Clipboard via the browser’s Edit | Copy drop-down menu option or ctrl-c keyboard shortcut. Then, choose an existing workbook where you wish to use the data, or just display the Tableau home screen. Then, choose Data | Paste from the Tableau drop-down menu, or simply press the ctrl-v keyboard shortcut. Tableau will create a new data source in the Data window (labeled Clipboard, followed by a unique number) and display all pasted fields in a new worksheet, as illustrated here.

In some cases, Tableau may perfectly interpret data in the pasted table and properly identify data types and dimension and measure assignments. However, in other cases, misinterpretation may occur. In this example, notice that while the general row and column format of the pasted data is intact, there are several issues that will prevent the data from being properly used in Tableau: •• An extra column was copied from the web page that contains no usable data. It has been named “NoName” by Tableau. •• Population values have been identified by Tableau as strings instead of numbers, and have therefore been classified as dimensions instead of measures. (continued)

03-ch03.indd 41

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



42



Tableau 8: The O f f icial Guide

Fixing these issues is fairly straightforward, making use of previously described techniques for customizing a data source: •• The NoName field has been removed from a shelf and then hidden via the right-click | Hide context menu. •• The 2008, 2009, 2010, and 2011 fields have been reclassified as numeric fields instead of strings by using the Change Data Type option that appears when right-clicking the field name. Once converted to numbers, these same four fields have been reclassified as measures via the same context menu. The result is a far more usable data source, allowing a population map to be created by use of the geographic country field and one of the yearly population measures.

Once you’ve done any necessary data source modifications and saved the associated workbook, the Clipboard data source will be saved in a tab-delimited

03-ch03.indd 42

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



Chapter 3: 

Data Connection Details

43

file. You may then reuse (or extract) that file for further use in other workbooks. A dialog box will confirm saving of the Clipboard data source.

Changing Default Field Appearance Tableau provides several default properties and behaviors for a field, depending on its data type. For example, numbers take on a certain default number format, dates are automatically formatted with a certain month/day/year organization, numeric measures are automatically summed when added to the worksheet, and dimensions are assigned default colors based on Tableau’s built-in visual best practices. If you wish to change any of these defaults, make choices from a field’s context menu Default Properties option. For example, you may change the default colors that Tableau will assign dimension members. Or, if you prefer a different default date format, choose Date Format. If you’d rather display the average for a numeric measure by default instead of a sum, select a different Aggregation option. And, you may add a descriptive comment that will appear when you hover your mouse over the field in the Data window. The Comment option is helpful for providing descriptive background information for a field.

Using Hierarchies, Groups, and Sets So far, this section of the chapter has discussed fairly straightforward ways of modifying the view of your underlying data source (the metadata) to make the data source easier to understand and analyze. There are more advanced options, however, to customize the way the data source is organized. While these advanced options aren’t strictly considered to be part of the custom metadata, they can be saved in a customized data view (discussed later in the section “Saving and Sharing Metadata”). As such, they are important to consider when you are customizing metadata for your use or to be shared among other Tableau users in your organization.

03-ch03.indd 43

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



44



Tableau 8: The O f f icial Guide

Building Field Hierarchies

A hierarchy is a from-the-top-down organization of related dimensions. By default, Tableau displays date or date/time fields in a hierarchy. So, if you drag a date field to a shelf, the date will initially be rolled up to year. You can then click a plus sign on the date field indicator to expand the date hierarchy from year, to quarter, to month, to week, to day, and if time is included, from hour, to minute, to second.

You may have other related nondate dimensions that lend themselves to a hierarchy. For example, you might have a series of separate geographical fields, such as country, state, county, city, and ZIP code, that lend themselves to a natural hierarchy. Or, you may prefer to create a hierarchy to navigate from division, to region, to sales team, to salesperson. Creating your own hierarchies in Tableau is surprisingly easy. Simply drag the “inner” dimension on top of the “outer” dimension. For example, if you are creating the geography hierarchy discussed previously, drag State on top of Country. The Create Hierarchy dialog box will appear, prompting for a name for the hierarchy (with the default name being the fields you dragged and dropped). Give the hierarchy

03-ch03.indd 44

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



Chapter 3: 

Data Connection Details

45

a more meaningful name (such as “Geography”) and click OK. Notice that the Data window now contains the hierarchy you created, preceded with a plus sign. Click the plus sign to expand the hierarchy and expose the dimensions within it. Drag additional dimensions inside the existing hierarchy. If you happen to drag the dimensions in the wrong order, simply drag and drop within the hierarchy to reorder dimensions properly. If you drag a dimension into the hierarchy by mistake, just drag it back out. To completely erase a hierarchy, right-click the hierarchy name and choose Remove Hierarchy from the context menu.

Once you’ve created your own hierarchy, drag the hierarchy name onto a shelf. Notice that the top-level dimension in the hierarchy is displayed on your visualization and that a plus sign appears on the field indicator on the shelf. As with the previously illustrated date hierarchy, plus and minus signs on the field indicators can be used to navigate through the hierarchy. You may also drag an inner field from the hierarchy to a shelf. Navigation will be available from that field on down.

Creating and Modifying Groups

Although not purely a metadata function, groups allow you to organize data in a more logical fashion, as well as accommodating certain types of data inconsistencies, perhaps resulting from data entry errors. Any custom groups you create are saved with a custom data connection so that they may be reused and shared within your organization. A group is a reorganized set of dimension members. For example, your data source may contain data broken down by state, but a data entry error places some data in a state labeled CO and other data in a state labeled Colorado. These may be combined into a single dimension member. Or, if you wish to analyze data by salesperson territories (and these territories don’t exist in your data source), you can create salesperson territory groups based on state. You could highlight Montana, Wyoming, Colorado, Utah, and Arizona and create a “John Doe” group. California, Oregon, Washington, Nevada, and Texas could be placed in a group named “Jane Smith,” and so forth. You may then use either the original state field or the new group to analyze data. And when you save the data source, the group is saved with it for use in other workbooks.

03-ch03.indd 45

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



46



Tableau 8: The O f f icial Guide

There are two ways to create these kinds of groups: by selecting dimension headers on an existing worksheet, or by using the Create Group option in the Data Window. To use an existing worksheet, ctrl- or shift-click the group member headers you wish to combine (it’s important that you click the names of the members—the headers—and not the actual marks, as you’ll see later in this section). Then, with your mouse hovered over one of the selected headers, click the paper clip icon in the tooltip. You may also click the group (paper clip) button on the toolbar. Or, you can right-click the header and choose Group from the context menu. The selected dimension members will be combined into a new single member consisting of the names of the original dimensions and a new group dimension will be created in the Data window (the group will be named the same as the original dimension with a group designation appended to it). In addition, the original dimension on any worksheet shelves will be replaced by the new group dimension. From this point forward, you may analyze either the original dimension by dragging it to an appropriate shelf or the new combined group by dragging it to a shelf. Several options are available to customize the new group: •• To ungroup the just-combined members, select the header of the combined member and click the paper clip again. Or, right-click and select Ungroup from the context menu. While this will return members to their original separate locations, the group will remain in the Data window and on a worksheet shelf. •• To change the name of the new combined group rather than maintaining the list of original member names, right-click the new member header and choose Edit Alias from the context menu. Type in the new name you wish to appear for the combined group. •• To add a combined member to the group, select additional original members as you did previously and use the same paper clip or context menu options as before. A combined member will be added. •• To add original members to an existing combined member, select the original members you wish to add, as well as the existing combined member. Use the paper clip or menu options to add. •• To combine one or more already combined members, select the combined members and use paper clip or menu options. They will be combined into yet another new combined member consisting of everything in the original combined members. In addition to manipulating groups on the worksheet, you may create and modify groups in the Data window. Begin by selecting the original dimension you wish to group. Then, right-click and choose Create Group from the context menu. The Create Group dialog box appears, displaying the original dimension members for the chosen dimension. Select the existing members you wish to combine with shift- or ctrl-clicks (if the dimension has a large number of members, you may wish to click the Find button and add search criteria to find the members you want to select). Then, click the Group button. The selected members will be combined into a new member consisting

03-ch03.indd 46

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



Chapter 3: 

Data Connection Details

47

of the names of the selected members. If you wish to rename the new combined member, simply hold your mouse button down on the name for a second or so, or select it and click the Rename button. Type in the desired name for the combined member. You may also change the default name of the group (initially, the name of the dimension the group is based on, followed by the word “group”) by selecting the Field Name portion of the dialog box and typing in a new name.

When you’ve finished customizing the group, click OK. The new group will be added to the dimension list in the Data window. You may now analyze with the original dimension by dragging it to a shelf, or the new group by dragging it to a shelf. When you first create a group, or if you select an existing group in the Data window, right-click, and choose Change Group from the context menu, there are several fine points that can help you maximize use of the group dialog box: •• To expand or contract combined members, double-click the plus or minus sign to the left of the combined member. When expanded, you’ll see the original members that have been combined into the new member. •• To ungroup a combined member, select the combined member next to a plus or minus sign and click the Ungroup button. •• To create another combined member, select additional original members as you did previously and click the Group button again. A new combined member will be added.

03-ch03.indd 47

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



48



Tableau 8: The O f f icial Guide

•• To add original members to an existing combined member, select the original members you wish to add. Then, either drag them inside the existing combined member, or choose the existing combined member you wish to add them to from the Add To drop-down list at the upper right of the dialog box. •• To combine one or more already combined members, select the new combined group members and click the Group button again. They will be combined into yet another new combined member. •• To create an “Other” combined member that contains all original dimension members that weren’t placed in any combined members, click the Include “Other” checkbox. All remaining original members will be combined into one last combined member named Other. There is a third variation on grouping (referred to informally as visual grouping) that you may prefer for quick visual delineation of group members. As mentioned earlier in this section, when creating combined group members on the worksheet, you should select the actual member names/headers, not the marks (bars, circles, and so forth). If you do select marks instead of headers (with ctrl- or shift-click, or by dragging over multiple marks), then Tableau behaves somewhat differently. Once you’ve selected desired marks, click the group (paper clip) button in the tooltip that appears, click the group (paper clip) toolbar button, or right-click and choose Group from the context menu. As discussed previously, the selected dimension members will be combined into one new member in a new group, which will be placed in the Data window. However, contrary to earlier steps when headers were selected, the new group will not replace the original dimension on a shelf. Instead, the new group will be placed on Color on the Marks card with the originally selected members now showing a different color than the “Other” members (this method of group creation uses the previously discussed Include Others option by default).

03-ch03.indd 48

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



Chapter 3: 

Data Connection Details

49

As before, the name of the new combined member will be a list of the original member names. You may edit the newly created group in the Data window to provide a more appropriate name. Or, you may simply select the name in the color legend, right-click, and choose Edit Alias. Type in the new name for the combined member. There are some fine points for using this “visual” method of grouping as well: •• To ungroup the just-combined members, select one or more of the already grouped marks. When the tooltip appears, you’ll notice that the previous group paper clip icon now displays a small x, indicating that it now functions as an ungroup button. You may also right-click and select the Ungroup option from the context menu. •• To add a combined member to the group, select additional original members’ marks as you did previously and use the same paper clip or context menu options as before. An additional combined member will be added to the group, which will create an additional color. •• To add original members to an existing combined member, select the original marks you wish to add, as well as at least one mark from an existing combined member. Use the paper clip or menu options to add. •• To combine one or more already combined members, select all the marks from existing combined members and use paper clip or menu options. They will be combined into yet another new combined member consisting of everything in the original combined members.

03-ch03.indd 49

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



50



Tableau 8: The O f f icial Guide

Working with Sets

Although not purely a metadata function, sets are a way of narrowing down analysis to subsets of all the data in your original data source. Any custom sets you create are saved with a custom data connection so that they may be reused and shared within your organization. A set is a smaller subset of all the data in your underlying data source. For example, a set may consist of just five salespeople that are underperforming. Or, another set could contain all products that have an on-hand quantity at or below a reorder level. While you may confuse sets with groups, it’s important to understand that groups combine multiple dimension members into one combined member, whereas sets simply narrow down to the selected dimension members—they are not combined. Once sets are defined, they can be used as filters, placed on the Color shelf or other parts of the Marks card, and so forth to help analyze the subsets of data that you’ve defined. There are two types of sets you can create in Tableau. The first, a constant set, contains a specific set of dimension members. An example of this type of set is one that specifies five salespeople who are underperforming. You may use this constant set to analyze, color, filter, and so forth, based on the five specific salespeople you’ve added to the set. Even if one of the salespeople improves their sales dramatically, they’ll remain in the set until you manually edit the set and remove them. The second type, a computed set, uses a conditional formulaic expression to define what the set contains. For example, a set can be defined that determines products that need to be reordered by comparing the Quantity_On_Hand database field to the Reorder_Level database field using a less-than operator. Any product dimension members that meet that condition will be included in the set. As data changes, different dimension members may be added to or removed from the set automatically based on changing on-hand quantities or reorder levels. There are several ways of creating a constant set. If you already have a chart defined in your worksheet, you may select as many marks or headers as you’d like to add to the set via ctrl- or shift-click, or by dragging to highlight a series of marks (in a scatter plot, for example). From the tooltip, click the Create Set button. Or, right-click and choose Create Set from the resulting context menu.

The Create Set dialog box will appear with the dimension members you selected appearing as a list (if your visualization contains multiple dimensions, they will appear in separate columns). If you wish to remove an entire dimension in a multidimension set, hover your mouse over the column heading of the dimension and click the red X.

03-ch03.indd 50

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



Chapter 3: 

Data Connection Details

51

And, any dimension members may be removed by hovering over the row and clicking the red X. Give your set a meaningful name by typing it in in the Name area. If you wish to immediately filter your worksheet by the new set, check the Add To Filters shelf. Click OK to create the set. The new set will appear in the Sets area of the Data window. Like any other field in the Data window, you may drag the set to a shelf or to a portion of the Marks card to analyze only the data included in the set.

You may also create a set by right-clicking an existing dimension in the Data window and choosing Create Set from the context menu. The Create Set dialog box will appear containing three tabs: General, Condition, and Top. The General tab will simply list all the members of the dimension. Just click as many members as you wish to add to the set and click OK. However, if you want to create a computed set, select either the Condition or Top tab and select some sort of condition, based on the dimension itself, or a measure. For example, to create a set containing all products whose on-hand

03-ch03.indd 51

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



52



Tableau 8: The O f f icial Guide

quantity is below the reorder level, click the Condition tab, click the By Formula radio button, and enter the proper comparison formula in the text area (you may also click the ellipsis button to display the Calculated Field Editor).

Note  Details on calculated fields and formulas may be found in Chapter 7. One feature of sets that you will find handy in overall set analysis is the In/Out feature. Depending on where you use a set (dragging a set to Color on the Marks card is a prime example), your chart will break data down into “in set” and “out of set” delineations. For example, if you create a text table that includes Product Name, On Hand Quantity, and Reorder Level, you may place the previously illustrated set on Color to highlight which items are “in” the set (need to be reordered) and “out of” the set (those that have sufficient quantity on hand). If you prefer to highlight the actual members that make up the set rather than whether items are in or out of the set, click the context arrow on the set’s field indicator on the shelf and choose Show Members In Set.

03-ch03.indd 52

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



Chapter 3: 

Data Connection Details

53

Caution  The “in set” and “out of set” capabilities just described, as well as the ability to use sets in calculated fields, are not available with Microsoft Excel or Microsoft Access data sources. If you wish to use these capabilities with an Excel or Access data source, extract the data source (as described later in this chapter), as these set capabilities are available with Tableau Data Extracts.

Saving and Sharing Metadata So far, this chapter has discussed myriad ways of modifying the “view” of your data source (the metadata). When you save the workbook, this metadata is saved within it—the next time you open the workbook, the Data window will appear just as it was when the workbook was saved. However, once you’ve expended a fair amount of effort customizing this metadata, you very probably would like to save it for use with new workbooks you create in the future. In fact, if more than one person in your organization uses Tableau, you may want to share it with them as well. Enter the Tableau Data Source File.

03-ch03.indd 53

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



54



Tableau 8: The O f f icial Guide

Combined Sets

If you remember math class from your grade school years, you may remember the teacher drawing intersecting circles on the whiteboard while conducting a discussion of sets. That knowledge may come in handy as you work with Tableau, as Tableau allows creation of combined sets. A combined set is a set that uses two existing sets to create some combination of members from both sets. Perhaps you wish to analyze customers that order high dollar amount products, but that also are responsible for significant returns. If you have created two distinct sets for each of these customer categories, you may combine them for more thorough analysis. To create a combined set, ctrl-click the two existing sets in the Data window. Right-click and choose Create Combined Set from the context menu. The Create Set dialog box will appear, but with a different organization than previously illustrated. Give the combined set a meaningful name, and then choose the intersection of the two original sets that you wish the combined set to return (the four icons will take you back to those school days). Click OK when finished. A new combined set will appear in the Sets area of the Data Window that you may drag and drop onto your visualization.

A Tableau Data Source File is a separate file saved on your hard disk with a .tds extension. This .tds file contains the “view,” or metadata, you have created, including renamed fields, hierarchies, groups, and sets. The original data source file, or database, that the .tds file is based on remains unchanged in its original location. You may then connect to the .tds file in the future to reconnect to the original data source or database it references, but with your customized view of the data. To save a .tds file, right-click the data source name at the top of the Data window and choose Add To Saved Data Sources from the context menu. You may also use the Data | | Add To Saved Data Sources drop-down menu option.

03-ch03.indd 54

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



Chapter 3: 

Data Connection Details

55

A standard Windows Save As dialog box will appear, prompting you for a filename. Notice the default .tds extension. By default, the directory will be My Tableau Repository within your personal Windows folder. Tableau Data Source Files placed in My Repository will automatically appear on the Tableau home screen from that point forward. However, since others in your organization will be using their own personal repository folders, you may choose to save the .tds file in another shared location, such as a shared network drive. In that instance, you (and others in your organization who want to use the shared .tds files) will need to use the File | Open drop-down menu option in Tableau to open .tds files not in their repositories. If your organization has access to Tableau Server, you may also save .tds files there for sharing among your other Tableau users. Right-click the data source name at the top of the Data window, or use the Data pull-down menu option, and select Publish To Server. You’ll be prompted to log on to Tableau Server. Supply necessary logon credentials and click OK. The Publish Data Source To Tableau Server dialog box will appear. Choose the desired project, name, and other values, and click OK to publish the .tds file to the server. Anyone who has access to Tableau Server may now use the custom data source by selecting Tableau Server in the “On a server” category of the Connect To Data screen, just as they would select another data source.

Extracting Data If you use standard corporate databases, such as Microsoft SQL Server or Oracle, you may find situations where it’s inconvenient (or impossible) to perform data analysis. The first possible issue may be poor performance. If the database is very large or has not been fully optimized by the database designer, real-time analysis with Tableau may be difficult. Or, you may wish to continue to work with a centralized database when you’re away from your office (perhaps, on an airplane) and connection to the database simply isn’t possible. And, you may encounter a situation when using something other than a desktop database (Microsoft Excel, Access, or a text file) when you attempt to save a Tableau Packaged Workbook (a .twbx file). Because a packaged workbook incorporates all the workbook’s underlying data sources, you’ll receive an error message when you attempt to save it if you’re using other than a desktop data source.

03-ch03.indd 55

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



56



Tableau 8: The O f f icial Guide

These are the types of situations that call for a Data Extract. A Data Extract is a Tableau-proprietary file that contains the imported contents of another database or data source. A Tableau Data Extract file (you’ll notice the .tde file extension) consists of a very compact, high-speed data file that Tableau attempts to store in your computer’s memory. As such, analysis with an extract is typically very, very fast. Also, an extract can be stored in a stand-alone packaged workbook for distribution to users of Tableau Reader or other Tableau designers who may not have access to the underlying source database. Note  Some data sources, such as Salesforce.com and Google Analytics, will create extracts automatically when they are first accessed. This is because these web-based data sources may perform slowly if interacted with natively. Also, frequent web-based data source interactivity may exceed service limits placed on users by the data source vendor. Your first opportunity to create an extract is when you initially connect to most data sources. Once you specify any necessary data source properties, you’re presented with a dialog box prompting you to either choose a live data connection or create an extract. If you wish to create an extract here, you may select Import All Data to create a complete extract of every field and row in the underlying data source, or select Import Some Data to display the Create Extract dialog box, where you can narrow down your extract to a limited set of data from the underlying data source.

To create an extract from an existing data source in your workbook, right-click the desired data source in the top portion of the Data window and choose Extract Data from the context menu. You may also use Data | | Extract Data from the Tableau drop-down menu. The Extract Data dialog box appears.

03-ch03.indd 56

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



Chapter 3: 

Data Connection Details

57

To simply extract all data from your underlying data source, just click OK. But, if you want to narrow down the extract to only include a subset of the original data source’s data, select various options in this dialog box: •• To narrow down your extract to a limited set of data (perhaps only for the past year or only for your region), add one or more filters. Filters are specified identically here as they are in Tableau when dragging a field to the Filters shelf. •• If you check the “Aggregate data for visible dimensions” box, Tableau will summarize (or “roll up”) the underlying data source based on the dimensions that have not been hidden. This will reduce the size of the resulting extract file. You may also choose to roll up dates. If you choose this option, select the level of date detail you wish to retain in the extract. For example, if you select Month, the underlying data source will be summarized (“rolled up”) to the month level. Using the extract from that point will allow you to display dates at the month, quarter, or year level, but not the week or day level. •• You may choose to extract all rows from the underlying data source (any filters or roll-ups you specify will still be applied) or select an incremental extract. Checking Incremental Refresh will permit the extract to be updated at a later time with only new data that’s been added to the underlying data source. For large extracts, this may significantly speed up extract updates in the future. Select either a date dimension or unique ID/key in the underlying data source to base the incremental refresh on. The next time you refresh the extract from the Data Source context menu or Data drop-down menu, only rows that contain a date or key later than that of the last refresh will be imported.

03-ch03.indd 57

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



58



Tableau 8: The O f f icial Guide

•• If you select the Top radio button, you may further narrow down to a number or percent of rows from the underlying data source. This type of extract may be helpful when you wish to use a limited set of data from the underlying data source for “on the road” or initial development, with the expectation that you will eventually return to the full underlying data source for production analysis. Once you’ve completed the dialog box, click OK to create the extract. You’ll be prompted for a location to save the Tableau Data Extract (.tde) file. Specify the location and filename and click Save. The extract file will be created and any worksheets in the current workbook using the original underlying data source will be converted to use the extract (you’ll notice a checkmark next to Use Extract on the data connection’s context menu or the Data drop-down menu). One of the initial concerns you may have about using an extract is the “disconnection” from the underlying data source, particularly in terms of currency of data. For example, if the initial data source is a transactional database that is updated frequently, you may be concerned that you will now be analyzing on an extract that’s out of date. Tableau provides a simple way to refresh extracts from the underlying data source to update the extract with new data. A full refresh will read all data from the underlying data source again with filters and rolls-ups applied. While this assures that your extract will fully match the underlying data source, a full refresh can be time consuming. An incremental refresh (discussed previously) will only import new records from the underlying data source into the extract. To perform either kind of refresh, just right-click the data source at the top of the Data window, or select Data | from the drop-down menus, followed by Extract | Refresh. If you initially chose to import all rows when the extract was first specified, a full refresh will occur. If you selected an incremental refresh when the extract was first specified, you’ll notice the word “Incremental” will be appended to the Refresh menu option and an incremental refresh will occur. If you wish to change an extract refresh from an incremental to a full, or vice versa, simply perform a new extract using the original menu option described earlier. Changes to the All Rows/Incremental refresh options will be applied to future refreshes. Tip  If you are using Tableau Server, you are able to store extracts on the server and schedule automatic refreshes at regular intervals. This powerful feature can often bridge the gap between currency of data and speed of analysis that extracts sometimes present. Once you have extracted data, several menu options are enabled to help you maintain extracts and switch between the original data source and the extract. Right-click the data source at the top of the Data window (which will now exhibit a two-barrels-with-arrow icon, indicating that an extract is active), or choose Data | from the drop-down menu. The first option is to return to the underlying data source by unchecking Use Extract. You may easily return to the

03-ch03.indd 58

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



Chapter 3: 

Data Connection Details

59

previously generated extract by selecting this option again. When an extract is being used, the Extract sub-menu provides additional options:

•• Add Data From File  You may add data to an existing extract from an external desktop-type file (Excel, Microsoft Access, text, comma-separated values), as well as other existing extract files. The columns in the external file must match those in the extract. •• Optimize  If you have created any new calculated fields since an extract was created, this option will evaluate the results of the calculations and write them to the extract file. This may improve performance with large extracts, as calculated fields won’t have to be reevaluated “on the fly.” •• Remove  You may remove the extract and return to the underlying data source. When you choose this option, you’ll be provided an additional option to delete or retain the .tde extract file. •• History  Displays a dialog box indicating dates the extract has been refreshed. •• Properties  Displays a dialog box providing overall information about the extract, including location of the extract file, filters used, and so forth. Caution  When you initially create an extract based on an existing data source in a workbook, Tableau will maintain the relationship between the original data source and the extract in that workbook. This will permit you to uncheck the Use Extract option to use the original data source, refresh the extract from the underlying data source, and so forth. However, if you create a new workbook based only on the resulting .tde file, the relationship to the original data source won’t be available. You will be unable to switch back and forth between the original data source and the extract, refresh the extract, and so forth.

03-ch03.indd 59

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



60



Tableau 8: The O f f icial Guide

Data Blending Video  Data Blending It’s not uncommon to require data from more than one table within a database/data source, or maybe even more than one database/data source, in a Tableau workbook. Depending on how your workbook is organized and what analysis requirements you have, there are several ways of accomplishing this: •• Join multiple tables from the same database, as discussed earlier in the chapter in the section “Adding and Joining Multiple Tables from the Same Database” and use the joined tables in one or more worksheets in your workbook. •• Create several worksheets, each using various data sources (including joined tables), and combine the worksheets on a dashboard. The dashboard can provide links between the worksheets via filters and so forth (creating dashboards is covered in Chapter 8). •• Tie more than one data source together on a single worksheet using data blending. This is what this section of the chapter will cover. In traditional relational database analysis, joining tables from the same database is a common practice. However, when data needs to be combined from different databases, complications often arise. As most database vendors don’t provide easy methods of combining data from other vendors (if they provide it at all), this task is often left to the analysis tool itself. Tableau’s approach to this predicament is called data blending. Data blending provides a way to combine data from more than one data source on a single worksheet. In short, Tableau connects to multiple data sources, sends independent queries to those data sources, and then combines (or “blends”) the aggregated results of the independent queries on a single worksheet. Note  It’s important to keep the “independent queries/aggregated results blended” paradigm in mind when considering whether data blending will work in your environment. Remember that data blending is not the same as a table join, or the same as more common singledatabase combining techniques, such as unions. The key to blending is identifying a common dimension in both data sources that can be aggregated to. Despite the somewhat-complex concepts of data blending, it’s very easy to implement. Consider a fairly common requirement where existing transactional or sales data is contained in one database and goal data is contained in another. For this example, transactional data is contained in the “Sample - Superstore - English (Extract)” file that is included with Tableau 8. Because Sales Goal data is absent from this file, a text file has been created that contains goal data. In order to calculate the difference between actual and goal and display actual and goal side by side on the same worksheet, data blending must be used.

03-ch03.indd 60

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



Chapter 3: 

Data Connection Details

61

Consider the chart illustrated in Figure 3-1. This chart, based on the “transactional data” extract, is based on a single data source. This data source is considered the primary data source, as it was the first data source used to generate the worksheet. This is confirmed by the small blue checkmark that is displayed on the data source name at the top of the Data window. However, notice that another data source also exists in the workbook. This other connection is used by another worksheet. Since more than one data connection can exist in a workbook, yet another connection will need to be made to the text file containing the goals. Simply add a new data connection using already covered approaches. Once the new connection is added, you may view its underlying data to see that goal records exist for each matching region. However, since a primary data source has already been used for the existing worksheet, notice the orange line that appears in the Data window when the second

Blue checkmark designates the primary data source

Figure 3-1  Data blending candidate

03-ch03.indd 61

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



62



Tableau 8: The O f f icial Guide

data source is selected. This indicates that this data source will become a secondary data source—primary and secondary data sources will be connected via data blending.

One other consideration that may not be immediately evident from this example is the lack of an identically named dimension in the primary and secondary data sources (Tableau will automatically create a relationship between identically named fields). Specifically, the aggregated field illustrated in Figure 3-1 is named “Region,” while the matching field appearing in the secondary data source is named “Area.” If you simply

03-ch03.indd 62

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



Chapter 3: 

Data Connection Details

63

try to drag a measure from the secondary data source onto the existing chart based on the primary data source, this lack of matching dimensions results in an error. Even though the measure will appear on the chart, it is not properly aggregated to match up to the primary field.

There are two ways to solve this problem. Probably the simplest is to merely rename the field in either data source to match that of the other. After right-clicking the Area dimension in the secondary data source, choosing Rename from the pop-up menu, and renaming the field to Region, examine the Data window. Note the orange link icon next to the field. This indicates that a matching dimension exists in the primary data source and that this field will be used as the common field between the data sources. Tip  If multiple link icons appear in the secondary data source, more than one field name matches in the two data sources. “Broken” link icons indicate data blending candidate dimensions. Determine which dimension you wish to use to blend and click it. The icon will change to a “closed” link and that dimension will be used to match to the other data source. If, for some reason, you prefer not to rename a dimension in one data source to match the other, you may specifically tie the two dimensions together by choosing Data | Edit Relationships from the drop-down menus. This will display the Relationships dialog box. First, ensure that the proper primary data source is displayed in the first drop-down list. Then, choose the desired secondary data source in the list to the left. If Tableau has performed any automatic by-field-name matches, you’ll see them when the Automatic radio button is selected. If Tableau has not been able to do a proper match,

03-ch03.indd 63

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



64



Tableau 8: The O f f icial Guide

click the Custom radio button, followed by the Add button at the bottom of the dialog box. The Add/Edit Field Mapping dialog will appear.

Select the desired dimensions to match in the left and right lists. Click OK to add the relationship. If you need to add relationships because more fields need to be matched, click Add however many times you need and choose additional sets of matched dimensions. When you have specified all matching dimensions, click OK to close the Relationships dialog box. The Data window will return with the orange link icon appearing on the selected dimension. Once you have successfully matched the primary and secondary data sources, simply drag measures from the secondary data source onto the existing visualization. The data from both data sources will be blended, with all dimension members from the primary data source appearing on the chart, and matching members from the secondary data source appearing on the chart (data blending performs the equivalent of a left outer

03-ch03.indd 64

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



Chapter 3: 

Data Connection Details

65

join—any members from the secondary data source that don’t exist in the primary won’t appear on the chart). You may also create calculated fields using fields from both data sources. Figure 3-2 shows the resulting chart. Tip  Not only can you resolve data blending dimension name mismatches by just renaming a field in the Data Window, but you can resolve dimension member mismatches by editing a member’s alias. For example, if you are blending on state and one data source returns Colorado, while the other returns CO, just right-click the incorrect member name in the worksheet header and choose Edit Alias from the context menu. Change the member name to match the other data source. The two data sources will then properly blend.

Figure 3-2  Completed data blending chart

03-ch03.indd 65

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



66



Tableau 8: The O f f icial Guide

Moving from Test to Production Databases It’s not uncommon to initially develop a workbook using one data source and then eventually need to migrate that workbook to another similar data source. A very common example of this is developing against a test database and then migrating the workbook to a production database. In some cases, these databases may be on similar database platforms. But, in others, the test database may be a desktop system, such as Microsoft Access, with the production database being SQL Server. Regardless of the underlying types of data sources, Tableau makes it easy to migrate a workbook from one data source to another. Consider this Data window, based on a Microsoft Access “test” database. In particular, it’s significant to note that the current worksheet is using the Country dimension and Order Amount measure.

For this example, assume that a “production” database exists on SQL Server. The first requirement is to connect to the SQL Server as you would any other data connection. Add and join any necessary tables. When complete, the SQL Server data source will appear in the Data window. Then, right-click either of the data sources at the top of the Data window, or choose the Data drop-down menu and select Replace Data Source.

03-ch03.indd 66

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



Chapter 3: 

Data Connection Details

67

The Replace Data Source dialog box will appear, showing drop-down lists where you may choose the existing (test) data source and the data source you wish to replace it with (production). Choose the desired data sources and click OK.

All worksheets in your workbook that were using the original test data source will now be directed to the new production data source. Provided all field names in the new data source match the original data source, all worksheets will immediately reflect the new data source. However, if field names aren’t identical, portions of your visualization may be dimmed and an “invalid” icon (an exclamation point) may appear on any fields that aren’t found in the new data source.

03-ch03.indd 67

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 3



68

Tableau 8: The O f f icial Guide

Resolving these field name mismatches is a straightforward process. Right-click the “invalid” field in the Data window and choose Replace Reference in the context menu. The Replace Reference dialog box will appear, prompting you to replace all references to the now-invalid field with the field chosen in the new list of fields. Just select the proper field in the new data source and click OK. Any worksheet using the invalid field will now refer to the new field from the new data source. You may now right-click the invalid field and choose Delete from the context menu to delete it from the Data window.

03-ch03.indd 68

30/07/13 4:35 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 4

4

CHAPTER

Top 10 Chart Types

T

ableau can create many different chart types. While Show Me (covered in Chapter 2) provides a number of charts you can create very quickly, it’s hardly the limit of Tableau’s capabilities. Still, there are ten chart types that you’ll probably use more than others, if you are performing standard visualization and analytical activities. Some of the charts discussed in this chapter can be created very quickly with Show Me. However, in order to provide fuller knowledge of Tableau, manual steps to create each chart are covered here. Note  Open the Chapter 4 - Top 10 Chart Types.twbx file in Tableau to see examples that relate to this chapter.

Bar Chart Despite all the visualization possibilities, and the plethora of tools to create charts and graphs, the basic bar chart is still probably used more than any other type. This is very useful for comparing many different types of measures, including dollars, quantities, number of phone calls, web page hits, and so forth. In many cases, leaving the mark type on the Marks card set to Automatic will result in a bar chart (charts based on date/time dimensions being a notable exception). Just drag your desired dimension to the Columns shelf and desired measure to the Rows shelf to create a vertical bar chart (you may also double-click a measure first, then doubleclick a non-date/time dimension for the same results). If you want to change another chart type to bar (for example, if the default line chart for a date/time dimension isn’t what you want), select Bar in the Mark Type drop-down on the Marks card. Tip  While you can re-drag dimensions and measures to different shelves to change from a horizontal to vertical bar chart, try using the Swap button in the toolbar instead. You can enhance a basic bar chart using any number of Tableau features. To create a stacked bar chart, where each bar is broken down by portions of another dimension, drag the second dimension to Color on the Marks card (this is illustrated in Figure 4-1).

69

04-ch04.indd 69

30/07/13 4:36 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 4



70



Tableau 8: The O f f icial Guide

Figure 4-1  Stacked bar chart

Or you can create a graduated-color bar chart, where each bar is shaded with a variation of a color range based on a different measure. Drag the desired measure to Color on the Marks card. You can even create some interesting variations of a bar chart by utilizing both Color and Size on the Marks card, as well as unstacking bars by choosing Analysis | Stack Marks | Off from the drop-down menu. This results in two bars appearing on top of each other, but with different size and color.

Best Practice  If you are charting a single dimension, you may be tempted to add the same dimension the chart is based on to Color on the Marks card to assign each bar a different color. Reconsider this. The different colors may not benefit, and may actually confuse, your audience. Which is a more effective, less confusing visualization?

04-ch04.indd 70

30/07/13 4:36 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 4



Chapter 4: 

To p 1 0 C h a r t Ty p e s

71

Line/Area Chart Another popular chart, the line chart, shows a trend over time. For example, sales plotted for the past 12 months or number of web hits by time of day benefit from a line chart. If you initially add a date or date/time dimension to the Rows or Columns shelf, and a measure to the other shelf, a line chart trending the measure over time will result. (Though a line chart will be created either way, vertical line charts based on a dimension on the Rows shelf may be of limited use.) As with other chart types, a basic line chart can expand with placements on Color on the Marks card. If you place another dimension on Color, a different colored line will appear for each member of the dimension. Alternatively, if you add a different measure to Color, the existing line will take on a graduated color indicating the variation of the measure placed on Color. While you can also place measures or dimensions on Size on the Marks card, you may find the results to be more confusing than useful with a line chart.

04-ch04.indd 71

30/07/13 4:36 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 4



72



Tableau 8: The O f f icial Guide

Best Practice  It’s easy to convert a chart initially created as bar to line or area. Just choose Line or Area from the drop-down on the Marks card. This is helpful if you have a dimension that Tableau doesn’t automatically determine to be a date/time dimension, but that still can be used to show a trend. A variation on the line chart is the area chart. Like a line chart, an area chart is best used to trend data over time. However, rather than just showing a single line to represent the path of the trend, the area chart fills in the entire portion of the chart from the bottom of the chart with a shaded color. This often results in a “mountain range” look. Simply select Area from the drop-down on the Marks card to create an area chart. Like line charts, area charts can be enhanced by dragging a dimension to Color on the Marks card (using a measure on Color will have no usable benefit). This will create a stacked area chart with each member of the dimension placed on Color creating a separate colored stacked area (this is illustrated in Figure 4-2). A variation of an area chart is an unstacked area chart. Create this by dragging a desired dimension (with a minimal number of members) to Color on the Marks card. Initially you’ll see a stacked area chart. Then select Analysis | Stack Marks | Off from the drop-down menu. The areas that were previously stacked will now overlap each

Figure 4-2  Stacked area chart

04-ch04.indd 72

30/07/13 4:36 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 4



Chapter 4: 

To p 1 0 C h a r t Ty p e s

73

other, and Tableau will change the colors to make them easier to distinguish. This may not always be desirable. Even though Tableau displays the color dimension with transparency, it’s still easy to miss certain valleys in the “mountain range” if other peaks occlude them.

Tableau 8 Forecasting Video  Forecasting Tableau 8 introduces forecasting, the ability to examine data and trends in existing dateor date/time-based data and forecast what trend may occur in the future. The first requirement to forecast in Tableau 8 is to create a chart based on a date or date/time dimension. If you choose to change the default discrete Year date level of the dimension, you must choose a continuous date level—discrete date levels other than Year won’t permit forecasting. Once your initial chart is displayed, you can forecast by using the Analysis | Forecast | Show Forecast drop-down menu option. Or you can just right-click on the visualization and choose Forecast | Show Forecast from the context menu. Tableau will look at the existing time-based data and forecast future trends based on it. The chart will be extended to show the forecast data, and a forecast icon (a slanted up arrow) will be added to the forecast measure’s field indicator. Also, a forecast indicator will be placed on Color on the Marks card to distinguish existing data from forecast data.

04-ch04.indd 73

30/07/13 4:36 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 4



74



Tableau 8: The O f f icial Guide

You can also use two other options from the Analysis | Forecast drop-down or Forecast right-click menus to customize or document the forecast. Forecast Options will display the Forecast Options dialog box, where you can change the duration of the forecast, change the date level granularity used for aggregation, choose to ignore a specified number of periods at the end of the actual data range, elect whether or not to fill missing values with zeroes, and choose from a variety of forecasting models. Describe Forecast will display a dialog box exposing details about the way the forecast was calculated via both Summary and Models tabs.

Note  Although line or area charts are typically used to trend data over time, forecasting will work equally well with other chart types based on date or date/time dimensions, such as a bar chart showing sales by year.

Pie Chart Although some authorities in visual design decry them (preferring, for example, stacked bar charts), pie charts remain a fixture of the visualization world. They are used to show a single measure for a smaller number of dimension members (probably not more than six or eight), illustrating what “piece of the pie” each member has. Tableau provides the ability to populate a worksheet with a single pie chart, with multiple pie

04-ch04.indd 74

30/07/13 4:36 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 4



Chapter 4: 

To p 1 0 C h a r t Ty p e s

75

charts organized for different combinations of dimensions or measures, and even as a chosen mark type for other types of visualizations, such as maps. To create a pie chart worksheet, choose Pie from the drop-down on the Marks card. Then drag the measure you want the pie to represent onto Angle on the Marks card (Angle will only appear after you choose a Pie mark type). Finally, drag the dimension that you want to use to create pie wedges to Color on the Marks card (again, the dimension should have no more than six to eight members to not create too many pie wedges). Tip  To add a percentage label to each pie wedge, drag the same measure used on Angle on the Marks card to Label on the Marks card. Then choose Analysis | Percentage of Cell or Analysis | Percentage of Table from the drop-down menu. Tableau allows multiple items to be included on mark labels. For example, you can also drag the dimension used to set pie colors onto Label on the Marks card along with the measure to show both the percentage and dimension at the same time.

Multiple pie charts can be created by just dragging a dimension you’d like to subdivide by onto the Rows or Columns shelf. Be careful, as subdivided pies can quickly become difficult to interpret. Consider stacked bar charts or other easier-tointerpret chart types if you find that subdivided pie charts are difficult to understand. Tableau also features the ability to choose the Pie mark type on other visualizations. One example is using a pie on a map. A Pie mark type can add context to a map that would otherwise just show a single circle for a state or country. After creating the map,

04-ch04.indd 75

30/07/13 4:36 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 4



76



Tableau 8: The O f f icial Guide

change the Automatic mark type to Pie from the drop-down on the Marks card. Then drag a dimension onto Color on the Marks card to subdivide into pie wedges (the fewer dimension members, the better). The result will be individual pie charts on each country, state, or other geographic dimension used to create the map. Tip  Placing another measure on Size may enhance the effectiveness of Pie mark types, especially when used on maps.

Text Table/Crosstab One of the original applications that made personal computers popular was the spreadsheet program. Decades later, spreadsheets are still used widely in all aspects of virtually every type of organization. Even after the introduction of leading-edge visualization tools such as Tableau, numbers organized in rows and columns are still often used when analyzing data. For these requirements, Tableau provides the text table or crosstab (with the term crosstab being used for the remainder of this chapter). Like a spreadsheet, Tableau displays rows and columns of numbers, with one or more dimensions appearing on the Rows and Columns shelves, and one or more measures

04-ch04.indd 76

30/07/13 4:36 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 4



Chapter 4: 

To p 1 0 C h a r t Ty p e s

77

appearing on Text on the Marks card. In fact, a crosstab is created automatically using Tableau’s default double-click behavior if one or more dimensions are initially doubleclicked and a subsequent measure is double-clicked. You can also drag dimensions to the Rows and Columns shelves, and then drag a measure to Text on the Marks card. If you include more than one dimension on the Rows or Columns shelf, a hierarchy of “panes” will be created showing the second dimension organization within the first dimension (make sure the dimensions have a logical hierarchical relationship if you do this). In the case of a crosstab based on more than one dimension on a shelf, you may want to show subtotals on the crosstab at the end of each outer dimension. Even if you don’t use multiple dimensions, you may want to see grand totals for rows or columns in the crosstab. Options from the Analysis | Totals drop-down menu will add these totals. Note  The Totals options from the Analysis menu, while probably most appropriate for crosstabs, can be used with any visualization type. Just be careful if you use totals beyond crosstabs. For example, a total bar at the end of a bar chart may introduce confusion when trying to compare individual value bars while a total bar appears in the same chart. By default, a crosstab will display measures on the Text shelf in black. As with spreadsheet programs, certain numbers may need to stand out based on their value. Tableau facilitates this by allowing another measure or dimension to be placed on Color on the Marks card. If a measure is placed on Color, the range of measure values will create a color range that will automatically color-code cells in the crosstab (typically a graduated color palette will result). A dimension (or perhaps a calculated field that returns only two values) can also be placed on Color to create a more stark “this color or this color” coding for the crosstab. As discussed earlier, the numbers-in-rows-and-columns spreadsheet metaphor is still popular. A request to “just see the numbers” when viewing a non-crosstab visualization can be easily resolved by right-clicking on the worksheet tab. Simply choose Duplicate As Crosstab from the context menu. A new sheet will be created containing a crosstab representation of the dimension/measure organization from the original worksheet. Any worksheet (whether it contains a crosstab or not) can be copied to the Windows clipboard as a crosstab of numbers in rows and columns for pasting into another application.

04-ch04.indd 77

30/07/13 4:36 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 4



78



Tableau 8: The O f f icial Guide

Using More than One Measure

While a simple crosstab may be perfectly useful when showing just one measure, comparing more than one number will often be a requirement. Tableau versions prior to 8 required invocation of Measure Names and Measure Values to include two measures in a crosstab. With the new organization of the Marks card in Tableau 8, however, you may prefer to drag additional measures to Text on the Marks card to include multiple measures in the crosstab. Though dragging multiple measures to Text is a quick, simple way to include multiple measures in a crosstab, it will not automatically add labels to the crosstab to distinguish one measure from another. You may want to create a calculated field that returns text values to label measures you’ve added to Text. For example: "Sales" + CHAR(10) + "Profit"

will return the word Sales, followed by a carriage return, followed by the word Profit. This calculated field can be placed on a shelf to add labels for a multiplemeasure crosstab.

By default, Tableau 8 will still use Measure Names and Measure Values to create a multiple-measure crosstab as previous versions did. The easiest way to use

04-ch04.indd 78

30/07/13 4:36 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 4



Chapter 4: 

To p 1 0 C h a r t Ty p e s

79

this method is to simply double-click on additional measures. Tableau’s default double-click behavior will add Measure Names and Measure Values to appropriate places on the worksheet and include the additional measures you click. In this case, Measure Names will be placed on the Rows or Columns shelf, which will automatically label measures in the crosstab.

Just right-click on a measure or mark in the visualization and choose Copy | Crosstab from the context menu. The resulting crosstab on the clipboard can be pasted into another application as a row-and-column-with-numbers matrix.

04-ch04.indd 79

30/07/13 4:36 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 4



80



Tableau 8: The O f f icial Guide

Tip  Crosstabs are particularly useful for “just show me the numbers” types of user requests. Not only can you quickly “just show the numbers” when designing a workbook, crosstabs provide drill-down capabilities in dashboards. By adding a crosstab to a dashboard with filter actions, you can show related numbers when a user clicks on a particular dimension in another portion of the dashboard. Filter actions are covered in more detail in Chapter 8.

Scatter Plot Although more esoteric than many of the standard chart types discussed in this chapter so far, the scatter plot can provide very meaningful visualization of two related numeric measures. There are, generally speaking, two different analyses that scatter plots help consider: comparison/correlation of the two measures, and existence of outliers. In most cases, one or more related dimensions are also used in a scatter plot. For example, a scatter plot may be ideal in looking for correlation between number of web ads placed and number of hits to your website, with further analysis on dimension data, such as where the web ad was placed, day the ad ran, or known demographics of the person who visited your website. Or your candidate may want to see if the number of outgoing phone calls asking for campaign contributions can be correlated to the number of contributors or the amount of contributions. Certain outliers, such as a few contributors who contributed large amounts, will stand out on a scatter plot, allowing for targeted analysis. A particular scatter plot example that may be close to home if you’ve compared other business intelligence (BI) tools to Tableau is the BI Magic Quadrant issued by Gartner. This scatter plot evaluates BI vendors by two measures: completeness of vision and ability to execute. While not all scatter plots share the Magic Quadrant’s “both farther to the right and farther up is better” approach, many scatter plots make analysis easy by automatically indicating preference to higher or lower areas on either or both axes. A scatter plot in Tableau begins with numeric measures placed on both the Rows and Columns shelves. You can either drag them there individually or simply double-click on one measure after the other, with the first measure becoming the row and the second the column. Initially, this will simply place one mark (a blue open circle) on the scatter plot indicating where the aggregation of both measures appears. While this may be somewhat helpful for a very quick analysis of how the measures relate, you’ll typically want to place additional dimensions “in play” to make the scatter plot more useful. Tip  If you initially add measures to the wrong shelves, you can undo the addition or manually move them to the proper shelves. But you may find it faster to ctrl-click on both measure fields on the Rows and Columns shelves to select them. Then right-click and choose Swap from the context menu, or just click the toolbar Swap button.

04-ch04.indd 80

30/07/13 4:36 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 4



Chapter 4: 

To p 1 0 C h a r t Ty p e s

81

Dimensions (or other measures that help broaden scatter plot analysis) can be added to additional areas of the Marks card. For example, to simply add additional blue open circles for every member of a desired dimension, drag the dimension to Detail. While you can change the shape from the default open circle to another shape by choosing a different mark type from the Marks card drop-down, you may prefer to have different shapes appear for different members of a desired dimension. Just drag that dimension to Shape. You can have different colors appear for different dimension members or measure ranges by dragging the desired dimension or measure to Color. Marks can be sized by dragging a dimension or measure to Size. Figure 4-3 shows an example of the effects of these different Marks card options. Since scatter plots display a mark for every combination of measure and dimension added to the worksheet, they can quickly become busy with different combinations of marks. In some cases, you may want to show an even denser series of marks if you choose to use a scatter plot to deduce broader generalizations, rather than correlations for a smaller number of marks. In that case, you may want to disaggregate data, which will retrieve individual values from the underlying data source, instead of aggregated sums, averages, and so forth (which Tableau provides by default). To disaggregate, uncheck Analysis | Aggregate Measures from the drop-down menu. You may need to

Figure 4-3  Scatter plot with Marks card features, trend line, and annotations

04-ch04.indd 81

30/07/13 4:36 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 4



82



Tableau 8: The O f f icial Guide

add filters (covered in detail in Chapter 5) to reduce the large number of marks that can result from disaggregation. Hovering your mouse over an individual mark on a disaggregated scatter plot may be of limited use, as no dimension information will appear for the individual mark. Drag desired dimensions to Detail or Tooltip on the Marks card to include that dimension on the tooltip that appears when you hover over a mark. While not required, trend lines generally add interpretive value to a scatter plot. Just right-click on the visualization and choose Trend Lines from the context menu, or choose Analysis | Trend Lines | Show Trend Lines from the drop-down menus. If necessary, edit the default trend line (from the Analysis drop-down menu or right-click context menu) to change various trend line properties (trend lines are covered in more detail in Chapter 7). And, while annotations are available for any visualization type, they come in particularly handy for scatter plots. Add annotations by right-clicking on the workspace and choosing Annotate from the context menu. A mark annotation will add text and an arrow pointing to a particular mark (unique combination of measures and dimensions) on the plot. If that particular mark later moves elsewhere on the scatter plot, or is eliminated via a filter, the associated annotation will either move or disappear. A point annotation will add text and an arrow pointing to a specific x/y coordinate on the scatter plot whether a mark appears there or not. As the scatter plots axes change with variations in data or filters, the annotation will follow the original x/y coordinate. An area annotation, like a point annotation, will add text to a particular x/y coordinate. However, rather than displaying an arrow, an area annotation will draw a rounded box containing the text. You can resize the box to set not only the originating x/y coordinate for the annotation, but the width and height of the annotation as well. Like a point annotation, the area annotation will move as the underlying data changes the dimensions of the scatter plot.

Best Practice  Effective scatter plots include either a small enough number of marks following a general trend to draw quick conclusions about the individual measures, or a large concentration of marks (perhaps due to disaggregation) to draw general conclusions. An effective variation of many Tableau chart types (scatter plots being a particularly good example) is commonly known as a small multiples visualization. Small multiples make use of one or more dimensions added to the Rows and/or Columns shelves that result in multiple scatter plots on one or more rows or columns. This allows not only individual conclusions to be drawn from individual scatter plot analysis, but comparisons to other dimension members with identical scatter plots. Best practice dictates that the individual scatter plots display either a small enough number of marks to be easily interpreted at first glance, or a large number of marks (perhaps via disaggregated data) to draw general conclusions at a quick glance.

04-ch04.indd 82

30/07/13 4:36 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 4



Chapter 4: 

To p 1 0 C h a r t Ty p e s

83

Bubble Chart Tableau 8 can create two variations of a chart designed to visualize a comparison of size and color of a numeric measure. By displaying varying sizes and colors in filled circles, the bubble chart leads to quick comparison and correlation of the chosen metric. One Tableau bubble chart is a variation on the scatter plot (discussed previously). While this bubble chart variation still plots marks on two numeric axes to exhibit a height/width correlation between values, there are several differences between a bubble chart and scatter plot: •• Marks are designated as filled circles. No other mark types or shapes are used. •• Mark size is increased significantly over a scatter plot to display large circles (hence, the term “bubble chart”). •• Smaller numbers of marks are often preferred over the larger mark counts of scatter plots. Because of the larger mark type, a bubble chart starts to lose effectiveness with more than 20 to 25 bubbles. You will probably not disaggregate data with a bubble chart. •• Bubble charts, by definition, include a text label on each circle.

04-ch04.indd 83

30/07/13 4:36 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 4



84



Tableau 8: The O f f icial Guide

To create this form of bubble chart, place measures on the Rows and Columns shelves (double-clicking on one measure after the other will automatically place them on the Row and Column shelves, respectively). Choose a circle mark type from the drop-down on the Marks card. Click Size on the Marks card to display the size slider. Size the filled circle to a substantially larger size than the default. Add the dimension whose members you want to create bubbles for to Label on the Marks card. Since this may cause “label overkill” by showing labels on too many marks, click Label and choose Selected to only display a label on a mark when it is clicked on. Finally, either ctrl-drag measures you used on Rows and Columns to duplicate them on Size (and optionally, Color), or drag additional dimensions or measures to set the size (and optionally, color) of the bubbles according to your needs.

The second type of bubble chart is new in Tableau 8. This chart doesn’t show a height/width correlation between two measures, but instead just clusters bubbles together, denoting the difference between values based on size and, optionally, color. Show Me offers this choice (choose Packed Bubbles) or you can create it manually. If you choose to create it manually, begin by choosing Circle in the drop-down on the Marks card. Then add the dimension whose members you want to create bubbles for to Label on the Marks card. Tableau will create a set of identically sized blue bubbles for each dimension member. Finally, drag desired additional measures or dimensions to Size (and optionally, Color) on the Marks card to vary the size and color of bubbles as desired.

04-ch04.indd 84

30/07/13 4:36 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 4



Chapter 4: 

To p 1 0 C h a r t Ty p e s

85

Here, as in the previous example of a modified scatter plot, bubbles are sized based on sales and colored based on profit. It’s fairly easy to compare sales and profit, noting categories that sell similarly (with similar-sized bubbles) but that are far different profit-wise (very different coloring).

Bullet Graph A common requirement in visualization is to compare two measures. Often, those two measures are an actual number and a target or goal. Depending on other elements of the comparison, a bar chart (sales versus quota by salesperson) or line chart (sales by month compared to monthly goal) may suffice. However, Tableau includes another option that provides an effective comparison method that takes up a minimal amount of space. The bullet graph was created by visualization author and lecturer Stephen Few to provide just such an “actual to target” visualization. The basic portion of a bullet graph is a bar chart (typically, a horizontal bar chart), which denotes the actual or base measure for comparison. Each bar is then paired with a reference line, which denotes the goal or target. The compact combination of bars and reference lines not only allows a quick comparison of the actual values to each other, but a quick determination of how actual value bars compare to target reference lines.

04-ch04.indd 85

30/07/13 4:36 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 4



86



Tableau 8: The O f f icial Guide

The bullet graph even provides for good comparison of goals/targets by allowing, at a glance, analysis of relative positions of the reference lines. An optional portion of a bullet chart is a reference distribution, which shows a shaded area extending above and below the actual bar to indicate relative comparison of the actual measure to the goal or target. Note  More detail on reference lines and reference distributions can be found in Chapter 7. Because there are several steps required to create a bullet graph from scratch, you may prefer to use the Bullet Graph option in Show Me. Simply select the actual measure, the goal/target measure, and the desired dimension in the data window. Then click the Bullet Graph option in the Show Me dialog box. Note that Show Me cannot automatically determine which is the actual measure and which is the goal/target, and may assign the target to the bar and the actual to the reference line/ distribution. Tableau provides a quick shortcut to fix this issue. Just right-click on the axis for the incorrect measure and choose Swap Reference Line Fields. If you want to create a bullet graph from scratch, or modify some aspect of the one created by Show Me, make use of these Tableau features: •• The dimension used to create individual bars is placed on the Rows shelf (or Columns shelf, if you prefer to create a vertical bullet graph). •• The actual measure is placed on the Columns shelf (or Rows shelf, if you prefer to create a vertical bullet graph). •• The target/goal measure is placed on Detail on the Marks card (in order for reference lines/distributions to make use of the target/goal, it must be in use on the worksheet). •• A reference line is created from the right-click context menu of the worksheet’s axis. Line is chosen, per cell, showing the average of the goal/target measure, with Label set to None, and a black bar color.

04-ch04.indd 86

30/07/13 4:36 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 4



Chapter 4: 

To p 1 0 C h a r t Ty p e s

87

•• If a “range of performance” distribution band is desired, another reference line can be created from the right-click context menu of the worksheet’s axis. Distribution is chosen, per cell, showing 60%, 80% of the average of the goal/target measure, with Label set to None, and with Fill Above and Fill Below checked. •• If the distribution band is difficult to see, the size of the bar can be reduced by clicking Size on the Marks card and moving the slider to the midpoint. •• Optionally, another dimension or calculated field can be applied to Color on the Marks card to denote actual values that are above and below the goal/target.

Where Are the Gauges?

If you’re used to other BI toolsets, you may spend a fair amount of time looking around Tableau trying to find a gauge Show Me option or mark type. Search as you might, you won’t find one. While some people may consider this a shortcoming of Tableau, the gauge is missing for a very good reason: it’s generally not a visualization best practice. As Tableau works very hard to help you create meaningful visualizations as you design your worksheets and dashboards (the Automatic mark type being an example of this approach), other visualization types are available in Tableau as replacement for gauges. The bullet chart is an example. Figure 4-4 shows a comparison of gauges and a bullet chart, with each visualization showing the same set of salespeople, their actual sales, and sales goals. Look closely and ask yourself the same questions a sales manager who was charged with evaluating his or her sales team would ask. Which is a more effective visualization of sales versus goals? Which salesperson is highest and lowest in sales? How close is each salesperson to goal? Which salesperson is over or under goal, and by how much? Which is a more efficient use of precious dashboard space? You’ll probably find that bullet charts, and other available Tableau visualizations, will provide more effective analytics for your audience.

04-ch04.indd 87

30/07/13 4:36 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 4



88



Tableau 8: The O f f icial Guide

Figure 4-4  Gauges versus bullet chart

Box Plot Although it may not be found as frequently as bar, line, and pie charts, the box plot is a very useful visualization when circumstances demand it. Introduced in the mid-1970s by the statistician John Tukey, the box plot excels at displaying the distribution of data over a range. You can easily determine where the heaviest concentration of data elements is in the range, and optionally, you can easily identify outliers. Although there are variations of a box plot, there are a few common elements in all cases: •• There are indicators of the maximum and minimum value in the range. The maximum and minimum, as well as all values in between, can be represented as individual marks or as a solid line connecting them. •• The “box” portion of the box plot consists of lines indicating the 75th percentile (or upper quartile), the 50th percentile (or median), and the 25th percentile (or lower quartile). The portion between the top and bottom lines is shaded, which indicates where 50 percent of the distribution is concentrated.

04-ch04.indd 88

30/07/13 4:36 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 4



Chapter 4: 

To p 1 0 C h a r t Ty p e s

89

Because a box plot is not available in Show Me, you must manually create the individual portions of the visualization. Consider the basic box plot illustrated in Figure 4-5. While there are several ways you can create this in Tableau, the box plot illustrated in this figure was created with the following steps:

04-ch04.indd 89



1. The dimension desired to “slice” the box plot (Customer Segment) was placed on Columns (it could have been placed on Rows if a horizontal box plot was desired).



2. The measure to evaluate (Profit) was placed on Rows. This resulted in the default Tableau bar chart with the measure aggregated.



3. In order to evaluate the profitability over a distribution of individual orders, data was disaggregated by unchecking Analysis | Aggregate Measures from the drop-down menu. The result was individual data source profit values plotted as large open circles.



4. The Line mark type was chosen from the drop-down on the Marks card. While this created the desired line connecting the minimum and maximum values for each customer segment, the lines between customer segments were connected. This connection was eliminated by copying the measure used on the Rows shelf (using ctrl-drag) to Path on the Marks card. This broke the connection between customer segments, resulting in a single line for each segment connecting the maximum profit to the minimum profit, and all values in between.



5. A reference line was added by right-clicking on the axis and choosing Add Reference Line from the context menu. Distribution was chosen, scope was set to Per Cell, Value was set to Quartiles with the default number 4 chosen (which created quartiles), Label was set to None, a solid line color was chosen, and Symmetric was checked to display the same fill shade throughout the different portions of the reference distribution.

30/07/13 4:36 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 4



90



Tableau 8: The O f f icial Guide

Figure 4-5  Basic box plot

A variation of the box plot adds whiskers, lines that denote some value at the top and bottom of the distribution. This use of whiskers allows a wider evaluation of distribution of data points beyond the box. In some cases, whiskers denote the minimum and maximum (which would have been a good application with the solid line box plot illustrated in Figure 4-5). However, other variations place the whiskers at low and high percentiles, but not the minimum and maximum. This type of whisker use is ideal if outliers that fall outside the whisker percentiles are to be identified. Consider the box plot with whiskers illustrated in Figure 4-6. Here, individual profit values are being represented as small circles instead of a continuous line, which permits identification of outliers. Further, whiskers have been placed at the 2nd and 98th percentiles, leaving anything outside those percentiles to be clearly identified as outliers.

04-ch04.indd 90

30/07/13 4:36 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 4



Chapter 4: 

To p 1 0 C h a r t Ty p e s

91

Figure 4-6  Box plot with whiskers

The steps described previously to create the basic box plot in Figure 4-5 apply to Figure 4-6, with the following differences: •• Instead of choosing a Line mark type after disaggregating data, Circle was chosen. This replaced the default open circles with solid circles. Size was clicked on the Marks card and the slider was used to greatly reduce the size of the circles. •• The whiskers were created by use of an additional reference line. Distribution was selected as this reference line type, Scope was set to Per Cell, Value was set to Percentiles (with the numbers 2 and 98 typed in manually separated by a comma), Label was set to None, a solid line color was chosen, and Fill was set to None.

04-ch04.indd 91

30/07/13 4:36 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 4



92



Tableau 8: The O f f icial Guide

Tree Map When faced with identifying the folders that resulted in a full hard disk in 1990, Ben Shneiderman of the University of Maryland began experimenting with a way of visualizing which folders were using up space. Rather than the typical folder/ subfolder tree view that is still often used to decode hard disk contents, Shneiderman looked for a more compact way to evaluate hard disk space usage. The tree map was born. Despite its origin, it’s useful for many other constrained-space visualization requirements. Tableau provides a Tree Map option on Show Me, and permits manual creation of tree maps as well. A tree map is designed to display hierarchical data as rectangles within rectangles. For each rectangle, two measures can be coded—one will affect the size of a rectangle, and the other will affect color. If a single dimension is used, all dimension members will appear size- and color-encoded together. However, if more than one dimension is used (there should be a logical hierarchy between the dimensions, such as State and City), rectangles will be grouped together by the higher-level dimension, with the overall size of the higher-level group of rectangles encoded by a measure. The resulting tree map can display a large number of dimension members in a relatively small space. A particular rectangle whose color/size combination interests the viewer can be hovered over to show a more detailed tooltip.

04-ch04.indd 92

30/07/13 4:36 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 4



Chapter 4: 

To p 1 0 C h a r t Ty p e s

93

If you want to modify a tree map created with Show Me, or create your own, the steps are straightforward:

1. Choose Square as the mark type from the Marks card drop-down.



2. Drag one or more dimensions whose members you want to create rectangles for to Label on the Marks card. Ensure that the higher-level dimension appears first (either drag it first or reorder dimensions on the Marks card).



3. Drag the measure you want to size-encode rectangles with to Size on the Marks card.



4. Optionally drag the dimension or measure you want to color-code rectangles with to Color on the Marks card.

Note several traits of the resulting tree map: •• Member names for both dimensions appear on each rectangle. •• Rectangles for the higher-level dimension (Region) appear together. The overall size of the higher-level rectangles is based on the Size measure (in this example,

04-ch04.indd 93

30/07/13 4:36 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 4



94

Tableau 8: The O f f icial Guide

Central region has significantly higher sales overall than other regions, and East has significantly lower sales). •• Individual rectangles are color-coded (in this example, low-profit states display varying shades of red, while high-profit states display varying shades of green).

Word Cloud The word cloud (sometimes also referred to as a tag cloud) displays members of a chosen dimension as text, but in varying sizes and colors, depending on one or two measures. A common example of word cloud usage is analyzing the effectiveness of search engine keywords in website visit metrics. Although new, the word cloud visualization is not available in Show Me. To create manually, make use of the following Marks card settings: •• The mark type is set to Text from the drop-down. •• The dimension used to create the words is placed on Text. •• The measure used to vary the size of words is placed on Size. •• The dimension or measure used to vary the color of words is placed on Color.

04-ch04.indd 94

30/07/13 4:36 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 5

5

CHAPTER

Interacting with the Viewer

T

ableau provides a great deal of interactivity as you design visualizations. You can quickly modify visualizations by dragging and dropping different fields to different places on the workspace. Eventually, however, you may want to provide your charts and dashboards to viewers who don’t have the full Tableau Desktop product, but who still want to fully interact with your visualizations. By adding interactive features such as quick filters, parameters, and actions, you can still provide an immense amount of flexibility and customizability for your audience without them having to understand the intricate details of Tableau design techniques. Note  Most of the techniques described here require various Tableau interactive end-user environments, such as Tableau Reader, Tableau Online, or Tableau Server. Chapter 9 discusses these various distribution options in more detail. Note  Open the Chapter 5 - Interacting With The Viewer.twbx file in Tableau to see examples that relate to this chapter.

Filtering Data No matter what visualization or analytical tool you use, one of the first things you’ll need to do is filter data. Filtering is simply the process of narrowing down your chart or graph to only the data that is relevant to your current need. For example, if you have an historical data warehouse that contains 10 years of data in millions (or more) of records, it’s very unlikely that you’ll want to include every row in your visualization— you’ll almost certainly want to limit your view to a specific year, or few years. Other options for filtering are as numerous as are your choice of dimensions and measures; only certain regions, sales that are at least $1,000, and so forth.

Basic Filtering While not necessarily an interactive feature of Tableau, basic filtering will often “lead to” interactive filtering. With the multiyear data warehouse example presented previously,

95

05-ch05.indd 95

30/07/13 4:36 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 5



96



Tableau 8: The O f f icial Guide

you may choose to “hard code” a previous two-year filter in your worksheet. This will not be an interactive filter, as the ultimate viewer of your worksheet may not have the ability to change hard-coded filters. However, your viewer may later request the ability to be able to choose one or more years on the fly. Then, you will consider interactive filtering features discussed later in the chapter. The focus point for filtering in Tableau is the Filters shelf. Like other shelves in Tableau, you may drag dimensions or measures to this shelf. Depending on the type of field (dimension or measure) and the field’s data type (string, number, date, and so forth), various filter dialog boxes will result. For example, if you drag a string dimension to the Filters shelf, a filter dialog will appear showing all members of the dimension.

To only include certain values in your worksheet, check the values you wish to retain (the All and None buttons may be used to select all values if only some are checked and to clear all existing checkmarks, respectively). To exclude certain values in your worksheet, check the values you wish to exclude, as well as the Exclude checkbox in the lower right (the dimension values you select will appear with a line through them). When you click OK, the filter will be immediately applied; the field will be placed on the Filters shelf, and the chart will immediately update to reflect the new filter. Modify an existing filter by right-clicking the field indicator on the Filters shelf or by clicking the small arrow on the indicator, and choose Filter from the context menu. The filter dialog box will reappear where you may make desired modifications. To remove a filter, simply drag it off the Filters shelf.

05-ch05.indd 96

30/07/13 4:36 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 5



Chapter 5: 

Interacting with the Viewer

97

A variation of the filter dialog box will appear if you drag a date or date/time field to the Filters shelf. First, you’ll be prompted to choose the date level (year, month, and so forth) you wish to use for the filter. Clicking Next will display the standard filter dialog, presenting choices based on the initial date level you select: •• Relative Date  This option will filter relative to some specified date (initially, today’s date). Relative date filtering is helpful for “yesterday,” “last week,” “two previous years,” and similar types of date ranges that will adjust automatically as your computer’s date and time change. •• Range of Dates  Allows selection of beginning and ending dates in a date range. Variations of this option allow specification of only a beginning or ending date to provide open-ended date range filters. •• Date Level  Choose Year, Quarter, Month, and so forth to filter on one or more years, quarters, months, and the like. For example, if you choose Year, the filter dialog will show all years in the filter field. Conversely, choosing Month will display a choice of the 12 months of the year. Select one or more date values to include in the filter.

•• Count or Count (Distinct)  Evaluates the field as a numeric measure, presenting a numeric filter dialog (discussed later in this section).

05-ch05.indd 97

30/07/13 4:36 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 5



98



Tableau 8: The O f f icial Guide

Dimension and date filters also include additional options for more advanced filtering. In addition to the default General tab, the filter dialog box will display Wildcard, Condition, and Top tabs (date filters only include Condition and Top tabs). Click one of these tabs for more advanced filtering capabilities: •• Wildcard  Allows freeform filters using wildcard searches, such as “contains,” “starts with,” and “ends with” choices. Choose the desired radio button and type full or partial matching text in the Match Value text box.

•• Condition  Filters the chosen dimension, but not on the actual dimension members themselves. Instead, you may specify a condition based on an aggregated numeric value (the count of another dimension, or numeric aggregation of another measure). If, for example, you only wish to include

05-ch05.indd 98

30/07/13 4:36 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 5



Chapter 5: 

Interacting with the Viewer

99

customer segments that are unprofitable, click the Condition tab, click the By Field radio button, select Sum of Profit, and specify a less than (= .35 Then "High" ElseIf [Markup %] >= .20 Then "Medium" Else "Low" End

07-ch07.indd 162

30/07/13 4:37 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 7



Chapter 7: 

C a l c u l a t e d F i e l d s , Ta b l e C a l c u l a t i o n s , a n d S t a t i s t i c s

163

Tip  You may notice that this formula displays mixed-case text for the IF/THEN/ELSEIF/ELSE/ END keywords, as well as line breaks and tabs between parts of the formula. This is perfectly acceptable. The Tableau formula language is not case-sensitive (although string literals within quotation marks or apostrophes are case-sensitive). And, pressing enter to break your formula up into multiple lines, as well as pressing tab to indent parts of the formula, will not affect the outcome of the formula and may make the formula easier to read. A modified form of test logic uses the CASE/WHEN/THEN/END construct (the ELSE keyword is only required if a “catch all” result is desired). Similar to IF/THEN/ END logic, CASE logic tests a single field or expression and returns different results for each condition. In some cases, IF/THEN/ELSEIF/END will be required if multiple tests are needed. However, for a single test with many results, CASE logic may be easier to read and modify. In this example, a combined Product Type-Part Number database field is being tested to determine the type of product the combined field refers to. The calculated field will evaluate the product-type portion of the combined field (which is separated from the part number by a dash) and return one of three descriptive words indicating the type of product. If an unanticipated product-type value is encountered, the calculated field will return “Unknown.” CASE LEFT([Product Type-SKU], FIND([Product Type-SKU],"-")-1) WHEN "SFT" THEN "Software" WHEN "HD" THEN "Hardware" WHEN "ACC" THEN "Accessory" ELSE "Unknown" END

Because the number of characters indicating the product type is variable (in some cases, two characters; in other cases, three), the FIND function is used to determine the position of the hyphen, which separates the product type from the part number. Subtracting one from the location of the hyphen permits the LEFT function to be used to retrieve only the abbreviated product type. CASE logic is then used to assign a value to each abbreviated product type. If an unanticipated product type is encountered, the optional ELSE keyword will return the word “Unknown.” If ELSE was not used and an unanticipated product type was encountered, the calculated field would return a NULL value.

Aggregation Within Calculated Fields

Tableau, by its nature, makes heavy use of data aggregation. From the simplest of basic charts to more complex visualization requirements, Tableau is typically dealing with “rolled up” rows from the data source that include aggregated numeric measures for each occurrence of a dimension member (by default, using a SUM aggregation). Because of this, you may need to consider aggregation when creating calculated fields in Tableau more than you would in other data analysis products. (continued)

07-ch07.indd 163

30/07/13 4:37 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 7



164



Tableau 8: The O f f icial Guide

Consider a simple requirement to determine profitability. In an individual data record, a Profit measure will contain a positive value if the product was sold for more than it cost. If the product was sold at a loss, the Profit measure will contain a negative value. Thus, the following IF/THEN/ELSE calculated field will return a “Yes” or “No” value, depending on whether the record indicates a profit or loss: If [Profit] > 0 Then "Yes" Else "No" End

If this calculated field is then placed on Color on the Marks card to indicate profitability of a series of product categories, the following will result.

In this instance, the calculated field is evaluated at the underlying data source row level, with each individual row returning a “Yes” or “No” value. Tableau then aggregates the Yes and No values itself, breaking down each bar color based on the number of Yes and No values. The result is a visualization of the portion of each product category that is profitable or not.

07-ch07.indd 164

30/07/13 4:37 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 7



Chapter 7: 

C a l c u l a t e d F i e l d s , Ta b l e C a l c u l a t i o n s , a n d S t a t i s t i c s

165

But what if you want to analyze the entire product category to determine if the category, in its entirety, is profitable or not? Consider the following slight change to the calculated field: If SUM([Profit]) > 0 Then "Yes" Else "No" End

Here, the calculated field is making use of a built-in Tableau aggregation function. In this case, the calculated field itself is evaluating the rolled-up aggregate profit value, determining whether the SUM of profit is positive or negative. When this is placed on Color on the Marks card, a different chart results.

Tip  If you perform aggregation within a calculated field (by using SUM, MAX, or other aggregation functions), Tableau will always place the calculated field in the Measures portion of the Data Window, even if the calculated field returns a non-numeric result. Also, when placed on a shelf, the calculated field will show an AGG aggregation type. This indicates that the calculated field itself is performing internal aggregation and that Tableau will not attempt to aggregate the field again using a SUM.

07-ch07.indd 165

30/07/13 4:37 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 7



166



Tableau 8: The O f f icial Guide

Creating Binned Fields As demonstrated earlier in the chapter, it’s possible to create a calculated field that evaluates a numeric measure and returns a series of categorical results (such as “High,” “Medium,” and “Low”) based on a range of measure values. This measure-categorizedinto-dimension capability doesn’t always require a calculated field, however. By creating a binned field, Tableau provides the capability directly in the Data window. A binned field is a measure that is broken into a consistent set of “buckets” or bins, with each bin consisting of a range of values. For example, if your data source contains an Age measure, you may prefer to analyze data for people aged 0–10, 10–20, 20–30, 30–40, and so forth. Each of these age ranges would become a member of a new dimension, allowing you to analyze sales, website hits, or a similar measure for each of the age ranges. Consider the following bar chart (this type of chart is often referred to as a histogram). This chart consists of a large number of dimension members, each consisting of a $50 range of profitability. The dimension members start at the minimum profit in the data source and end at the maximum profit in the data source, with $50 bins appearing in between. The measure being charted is the Count of Row ID, indicating the number of line items falling in each profit range. Notice the large concentration of line items near minimal loss or profit. While there are a few extreme loss and profit line items on each end of the range, the largest concentration is at the little loss/little profit portion of the range. This is not at the center of the range, however, indicating that, overall, more line items are profitable than not profitable.

07-ch07.indd 166

30/07/13 4:37 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 7



Chapter 7: 

C a l c u l a t e d F i e l d s , Ta b l e C a l c u l a t i o n s , a n d S t a t i s t i c s

167

The key to this histogram is the $50 profit “buckets” or bins. While it might be possible to create a calculated field that broke down the Profit measure into this huge number of bins, Tableau’s built-in bin capability makes this very simple. By just right-clicking the Profit measure and choosing Create Bins from the context menu, a new dimension is created. In this case, the new dimension is given a meaningful name (by default, Tableau will give the dimension the same name as the measure, followed by “bin”), and the bin size is specified. If you so choose, you may use an existing parameter or create a new parameter to set the bin size “on the fly.” Once created, the new bin field will appear in the Dimensions portion of the Data Window. As with any other dimension, it may be dragged to the desired location on the workspace.

Table Calculations So far, this book has presented myriad scenarios for displaying data in any number of ways via various chart types, as well as using text tables (also referred to as crosstabs). For the most part, these various visualization types have displayed numeric measures aggregated for each dimension member included on the chart. By design, Tableau takes maximum benefit of your underlying data source or database and requests that it perform aggregation, only returning summarized rows to your visualization (the exception to this rule comes into play if you uncheck Aggregate Measures from the Analysis drop-down menu). For example, even if your underlying database contains many (perhaps millions) of underlying rows and you build a visualization that simply displays one measure for a dimension that exposes only 10 members, the database itself will “roll up” the dimensions to 10 levels, calculating the aggregated value for the measure for each level. The database will actually only return 10 rows to Tableau. Video  Using Table Calculations Consider the simple crosstab illustrated in Figure 7-2, which only displays Sum of Sales by Year and Region. Notice that both row and column grand totals have been enabled from the Analysis | Totals drop-down menu. In this case, regardless of the number of underlying records in the data source, the data source itself has calculated all summed values and only returned 25 aggregated values to Tableau—all Tableau has done is formatted and displayed them without performing any calculations whatsoever. But what if you wanted to perform some other kind of analysis on this data instead of, or in addition to, just looking at total sales by year and region? Perhaps, for example, you would like to analyze how much sales has changed from year to year, either in dollars or percent. Or, maybe you would prefer to visualize these numbers as a running total that gets larger and larger as it “runs” across the crosstab by year, or down the

07-ch07.indd 167

30/07/13 4:37 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 7



168



Tableau 8: The O f f icial Guide

Figure 7-2  Simple crosstab

crosstab by region. In these types of cases, an additional calculation will need to be done once the aggregated values have already been returned by the database. As a general rule, standard industry databases don’t have the capability to carry out these “secondary” calculations, performing multiple “passes” over the data to calculate a secondary result based on the values from a primary result. Well, Tableau provides the ability to perform these additional calculation passes by way of Table calculations, additional calculations that Tableau performs after aggregated values have been returned from the underlying data source. To create a table calculation, you must first design a visualization using standard dimensions and measures, as discussed previously in this book. Once a measure has been added to the workspace and assigned an aggregation type (Sum, by default), you may then create a table calculation. There are several ways of creating table calculations: •• Select one of the sub-menu options from the Analysis | Percentage Of dropdown menu. •• Right-click the measure on the workspace and choose one of the sub-menu options from the Quick Table Calculation context menu item. •• Right-click the measure on the workspace, choose Add Table Calculation from the context menu, and complete the resulting dialog box. Revisiting the “percent change from year to year” requirement discussed earlier, Figure 7-3 shows the crosstab originally displayed in Figure 7-2 after Percentage Of | Table has been selected from the drop-down menus.

07-ch07.indd 168

30/07/13 4:37 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 7



Chapter 7: 

C a l c u l a t e d F i e l d s , Ta b l e C a l c u l a t i o n s , a n d S t a t i s t i c s

169

Figure 7-3  Percentage Of | Table menu option

One change is blatantly obvious. Rather than displaying dollar values indicating aggregated sales for each combination of year and region, the crosstab now displays percentages, with each individual year/region value showing as a percentage of overall sales. Row and column dollar totals have also been replaced with percentages of the overall total they are responsible for. And, the “grand-grand total” at the lower right indicates that it is, in fact, 100 percent of the total amount. What may not be so obvious is the change to the SUM(Sales) field indicator on the Marks card. Looking closely, you’ll notice that a small delta (triangle) icon now appears on the field indicator. This confirms that this measure has been converted to a table calculation.

If you undo the previous Percentage Of option (or choose Percentage Of | None) to return the measure to its original aggregation and then right-click the measure and choose Quick Table Calculation | Percent Of Total from the context menu, you’ll see a slightly different result, as illustrated in Figure 7-4. Here, the percentages are still displayed, but are calculated across each region row rather than the entire crosstab. One of the immediate questions you may ask after creating a table calculation is, “How do I see the original measure, as well as the table calculation, to help me analyze further?” Especially when you first start working with table calculations, you’ll probably want to see the original measure along with the table calculation to begin to understand how table calculations behave. This is a fairly simple process.

07-ch07.indd 169

30/07/13 4:37 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 7



170



Tableau 8: The O f f icial Guide

Figure 7-4  Quick table calculation – percent of total

Just re-add the original measure to the visualization again. In the case of a crosstab, you may drag the original measure to Text on the Marks card, or just double-click the original measure to invoke Measure Names and Measure Values on the crosstab. The original measure won’t display the delta icon, while the table calculation will.

07-ch07.indd 170

30/07/13 4:37 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 7



Chapter 7: 

C a l c u l a t e d F i e l d s , Ta b l e C a l c u l a t i o n s , a n d S t a t i s t i c s

171

Caution  Using the Percentage Of drop-down menu option prohibits the original measure from being added to the visualization alongside the table calculation. If you wish to display both the original measure and a percentage table calculation, use right-click context menu options to create the table calculation instead of the drop-down menus. Even though the table calculation illustrated in both Figures 7-3 and 7-4 was created with a percent of total option, you’ll notice a difference. When using the pull-down menu Percentage Of | Table option, the table calculation evaluated for the entire table—each combination of year and region was calculated as a percent of the overall total. However, when the Percentage Of Total quick table calculation was used, each region row was calculated individually, with the total for each region row indicating 100 percent and the yearly values for each region contributing to the region total, rather than the overall total for the entire crosstab. You may wish to modify the second table calculation to behave like the first—calculating each year/region combination as a percentage of the overall total. Or, perhaps you prefer to have the percentages calculated down the yearly columns with each region total contributing to a 100 percent yearly total. What determines the end result is a table calculation’s direction and scope. A table calculation’s direction refers to the order in which individual table “cells” are calculated—left to right (referred to as across), top to bottom (referred to as down), left to right and then top to bottom (referred to as across then down), or top to bottom and then left to right (referred to as down then across). A table calculation’s scope determines when the table calculation will reset to a beginning value. Sometimes, it’s difficult to separate the two properties. For example, the direction used in the table calculation illustrated in Figure 7-3 is “across then down.” The scope used is “table,” as the percentage never resets within the entire table. Conversely, the direction used in the table calculation illustrated in Figure 7-4 is simply “across,” as the percentage is always reset before any “down” calculation takes place. And the scope used is “table (across),” indicating that the table calculation value will be reset when it reaches the end of a row. Note  Tableau table calculation documentation also refers to the terms “addressing” and “partitioning.” Addressing can be considered similar to direction, while partitioning can be considered similar to scope. Direction and scope choices are set automatically for quick table calculations and for Percentage Of pull-down menu choices. However, you may edit direction and scope after a quick table calculation has been created by right-clicking the table calculation field indicator (it will display a delta icon) and choosing either the Compute Using or Edit Table Calculation context menu option. If you wish to customize direction and scope options when initially creating a table calculation, you may right-click the desired measure and choose Add Table Calculation from the context menu. The Table Calculation dialog box will provide a choice of calculation type (Running Sum, Percent Of Total, Moving Calculation, and so forth), as well as direction and scope options in the Running Along drop-down list. You can even select “Advanced” from the Running

07-ch07.indd 171

30/07/13 4:37 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 7



172



Tableau 8: The O f f icial Guide

Along drop-down list to display another dialog box providing precise options for direction and scope options.

07-ch07.indd 172

30/07/13 4:37 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 7



Chapter 7: 

C a l c u l a t e d F i e l d s , Ta b l e C a l c u l a t i o n s , a n d S t a t i s t i c s

173

Consider another crosstab that analyzes order quantity by year and quarter on columns and product type and region on rows. Grand totals are shown to help evaluate table calculation behavior.

Now look at various direction and scope behavior when a Running Sum table calculation is added: •• Table (Across)  Notice that the value increments across each row, with the last value in the row equaling the row total. The table calculation resets at the beginning of each row.

07-ch07.indd 173

30/07/13 4:37 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 7



174



Tableau 8: The O f f icial Guide

•• Table (Down)  Notice that the value increments down each column, with the last value in the column equaling the column total. The table calculation resets at the beginning of each column.

•• Table (Across then Down)  Notice that the value increments across each row, with the last value in the row equaling the accumulated value as of that row. The table calculation then continues to increment starting at the next row. The value is never reset and accumulates all the way across, then down, until reaching the overall grand total at the lower right.

07-ch07.indd 174

30/07/13 4:37 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 7



Chapter 7: 

C a l c u l a t e d F i e l d s , Ta b l e C a l c u l a t i o n s , a n d S t a t i s t i c s

175

•• Pane (Across)  Notice that the value increments across each row until it reaches the last quarter in a year (the partition for each year is referred to as a pane). It then resets at the beginning of the next year pane. The row grand total consists of the pane accumulated totals.

•• Pane (Down)  Notice that the value increments down each column until it reaches the last region in a department (the partition for each department is referred to as a pane). It then resets at the beginning of the next department pane. The column grand total consists of the pane accumulated totals.

07-ch07.indd 175

30/07/13 4:37 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 7



176



Tableau 8: The O f f icial Guide

While this is not a complete overview of all possible direction and scope options, you should now have a good idea of the general approach to using table calculations. You’ll want to experiment with various table calculation options—you may always “undo” or make another choice—until you arrive at the correct result. Tip  While their name may imply that table calculations are only appropriate for “tables,” such as text tables or crosstabs, they perform equal functions with any chart type. As with text tables, simpler single dimension/single measure charts will provide fewer scope and direction options than charts that use multiple dimensions/measures on rows and columns.

Using Table Calculation Functions in Calculated Fields

When creating a new table calculation with the Add Table Calculation option or editing an existing table calculation, there are many choices in the dialog box, such as the type of calculation (Running Sum, Difference From, and so forth), the type of aggregation to use in the calculation (Sum, Average, and others), and direction and scope options. While this dialog box makes specifying table calculations straightforward, there are yet more ways to customize a table calculation. For every table calculation you create with the dialog box, an option to view and customize becomes available which will result in a new calculated field in the Data window. Consider this table calculation, created to act as the right axis line chart value of a Pareto chart.

07-ch07.indd 176

30/07/13 4:37 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 7



Chapter 7: 

C a l c u l a t e d F i e l d s , Ta b l e C a l c u l a t i o n s , a n d S t a t i s t i c s

177

This particular table calculation actually performs two calculations (this is sometimes referred to as a two-pass table calculation). The first is a running sum to accumulate sales totals across the bars that make up the left axis of the Pareto chart. Then, a second calculation is selected (again, calculating across the “table,” or bars of the left axis) to determine the percent of total based on first the running sum. The ultimate purpose of this table calculation is to determine when 80 percent of product sales have occurred. Note the Customize button at the bottom left of the dialog box. Clicking this button will display a formula editor, similar to that illustrated earlier in the chapter when creating a calculated field. You’ll see special Tableau table calculation functions (in the Table Calculation category of the Functions list) that perform table calculation logic after the aggregated set of data has been returned from the database.

If you wish to modify the Tableau-generated table calculation formula, make any desired changes. Make sure to give the calculation a meaningful name, as a new calculated field with that name will be created and placed in the Data Window. When you click OK, a modified table calculation dialog box will appear (continued)

07-ch07.indd 177

30/07/13 4:37 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 7



178



Tableau 8: The O f f icial Guide

where you may choose direction/scope options. Make the desired choice and click OK. The original table calculation will then be replaced with the new calculated field you just created. You may also copy the logic from the original table calculation in another calculated field, while leaving the original table calculation as-is. For example, to apply a color value to the left axis bars on the Pareto chart, indicating which categories make up the 80 percent of sales illustrated on the right axis line chart, the logic from the table calculation can be copied to the Clipboard and used in another calculated field.

When this calculated field is placed on Color on the Marks card for the left axis bar chart, the same logic used to calculated the percent of total running sum will color bars based on the 80 percent “Pareto Principle.”

07-ch07.indd 178

30/07/13 4:37 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 7



Chapter 7: 

C a l c u l a t e d F i e l d s , Ta b l e C a l c u l a t i o n s , a n d S t a t i s t i c s

179

Reference Lines, Bands, and Distribution Although not strictly tied to statistical analysis, reference lines are often helpful in highlighting a desired portion of a visual chart. A reference line, as the name implies, is a line that is drawn across the numeric axis of a chart denoting a particular desired value, such as the average, maximum, median, or some other constant value (such as a sales goal). Variations of reference lines include a reference band, a shaded portion of a numeric axis beginning and ending at specified values. Another variation, a reference distribution, results in several gradient shaded bands at various intervals across the numeric axis. No matter which option you prefer, begin by right-clicking in the numeric axis on your chart and selecting Add Reference Line from the context menu. If reference lines already exist on your chart, you may also edit or remove them via context menu choices. You may also select an existing reference line on the chart itself, right-click, and choose appropriate options from the context menu.

07-ch07.indd 179

30/07/13 4:37 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 7



180



Tableau 8: The O f f icial Guide

Single Reference Line A single reference line denotes one particular point on the numeric axis. It may be based on a variety of calculations, using existing measures in your chart. You may also base the value on a constant number that you “hard code” into the dialog box, or the value of a parameter. In this case, one line will appear across the entire “table” (the entire chart, regardless of how many nested dimensions have been used). The average of the sales measure is being displayed by the reference line. A custom label has been specified, which enables a freeform text box where literal text and a combination of existing values from the chart may be used to label the reference line. The line has been formatted as a bold red line with no fill options.

07-ch07.indd 180

30/07/13 4:37 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 7



Chapter 7: 

C a l c u l a t e d F i e l d s , Ta b l e C a l c u l a t i o n s , a n d S t a t i s t i c s

181

Tip  A measure must be “in use” somewhere on your chart in order to base a reference line on it. If you want to base a reference line on a measure other than the one actually being displayed on the chart, drag the desired measure to Detail on the Marks card. Then, when you create or edit a reference line, the additional measure will be available in the Reference Line dialog box.

Reference Band A reference band highlights a range on the numeric axis. The beginning and ending values may be based on a variety of calculations, using existing measures in your chart. You may also base the beginning and ending values on a constant number that you “hard code” into the dialog box, or the value of a parameter. In this case, a separate band will appear for each “pane” (in this particular example, a pane exists for each department). The lower portion of the band is based on the median of the sales measure, with the upper band based on the maximum of the same measure. Custom labels have been specified, which enables a freeform text box where literal text and a combination of existing values from the chart may be used to label the upper and lower boundaries of the band. No line is specified to denote the upper and lower boundaries of the band, but the band is shaded with a medium gray color.

07-ch07.indd 181

30/07/13 4:37 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 7



182



Tableau 8: The O f f icial Guide

Reference Distribution Like a reference band, a reference distribution shades a defined area on the numeric axis. However, rather than just specifying a beginning and ending point for a distribution, you may specify several points, which are shaded with various gradients. Variations may be based on a number of statistical values, including confidence interval, percentages, percentiles, quantiles (four quartiles, five quintiles, and so forth), or standard deviation. Reference bands are particularly helpful for certain chart types, such as bullet charts and box plots (both are covered in Chapter 4). In this case, a separate band will appear “per call” (for each bar in the chart). The distribution is based on 60 percent and 80 percent of the average of the sales goal measure. No label or line is being specified. A graduated gray/light palette has been chosen, and options to fill both above and below the 60 and 80 percent levels have been selected. Used in combination with another single reference line, the reference distribution allows comparison of the actual sales bar to the 60/80 percent range of the goal on a bullet chart.

07-ch07.indd 182

30/07/13 4:37 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 7



Chapter 7: 

07-ch07.indd 183

C a l c u l a t e d F i e l d s , Ta b l e C a l c u l a t i o n s , a n d S t a t i s t i c s

183

30/07/13 4:37 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 7



184



Tableau 8: The O f f icial Guide

Trend Lines As the name indicates, a trend line is a line (or series of lines) that appears on a chart indicating the general trend the underlying marks on the chart are exhibiting. A trend line uses various built-in statistical models (which are selectable) to determine appearance and behavior. To create a trend line, choose Analysis | Trend Lines | Show Trend Lines from the drop-down menus, or right-click the chart (not an axis or headers) and select Trend Lines | Show Trend Lines from the context menu. Tip  Trend lines require that both the Column and Row shelves contain a numeric measure (typically, this results in a scatter plot, covered in Chapter 4). A trend line is also permitted if a chart is based on a date or date/time dimension (unless they are set to month/day/year or month/year date levels) and a measure. If you attempt to display trend lines otherwise, an error message will result.

A default trend line will appear. You may immediately hover your mouse over a trend line, or select it, to display a tooltip. The tooltip will display basic statistical information about the makeup of the trend line. If you wish to examine or modify the statistical model that creates the trend line, right-click a selected trend line or the chart

07-ch07.indd 184

30/07/13 4:37 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 7



Chapter 7: 

C a l c u l a t e d F i e l d s , Ta b l e C a l c u l a t i o n s , a n d S t a t i s t i c s

185

itself. From the context menu, choose Edit Trend Lines. Or, select Analysis | Trend Lines | Edit Trend Lines from the drop-down menus. A dialog box will appear, permitting you to change trend line behavior.

07-ch07.indd 185

30/07/13 4:37 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 7



186

Tableau 8: The O f f icial Guide

A more detailed discussion of the statistical model making up the trend line may be displayed by choosing Describe Trend Model from the same right-click context menu or by choosing the Analysis | Trend Line drop-down menu.

07-ch07.indd 186

30/07/13 4:37 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 8

8

CHAPTER

Creating Dashboards

I

n many cases, the finished product in a business intelligence project consists of one or more dashboards. A Google search on “dashboard” probably will return more computer-related definitions than descriptions of the portion of a car that displays the speedometer, fuel gauge, and other key performance indicators. Still, a BI dashboard serves a similar purpose: to combine, in one viewable space, more than one key performance indicator, chart, or diagram to present a unified view to your audience. While some other BI products allow starting with a blank dashboard and adding components to it, Tableau presents a different dashboard paradigm. In Tableau, individual worksheets, each with a single visualization, are first created within a workbook. After desired sheets have been created, one or more sheets are combined on one or more dashboards in the same workbook. Depending on how the workbook is finally distributed or viewed (in a copy of Tableau Desktop or Tableau Reader, exported to a PDF file, or posted to Tableau Server or Tableau Public), the end user may view the combined dashboard, individual sheets, or both. Note  A complete discussion of Tableau distribution options is presented in Chapter 9. Note  Open the Chapter 8 - Dashboards.twbx file in Tableau to see examples that relate to this chapter.

Creating a Simple Dashboard As mentioned previously, Tableau’s basic dashboard paradigm revolves around existing worksheets. As such, you’ll want to think about your ultimate dashboard requirement as you create individual worksheets. Probably the most basic, but sometimes ignored, consideration is the names given to worksheets. Not only will meaningful worksheet names help you keep track of desired views when designing the dashboard, but worksheet names will automatically appear on the dashboard as individual titles.

187

08-ch08.indd 187

30/07/13 4:38 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 8



188



Tableau 8: The O f f icial Guide

Other dashboard considerations include additional visual elements in each worksheet beyond the basic visualization. For example, visible color legends, size legends, and quick filters will be included on the dashboard when you initially add the worksheet. While you can move or remove any extra element that you don’t want on a dashboard, you may choose to hide any extraneous legends or quick filters on the worksheet itself before you even begin dashboard design. Video  Creating a Dashboard When you’re ready to create a dashboard in an existing workbook, right-click on the tab list or filmstrip view and choose New Dashboard from the context menu, click the New Dashboard tab along the bottom of the workspace, or choose Dashboard | New Dashboard from the drop-down menus. A blank dashboard will appear with the Data window replaced by four sections: a list of existing worksheets in the workbook, a selection of additional dashboard elements (covered in the next section of this chapter), a layout section containing the organization of items added to the dashboard, and a sizing section for customizing dashboard element sizes. If you’ve used Tableau versions prior to 8, one dashboard change will be of particular interest. Notice the Tiled/Floating choice just below the list of dashboard elements about midscreen. By default this is set to Tiled, which will result in behavior you are familiar with from previous Tableau versions. The Floating option, new in Tableau 8, allows far more free-form placement of objects on the dashboard. This selection can be changed at any time, and applies to any worksheets you add to the dashboard moving forward. If the default Tiled setting is retained, worksheets will be placed on the dashboard in a logical side-by-side, top-and-bottom fashion, with no worksheet, legend, title, caption, or quick filter permitted to overlap any other dashboard element. If Floating is chosen, any worksheet added to the dashboard from that point forward (even if there are already tiled worksheet elements on the dashboard) can be freely placed in any location.

Best Practice  Especially if you’ve used earlier versions of Tableau, you may be immediately tempted to add all dashboard elements with the Floating option for maximum flexibility. You’ll soon discover, however, that perfectly aligning dashboard elements may prove difficult. It may be preferable to use the Tiled option to facilitate good element alignment. You can then select individual dashboard elements that you want to move freely (such as legends), and choose the Floating option for them only. This is discussed later in the chapter under “Floating Placement.”

08-ch08.indd 188

30/07/13 4:38 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 8



Chapter 8: 

Creating Dashboards

189

Tiled Placement This default setting uses the same dashboard design approach as previous versions of Tableau, placing worksheets and their associated elements (captions, quick filters, and so forth) in a strict “no-overlap” order on the dashboard. The most basic way to use tiled placement is to simply double-click on worksheet names in the order you want to add them to the dashboard. Tableau will add each worksheet to the dashboard in a side-by-side, then top-and-bottom order. For example, if you double-click two worksheets, the second will be placed to the right of the first, with the dashboard divided in half vertically. If you double-click a third sheet, the dashboard will split vertically on the left, with the third worksheet appearing below the first. A fourth double-click will divide the dashboard into four even quarters, one worksheet being placed in each. All related worksheet elements (such as quick filters and legends) will be placed on the right side of the dashboard. Figure 8-1 illustrates a simple dashboard containing four worksheets that were doubleclicked in order of appearance in the worksheet list. You can also drag and drop worksheets from the worksheet list onto the dashboard. While resulting placement of new views can seem confusing if you’re just getting used

Figure 8-1  Basic tiled dashboard created using double-click

08-ch08.indd 189

30/07/13 4:38 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 8



190



Tableau 8: The O f f icial Guide

to dragging and dropping sheets, there are a few tips that will help you master exactly where the sheet you are dragging will appear in relation to existing sheets. •• A large gray box indicates that the sheet will split the dashboard in half vertically or horizontally.

08-ch08.indd 190

30/07/13 4:38 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 8



Chapter 8: 

08-ch08.indd 191

Creating Dashboards

191

30/07/13 4:38 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 8



192



Tableau 8: The O f f icial Guide

•• A thin gray box (typically at the very edge of the dashboard, but also between legends and worksheets) indicates that the sheet will take up that entire portion of the dashboard, resizing all other dashboard elements to accommodate it.

08-ch08.indd 192

30/07/13 4:38 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 8



Chapter 8: 

08-ch08.indd 193

Creating Dashboards

193

30/07/13 4:38 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 8



194



Tableau 8: The O f f icial Guide

•• A medium gray box indicates that the sheet will be placed in between the two elements on either side, resizing the other two elements to accommodate it.

Once you’ve placed a worksheet on the dashboard, you can move it to a different location. When you select the desired sheet on the dashboard, you’ll notice the small

08-ch08.indd 194

30/07/13 4:38 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 8



Chapter 8: 

Creating Dashboards

195

series of white dots at the top of the title bar (known as a “move handle”). Hold your mouse down on the move handle and drag the sheet to the desired location, keeping in mind the tips just discussed.

You can also resize a worksheet or legend once it has been placed on the dashboard. Point to the top, bottom, left, or right edge of the element you want to resize until you see a double-arrow cursor. Drag to resize the selected element, and resize adjoining elements accordingly. Tableau makes experimenting easy. If you don’t like the result of a worksheet placement or resize, simply click the undo button in the toolbar, or press ctrl-z, and try again. Tip  After you add a worksheet to the dashboard, you may find that the visualization in the worksheet is not properly sized. There may be scrollbars that you don’t want to see, or an object may be too small or too large for the space it’s been allotted on the dashboard. Similar to the fit option available in the toolbar when you’re creating a worksheet, you can size the object separately within the dashboard. Select the desired sheet on the dashboard and click the context arrow in the upper right of the title bar. Make the desired choice from the Fit option on the context menu.

08-ch08.indd 195

30/07/13 4:38 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 8



196



Tableau 8: The O f f icial Guide

Floating Placement While tiled dashboards guarantee perfect alignment, they also present a certain amount of rigidity that has sometimes proven frustrating in previous Tableau versions. Tableau 8 introduces floating placement that permits worksheets and associated dashboard elements to be placed freely anywhere on a dashboard. After clicking the Floating button under “Add new sheets and objects as,” worksheets can be freely placed anywhere on the dashboard. If the worksheet includes legends, quick filters, or a caption, these items will also be placed on the dashboard as free-form elements. Once they have been dropped, worksheets and their associated elements can be freely moved and resized without limitation. An immediate benefit of floating placement is the ability to move legends on top of existing worksheets that may have blank areas, such as maps. Figure 8-2 illustrates this. If you already have existing tiled worksheets on the dashboard, floating worksheets will always appear on top of them. If you have multiple floating worksheets, you can choose the floating order, placing one object on top of or behind other floating objects.

Worksheet floating on top of other worksheet

Tiled worksheet

Floating image and text

Map legend and quick filter floating over map

Figure 8-2  Floating worksheets and legends

08-ch08.indd 196

30/07/13 4:38 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 8



Chapter 8: 

Creating Dashboards

197

Select the desired floating sheet on the dashboard and click the context arrow in the upper right of the title bar on the object, and make the desired floating-order choice from the context menu.

Tip  You may find that a combination of tiled and floating dashboard elements gives you the best of both worlds. For example, you may prefer the perfect alignment of several tiled worksheets. However, you then may want to place map legends over unused areas of a map (such as open water). Simply select the legend you want to float, click the context arrow in the title bar, and check Floating from the context menu. The legend can then be moved to any place on the dashboard.

Associated Dashboard Elements Any legends, titles, quick filters, and parameters originally belonging to a worksheet will appear on the dashboard when you add the worksheet. If you add a worksheet in tiled mode, the associated elements will be tiled. If you use floating mode, associated elements will be free-floating on the dashboard. If the worksheets that make up your dashboard contain even a moderate number of these associated elements, the dashboard can quickly become cluttered with multiple legends, filters, and parameters. Consider removing extraneous elements that don’t add to overall dashboard effectiveness. For example, if a worksheet mark is size encoded, and the actual values of the size aren’t necessary for effective use of the dashboard, a size legend may unnecessarily take up valuable dashboard space. The same consideration may apply to a color legend if general color encoding can be deduced by simply looking at the worksheet. In these cases, simply select the legend and click the small × in the upperright corner to remove the legend. If you later want to redisplay a dashboard element, just select the associated sheet on the dashboard. Then make the desired choice from the Analysis drop-down menu, or context menu (displayed by clicking the context arrow in the title bar).

08-ch08.indd 197

30/07/13 4:38 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 8



198



Tableau 8: The O f f icial Guide

You can also move elements away from their default location (the right side of the dashboard for tiled worksheets, and next to the associated worksheet in floating mode). For example, a tiled legend on the right side of the dashboard may be more effective if it appears next to its associated worksheet that may have been placed in the lower left of the dashboard. Don’t forget the new Tableau 8 option to float legends, even if the associated worksheet is tiled, permitting the legend to be placed partially or fully on top of the associated worksheet.

Best Practice  If you have several worksheets that use the same quick filter, consider one of several approaches to eliminate duplicate quick filters appearing on a dashboard. Tableau 8 provides more flexibility than previous versions with options on the quick filter context menu. Look for choices to apply the quick filter to the entire data source (previously referred to as Global), or one or more sheets on the dashboard. You may also consider using a parameter instead of a quick filter. The parameter can be applied flexibly to more than one worksheet, but need only be displayed on the dashboard once. Quick filters and parameters are covered in detail in Chapter 5.

Advanced Dashboard Elements So far, this chapter has discussed adding worksheets, and their associated elements, to a dashboard. Tableau includes additional elements you can add from the left side of the screen when creating a dashboard. These additional elements permit text and images to be placed on the dashboard, as well as additional items to support web pages within dashboards, blank objects for spacing, and containers to help further refine the way a dashboard is organized. In addition, the Layout and Size sections provide various ways of interacting with and customizing your dashboard.

Layout Container A layout container is an outline or box that contains other objects, such as worksheets, legends, and quick filters. The main benefit of a layout container is automatic resizing of objects within it. If, for example, a quick filter changes the size of a worksheet in a container (perhaps a crosstab shows fewer rows), the other objects in the container will automatically resize to accommodate the smaller worksheet. With tiled worksheets (when using tiled mode in version 8, and with Tableau versions before 8), layout containers are an integral part of a dashboard. In fact, even though you don’t explicitly choose them, layout containers are added in quantity when you add worksheets in tiled mode. Consider the dashboard illustrated in Figure 8-3, which was created by simply dragging three worksheets to a new dashboard with tiled mode selected. Because one worksheet includes two legends and a quick filter, and another worksheet includes another legend, several layout containers are automatically created to accommodate the combination of worksheets and associated dashboard elements.

08-ch08.indd 198

30/07/13 4:38 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 8



Chapter 8: 

Creating Dashboards

199

An overall container encompasses two other containers.

Enclosed within the first container, all three worksheets are located in a third layout container.

Enclosed within the first container, quick filters and legends are located in a second layout container.

Figure 8-3  Layout containers automatically added to a dashboard

Note  If you are using floating mode, you will probably find layout containers to be of little benefit. They are generally only applicable to tiled dashboards. There are two general ways to familiarize yourself with automatic layout container creation: •• From a worksheet’s context menu (click the context arrow in a worksheet’s title bar), choose Select Layout Container. This will highlight the layout container that the worksheet is contained within.

08-ch08.indd 199

30/07/13 4:38 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 8



200



Tableau 8: The O f f icial Guide

•• Examine the Layout section of the dashboard window on the left side of the screen (covered in more detail later in the chapter). This section outlines the layout container hierarchy of the dashboard, indicating how many layout containers there are, whether they are horizontal or vertical, and what dashboard elements are contained within them. You can add your own layout containers to your dashboard by dragging them from the left side of the screen to the dashboard. Choose a horizontal or vertical container, depending on whether you want worksheet widths or heights to automatically resize, respectively. Then drag worksheets into the just-added containers. Look carefully—a thin blue outline around an existing container indicates that a worksheet will be dropped in that container. You can add a border to layout containers with the Format option. Select the desired layout container and click the context arrow in the title bar, choosing Format from the context menu. You can also right-click on the container name in Layout and choose Format Container. The dashboard section on the left will be replaced by a Format Container drop-down. Choose the type of border you would like the container to display.

Blank Another dashboard element that’s primarily intended for tiled dashboards is the blank. When dragged to a dashboard and sized to a desired width or height, this element simply inserts white space that can be used to separate dashboard elements from each other.

Text In addition to individual worksheet titles (which appear automatically when a worksheet is added to a dashboard), as well as an overall dashboard title that can be displayed by way of the Dashboard | Show Title drop-down menu item, you can add additional text by dragging this item from the left side of the dashboard window. When you drop the text element, an Edit Text dialog box will appear allowing you to type and format text, including adding predefined dashboard fields from the Insert dropdown menu. Text can be added in either tiled or floating mode. In tiled mode, text will exhibit the same “gray box” behavior as other dashboard elements when being placed or moved on the dashboard.

Image Also usable in tiled or floating mode, a bitmap graphic can be added to your dashboard by dragging Image from the left of the dashboard window. Once dropped on the dashboard, a dialog box will appear prompting for the choice of an image file from a local or network drive. Navigate to the desired folder and select an image file. You can also type in a full URL to an image on a web server. Once an image has been added, you can change or format the image by right-clicking on the image on the dashboard or right-clicking on the image item in Layout.

08-ch08.indd 200

30/07/13 4:38 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 8



Chapter 8: 

Creating Dashboards

201

Best Practice  Many a dashboard includes a large company logo, often in the upper left of the dashboard. Reconsider this approach. As the human eye generally processes information from left to right and top to bottom, the upper left of a dashboard is often the first thing seen. A key metric is probably better suited for upper-left placement in a dashboard.

Web Page A web page can be embedded in a dashboard by dragging Web Page from the left side of the screen. A URL prompt accepts any standard web page address. All typical web page interactivity, such as hyperlinks, is available on the web page in the dashboard. While this allows you to include a static web page in your dashboard, exceptional flexibility to customize web page interactivity exists with dashboard actions, which are discussed later in the chapter.

Setting Dashboard and Element Sizes As a general rule, placing worksheets on dashboards is a simple drag-and-drop process. And sizing elements once they appear on a dashboard is simple—just point to the element and resize when the sizing handles appear. However, Tableau 8 introduces the Size section in the lower left of the dashboard window, which provides precise control over the position and size of individual dashboard elements (provided they are in floating mode). Either on the dashboard itself or in the Layout section above the Size section, select the worksheet, legend, or other element that you want to change. Then make desired entries in the Size section.

08-ch08.indd 201

30/07/13 4:38 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 8



202



Tableau 8: The O f f icial Guide

There is also an option to size the entire dashboard. You may, for example, find that scrollbars appear on the right or bottom of the dashboard that you don’t want to see. Or you may prefer to match the dashboard to a standard web page size or computer desktop size. Again in the Layout section, select Dashboard (or ensure that no worksheet or other elements are selected on the dashboard itself). The Size section presents a drop-down menu with a variety of dashboard size options.

Dashboard Actions Tableau provides flexible interactivity in your dashboards beyond the default tooltips that appear when you hover your mouse over worksheet marks. This interactivity is supplied via dashboard actions, interactive settings that allow you to highlight, filter, and navigate from any mark on any worksheet on your dashboard. Note  Some of the interactivity discussed in this section also applies to individual worksheets. When editing a worksheet, choose Worksheet | Actions from the drop-down menus to create and edit actions. Video  Using Dashboard Actions There are three types of dashboard actions: •• Highlight  Highlight matching marks on one or more sheets in the dashboard. •• Filter  Filter one or more sheets on the dashboard based on a chosen mark, or navigate to another sheet or dashboard in the workbook. •• URL  Navigate to a web page. Optionally, pass selected information from the worksheet to the URL to personalize it. Furthermore, there are three ways that the viewer can initiate a dashboard action: •• Hover  Simply hover your mouse over a mark. •• Select  Click on a mark. •• Menu  Choose the option from the tooltip or right-click context menu.

08-ch08.indd 202

30/07/13 4:38 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 8



Chapter 8: 

Creating Dashboards

203

Caution  Be judicious with use of dashboard actions initiated by hovers. Typically, only highlight actions are appropriate for this method. Otherwise, simple mouse movement may initiate time-intensive or undesired actions.

Highlight Action The purpose of a highlight action is to highlight related marks on other sheets in your dashboard based on a chosen mark in a source sheet. A basic example of highlighting that Tableau provides by default is exhibited when you click on an individual entry in a color legend. You’ll typically see marks on the related sheet highlighted based on the legend entry you click. When you deselect the color legend entry, marks are un-highlighted on the sheet. A highlight action takes this capability a step further and allows selections on the actual worksheet itself to highlight other related marks on other sheets. To create a highlight action, select Dashboard | Actions from the drop-down menus. The Actions dialog box will appear. Click the Add Action button and choose Highlight from the pop-up menu. From the Edit Highlight Action dialog box, select the method of initiating the action (hover, select, or menu). In the Source Sheets section of the dialog box, choose one or more worksheets that you want the action to occur on. In the Target Sheets section, choose one or more worksheets that you want to be highlighted based on the selected mark in the source sheet or sheets. There should be a common dimension in source and target sheets, or highlighting won’t have the desired effect. In this example, when the mouse is hovered over a section of a Region % Breakdown pie chart, corresponding regions will be highlighted in the Customer Count by State sheet.

08-ch08.indd 203

30/07/13 4:38 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 8



204



Tableau 8: The O f f icial Guide

Filter Action While quick filters and parameters are options for filtering interactivity on a dashboard, a filter action permits additional interactivity, where one or more worksheets on the dashboard are filtered based on a chosen mark on the source sheet. For example, when a certain mark is clicked on one sheet, other sheets will refresh, only showing marks that match the item that was clicked on the source sheet. Filter actions can be created directly from a worksheet’s context menu, or from the Dashboard | Actions dialog box discussed earlier. Decide which sheet you want to act as the filter source. Select the context menu in the title bar (or right-click on the desired sheet in Layout) and check Use As Filter from the context menu. Thereafter, when you click on any mark in the source sheet, all other sheets on the dashboard will be filtered to only show values matching what you clicked on the source sheet. Choose the same context menu and uncheck Use As Filter if you want to turn this option off. When you use the context menu option, a “generated” filter action will appear in the Dashboard | Actions dialog box. If you want to remove or customize the generated filter action, make choices from the Actions dialog box. You can also create new filter actions directly from this dialog box. After creating a new filter action, select the method of initiating the action (Select or Menu are probably the best two choices). In the Source Sheets section of the dialog box, choose one or more worksheets that you want the action to be executed from. In the Target Sheets section, choose one or more worksheets that you want to be filtered based on the selected mark in the source sheet or sheets. By default, you can multiselect marks on the source sheets with ctrl-click to filter on more than one mark. If, however, you only want to allow a single mark to be highlighted to filter, check “Run on single select only.” The three options under “Clearing the selection will” allow you to specify behavior when a filter action is

08-ch08.indd 204

30/07/13 4:38 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 8



Chapter 8: 

Creating Dashboards

205

cleared (for example, if the viewer clicks the same mark that was initially filtered, or clicks on a blank area of the source sheet). “Leave the filter” will leave the filter active on other sheets. “Show all values” will return all values to target sheets as though no filter was applied. And “Exclude all values” will display no data at all on the target sheets. While the “Exclude all values” option may initially seem of little use, it comes in handy for drill-down types of actions, where you only want target sheets to appear when a filter has been selected, and to display nothing when no filter is selected. Finally, the Target Filters section allows you to choose a limited set of fields to apply the filter action to, and to map source and target fields if different sheets are not using the same field names. In this example, a click on a mark in the Customer Count by State sheet will filter a Drill Down Crosstab on the dashboard. When the filter is cleared on the source sheet, the Drill Down Crosstab will show no data.

08-ch08.indd 205

30/07/13 4:38 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 8



206



Tableau 8: The O f f icial Guide

Another capability of a filter action that may not be initially obvious is the ability to navigate to another sheet or dashboard in your workbook. In this case, a standard filter action is created as described previously, but a dashboard or worksheet other than the current dashboard is selected in the Target Sheets area. In this example, an “arrow” visualization has been placed on the dashboard to appear as a navigation button. A filter action is initiated when it’s clicked. Notice, however, that the Target Sheets section displays a completely different dashboard than the Source Sheets section.

08-ch08.indd 206

30/07/13 4:38 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 8



Chapter 8: 

Creating Dashboards

207

URL Action A URL action allows a web page to be launched from within your dashboard. Furthermore, any field in use on the source worksheet can be used to customize the URL. This permits Tableau to display custom web pages from the Internet or to integrate with other web-based systems in your organization. After creating a new URL action, select the method of initiating the action (Select or Menu are probably the best two choices). In the Source Sheets section of the dialog box, choose one or more worksheets that you want the action to occur on. Then type or paste the desired URL into the URL box. To customize the URL depending on which mark is selected to initiate the action, click the small right-arrow at the end of the URL to display fields that are used in the source sheets. When you select one of the fields, a placeholder will be added to the current cursor position in the URL. When the URL is executed, the current value from that field will be placed in the URL.

08-ch08.indd 207

30/07/13 4:38 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 8



208



Tableau 8: The O f f icial Guide

URL options at the bottom of the dialog box allow you to URL-encode custom field values added to the URL (for example, to replace spaces or other special characters with % encoded characters). You can permit multiple marks to be selected when the URL action is initiated with the appropriate checkbox. You can then specify the item and escape delimiter to separate the multiple values and end of the value list in the URL. In this example, if a user hovers their mouse over or right-clicks on the Drill Down Crosstab sheet, they’ll be presented a hyperlink option to Google the currently highlighted customer. When this is clicked, a URL action will display the Google web page with the current customer name added to the URL at an appropriate point (as a value to a “q=” parameter). As there is no Web Page element in the dashboard, a separate web browser will launch with the results of a Google search on the current customer’s name.

08-ch08.indd 208

30/07/13 4:38 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 8



Chapter 8: 

Creating Dashboards

209

Note  If your dashboard contains a Web Page element added from the dashboard menu, it will be updated in-place when a URL action takes place. If there is no such element in your dashboard, Tableau will launch a separate web browser window as the target for the URL action.

08-ch08.indd 209

30/07/13 4:38 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 8 Blind Folio 210

This page has been intentionally left blank

08-ch08.indd 210

30/07/13 4:38 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 9

9

CHAPTER

Distributing and Sharing Your Visualizations

S

o far, this book has presented a great deal of information on how you, as a visualization designer, can use Tableau Desktop to its fullest. But what happens when you want to share the results of your work with others? Perhaps you wish to export the underlying data from one or more of your worksheets for use in Microsoft Excel, Microsoft Access, or other data tools. Or, you may want to include the chart or graph from one or more worksheets in a presentation or word-processing document. Perhaps you want to make an entire dashboard, including all the interactivity you have built into it, available to multiple analysts/viewers just using a web browser. Tableau allows all of these options, and more.

Exporting Worksheets and Dashboards Tableau facilitates exporting information from individual worksheets in your workbooks, as well as combined dashboards, in a variety of ways: •• Create a .pdf version of one or more worksheets or dashboards. •• Export the data that makes up individual worksheet charts or graphs. You may copy data to the Clipboard for pasting into another application, pass data to an Excel worksheet, or export the data to Microsoft Access format. •• Export an individual worksheet image, either from the worksheet tab itself, or when an individual worksheet is selected in a dashboard. You may copy it to the Clipboard for pasting into other documents, or export it to a variety of standard graphic file formats.

Printing to PDF Format It’s easy to create a Portable Document Format (PDF) version of one or more worksheets or dashboards in your workbook. Choose File | Print To PDF from the drop-down menus. The Print To PDF dialog box will appear. If you wish to print a separate page in

211

09-ch09.indd 211

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 9



212



Tableau 8: The O f f icial Guide

the PDF file for every sheet and dashboard in your workbook, click the Entire Workbook radio button. Active Sheet will print just the currently selected sheet or dashboard. If you are displaying your worksheets in Filmstrip View and you have ctrl-clicked more than one worksheet or dashboard in the filmstrip, each will appear in a separate page in the PDF. Select the desired paper size and orientation. If you check Show Selections, any selected marks in a worksheet will be highlighted in the resulting PDF as they are on the worksheet. Otherwise, all marks will appear unselected in the resulting PDF. Click OK.

A standard Windows dialog will appear, prompting for a filename. Specify the desired file and click OK to save the .pdf file. If you checked the View PDF File After Printing checkbox, the .pdf file will appear in Adobe Acrobat or Adobe Reader for your review.

Exporting Worksheet Data With the exception of text tables (also known as crosstabs), Tableau worksheets are typically graphical in nature. However, the data that’s used to make up bar charts, maps, and other visual elements in your worksheets may be helpful when shared with other applications or shared with colleagues. There are several ways of exporting the data that make up a chart or graph: •• Copy as Crosstab  Copies the underlying data that makes up your worksheet to the Clipboard as a row/column matrix of data. This may be pasted into a spreadsheet, word processor, or other application. Right-click in a blank area of the worksheet, or choose the Worksheet drop-down menu, and select Copy | Crosstab.

09-ch09.indd 212

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 9



Chapter 9: 

D i s t r i b u t i n g a n d S h a r i n g Yo u r   V i s u a l i z a t i o n s

213

•• Copy Data  Similar to Copy as Crosstab, but may not organize in the same row/column format, depending on the data that the worksheet is based on. Right-click in a blank area of the worksheet, or choose the Worksheet dropdown menu and select Copy | Data.

•• Export Crosstab to Microsoft Excel  Organizes the underlying data that makes up your worksheet as a row/column matrix of data and places it in a new Microsoft Excel worksheet. The worksheet may be modified as you prefer and then saved as an Excel file. From the Worksheet drop-down menu, choose Export | Crosstab To Excel.

•• Export Data to Microsoft Access .MDB File  Creates a Microsoft Access .mdb database file containing one table that includes the data that makes up the selected worksheet. From the Worksheet drop-down menu, choose Export | Data. A standard Windows file dialog will appear. Specify the location and name of the file you wish to create and click Save. The Export Data To Access dialog box will appear. Specify the name of the table you wish Tableau to create

09-ch09.indd 213

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 9



214



Tableau 8: The O f f icial Guide

in the database. If you wish to immediately have Tableau create a data connection to the resulting table so that it may be used in another worksheet, check “Connect after export” and specify the connection name. If you had selected a set of marks prior to choosing the menu option, you’ll have the choice of exporting data from the entire worksheet or just the selected items. Click OK. An Access database will be created containing the table.

Exporting Worksheet Images The visualization in each worksheet or dashboard can also be exported for use in other applications, such as PowerPoint presentations, word-processing documents, or graphics programs. Select the worksheet or dashboard you wish to export and then choose one of two options: •• Copy to Clipboard  Right-click in a blank area of the worksheet or dashboard, or click the Worksheet drop-down menu, and select Copy | Image. The Copy Image dialog box will appear. Depending on the related items appearing in the selected worksheet (legends and so forth), various checkboxes will be enabled, allowing you to choose what to include in the copied image. Also, you have several choices of where to place legends. Make the desired choices and click Copy. The image will be copied to the Clipboard. You may now paste it into another application.

09-ch09.indd 214

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 9



Chapter 9: 

D i s t r i b u t i n g a n d S h a r i n g Yo u r   V i s u a l i z a t i o n s

215

•• Export to Image File  From the Worksheet drop-down menu, choose Export | Image. The same dialog box described for copying an image to the Clipboard will display. Choose which portions of the visualization to include, as well as preferred legend placement, and click Save. A standard Windows Save dialog box will appear prompting for a file location and name. You may also choose a JPEG, PNG, BMP, or EMF file format. Click Save to export the image to the specified filename and format.

Exporting Dashboard Images If you have combined worksheets into one or more dashboards, you may export the entire dashboard as a single image. Select the dashboard you wish to export and choose Dashboard | Copy Image, or Dashboard | Export Image, from the drop-down menus. If you choose Copy Image, the entire dashboard will be copied to the Clipboard. Navigate to an alternate application and paste the copied image in the appropriate location. If you choose Export Image, a standard Windows Save dialog box will appear prompting for a file location and name. You may also choose a JPEG, PNG, BMP, or EMF file format. Click Save to export the dashboard image to the specified filename and format. Tip  If you have a dashboard selected, only the selected view in the dashboard will be exported with the Worksheet drop-down menu options. Use the Dashboard drop-down menu options to export the entire dashboard image.

Using Tableau Reader A read-only version of Tableau Desktop, Tableau Reader, is available as a free download from the Tableau Software website. Tableau Reader is a “fat client” product, requiring installation on your Windows computer. Once installed, Tableau Reader will open Tableau Packaged Workbooks (.twbx files). In Tableau Desktop, you may save a workbook for distribution to Tableau Reader by saving your workbook in .twbx format. Simply choose the .twbx format within the Save dialog box when saving your workbook. The resulting .twbx file may be distributed to Tableau Reader users to open and interact with. Tableau Packaged Workbooks require that all data sources be embedded in the .twbx file. Desktop data sources (Excel, Access, Tableau Data Extracts, and so forth) will automatically be included in the workbook. However, if your workbook makes use of some external data source, such as a standard corporate SQL server, you’ll receive a message when you attempt to save the workbook in .twbx format. Once you have created Tableau Data Extracts from these data sources (Extracts are covered in Chapter 3), resave the .twbx file.

09-ch09.indd 215

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 9



216



Tableau 8: The O f f icial Guide

Caution  Because of the core requirement for .twbx files to embed all data sources, Tableau Reader will be unable to make real-time connections to standard corporate SQL databases. If you require that your distributed Tableau workbooks make real-time connections to SQL data sources, your audience will require their own copy of Tableau Desktop, or will need connectivity to Tableau Server.

Publishing to the Web While Tableau Reader is an economical method for distributing finished workbooks to your audience, it requires that every user maintain a “fat client” installation on their Windows computer. Users of Apple OS X, Linux, or other operating systems will be unable to use Tableau Reader. Also, as previously discussed, Tableau Reader cannot make real-time connections to corporate databases, which reduces the ability to analyze with the latest data available. To solve these issues, Tableau workbooks can be published to a number of web-based server systems for distribution to any user with a standard web browser. There are three options for web-based publication: •• Tableau Public  A free hosted version of Tableau Server, permitting workbooks based on Tableau Data Extracts to be posted on the Web. There are limitations on the amount of data that may be included, no connection to internal corporate SQL databases is supported, and all data and worksheets posted are fully viewable by the public—there is no security available. •• Tableau Online  A paid hosted version of Tableau Server, permitting workbooks based on Tableau Data Extracts to be posted on the Web. There are limited capabilities to updated extracts with fresh data. Workbooks posted are not publicly viewable. And there is a limited user/group security system permitting granular viewing capabilities and rights assignments. •• Tableau Server  A server-based system, installed inside your organization, permitting workbooks based on any data source (including live connections to internal or external standard corporate SQL databases) to be posted. Based on your firewall configuration, viewers may be inside or outside your organization. Although not required, data extracts published to your local Tableau Server may be automatically updated from their original data sources on a regular schedule. Tableau Server features a robust security system, permitting various users and groups to be defined for granular viewing and access rights, as well as userbased filtering to provide different views of the same workbook, based on Tableau Server security settings. Tableau Server also allows (with proper permissions) web-based modification of existing worksheets or creation of new simple worksheets, all in a web browser.

09-ch09.indd 216

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 9



Chapter 9: 

D i s t r i b u t i n g a n d S h a r i n g Yo u r   V i s u a l i z a t i o n s

217

Sharing on Tableau Public Once you have created a Tableau Public account (visit the Tableau Software web site to create an account), make sure your workbook meets Tableau Public requirements before attempting to save it to the Tableau Public server: •• Data sources must be Tableau Data Extracts (Chapter 3 discusses how to create Extracts). •• Data sources cannot contain more than 100,000 rows of data. Choose Server | Tableau Public | Save To Web. If prompted, supply your user ID and password. Specify a name for the workbook on the server and click OK. A confirmation dialog will display illustrating the workbook you just saved. You may now share or view the workbook on the Web via your Tableau Public account.

09-ch09.indd 217

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 9



218



Tableau 8: The O f f icial Guide

Publishing to Tableau Server and Tableau Online Similar to Tableau Public, Tableau Online and Tableau Server provide web-based access to Tableau workbooks. Tableau Online, hosted by Tableau Software and offered as a “Software as a Service” product, provides a reduced set of capabilities when compared to the full Tableau Server product, which customers install on their own servers within their own network infrastructure. Publishing a finished workbook to Tableau Online requires that all data sources be converted to Tableau Data Extracts before the workbook can be published (creating Extracts is covered in Chapter 3). And the set of users and rights available in Tableau Online is reduced when compared to the full version of Tableau Server. The full version of Tableau Server will permit publication of workbooks connecting to any data source, provided the server has been configured to support the data source used when creating a workbook. And a full set of user rights may be specified when publishing. Otherwise, publishing to both platforms follows the same steps. Select Server | Publish Workbook from the pull-down menus. If you have not already logged into a server, you’ll be prompted for the server name, user ID, and password. Then, the Publish Workbook To Tableau Server dialog box will appear. In addition to supplying the name of the workbook, there are other options to complete on this dialog box:

09-ch09.indd 218

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 9



Chapter 9: 

D i s t r i b u t i n g a n d S h a r i n g Yo u r   V i s u a l i z a t i o n s

219

•• Project  Like a folder, a project is a category that you may assign your workbook to. Then, when looking for available workbooks on Tableau Server, you may select a specific project to narrow down your search. Choose an existing project from the drop-down list (projects are created using administration tools on Tableau Server). •• Add Tags  Optionally add one or more keywords, separated by spaces or commas (if the keyword itself contains a space, surround it with quotation marks). Keywords may be used to search for workbooks on the server. •• Views to Share  Select the worksheets/dashboards you want to be visible within the workbook on the server. You may wish to only include dashboards in this list, unchecking the worksheets that make up the dashboard. This will prevent viewers from navigating to the individual worksheets that make up the dashboard (these worksheets, however, will be available if a user downloads the workbook from the server). •• View Permissions  By default, all users will be given a set of default rights (determined by the “All Users” group), while you (as the owner) will have full rights to the workbook. If you wish to set more granular permissions for your workbook, click the Add button below the View Permissions list. The Add/Edit Permissions dialog box will appear. Select a user or group on the left side of the dialog box and set permissions for the user or group on the right. You may choose from a pre-defined set of rights by choosing an entry in the Role drop-down list, or select individual rights with radio buttons. When finished, click OK. The users and groups you added rights for will appear in the View Permissions list.

09-ch09.indd 219

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 9



220



Tableau 8: The O f f icial Guide

•• Show Sheets as Tabs  Much as with Filmstrip View in Tableau Desktop, checking this option will show tabs for worksheets in the view on Tableau Server. Caution  If you are using filter actions in your worksheets (covered in Chapter 5) or dashboards (covered in Chapter 8) to navigate from one dashboard or worksheet to another, you must select this option to enable navigation on the server. •• Show Selections  If you’ve pre-selected any marks on a worksheet, these marks will be pre-selected on your server workbook when initially viewed on the Web. •• Include External Files  Upload any desktop data sources (Excel, Access, Tableau Data Extracts, and so forth) and background images to the server with the workbook. This will prevent the server from not being able to locate data sources (perhaps on your local hard disk) that were used to create the workbook. If you don’t select this option, ensure that your data sources are accessible by the server, either via standard corporate SQL database connection methods or via a Universal Naming Convention (UNC) name used to connect to network-based desktop data sources. If your workbook contains data sources that have been extracted to a Tableau Data Extract (.tde) file or connections to standard corporate SQL databases that require permission to access, additional options are available by clicking the Scheduling & Authentication button. You may choose to automatically refresh data extracts that will be published to the server with your workbook via the drop-down list. Schedules, such as “End of Month,” “Saturday Night,” and “Weekday Early Mornings,” are configured on the server in advance and will be available for you to choose for automatic extract refresh. External databases (such as standard corporate SQL databases) may require authentication when processing queries from your on-premise version of Tableau Server. Select any such databases in the Authentication list and choose how you wish to supply a user ID and password to the database when the workbook is refreshed. Click OK to return to the Publish Workbook dialog box.

09-ch09.indd 220

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 9



Chapter 9: 

D i s t r i b u t i n g a n d S h a r i n g Yo u r   V i s u a l i z a t i o n s

221

When all options have been selected, click Publish to publish the workbook to the server. After the workbook and any associated data files are published, a confirmation dialog box will appear. You may interact with the workbook in the confirmation dialog box, click Open In Browser Window to open the workbook in your browser, or just close the confirmation dialog box.

Using Tableau with iPad, Android, and Other Smartphones and Tablets Not only can Tableau web-based options (Tableau Public, Tableau Online, and Tableau Server) provide complete interactivity in a web browser; they can support various mobile devices as well. If your audience will want to interact with a worksheet or dashboard on their smartphone or tablet, several options are available.

09-ch09.indd 221

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 9



222



Tableau 8: The O f f icial Guide

Creating Tableau Server User Filters

One of the benefits of using Tableau Server is its built-in security system. Not only does this determine various rights and privileges granted or denied to users, it can also be used to provide a different view of data to the viewer based on their user ID. This is accomplished with user filters: a series of filter settings that are applied based on a Tableau Server user ID. Using the drop-down menus, choose Server | Create User Filter, and then select the dimension you wish to filter based on user ID. If you’re not already logged on to a Tableau Server, you’ll be prompted for logon credentials. The User Filter dialog box will appear, displaying a list of Tableau Server users and groups on the left and the members of the selected dimension on the right. Select each user or group on the left, and then check the members of the dimension that the selected user or group should be able to see in the worksheet. The All and None buttons under the Members list will select all or no members as a starting point. If you have many users and you wish to copy settings from one user to another, click the Copy From button and select an existing user to copy to the currently selected user. When finished setting user/member combinations, click OK to save the filter. It will initially appear in the Data window in the Sets category (with a slightly different icon than traditional sets). The user filter will not take effect until dragged to the Filters shelf.

09-ch09.indd 222

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 9



Chapter 9: 

D i s t r i b u t i n g a n d S h a r i n g Yo u r   V i s u a l i z a t i o n s

223

You may now test the application of the user filter by selecting a user from the pop-up user list at the bottom of the Tableau screen (initially showing the user ID you logged in with). When you select a user from the list, the filter will be applied and will limit the worksheet accordingly. If you need to modify the filter (perhaps you have narrowed the filter too far and some users, such as yourself, cannot see any data), right-click the user filter in the Sets portion of the Data window and choose Edit from the context menu. Another way to filter based on a Tableau Server user ID is available if a data source used in your worksheet contains (or can derive) matching user IDs. Because the currently logged-on Tableau user ID is available in a Tableau calculated field, you can create a calculated field that compares a user name from a data source (or other calculated field) to the currently logged-on Tableau Server user. The filter will return only data that matches the currently (continued)

09-ch09.indd 223

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 9



224



Tableau 8: The O f f icial Guide

logged-in user. In this example, the Administrator account will return all data, whereas another user will only return data that matches their user ID. As with other filters, place the calculated field on the Filters shelf and choose the True value.

As with user filters described previously in this section, the filter may be tested by selecting different users from the pop-up list at the bottom right of the Tableau screen.

09-ch09.indd 224

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 9



Chapter 9: 

D i s t r i b u t i n g a n d S h a r i n g Yo u r   V i s u a l i z a t i o n s

225

(continued)

09-ch09.indd 225

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 9



226

09-ch09.indd 226



Tableau 8: The O f f icial Guide

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 9



Chapter 9: 

D i s t r i b u t i n g a n d S h a r i n g Yo u r   V i s u a l i z a t i o n s

227

Tableau App for iPad

If you search the Apple App Store for “Tableau,” you’ll find the Tableau Mobile app. This free app (for iPad only) will connect to a Tableau Server and present a highly interactive interface to workbooks and dashboards on the server. Full interactivity is available when displaying worksheets or dashboards in the app.

Tableau 8 now features the ability to modify existing worksheets, as well as create new basic worksheets, using the Tableau Mobile app. This powerful feature opens an entirely new set of possibilities by allowing rich design capabilities on an iPad.

09-ch09.indd 227

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 9



228



Tableau 8: The O f f icial Guide

Dimensions and measures can be dragged to and from shelves, options can be set from the Marks card, and Show Me can be used.

Web Access via HTML5 Mobile Browsers

While the Tableau Mobile app only works with iPad, other mobile devices are fully capable of interacting with Tableau Server. If your mobile device includes a web browser that supports HTML5 (most Windows mobile, Apple, and Android devices do), then complete interactivity with Tableau Server is available as well. Just connect to a Tableau Server via the mobile device browser as you would on a desktop computer. Tableau Server will automatically detect the mobile browser and present an appropriately sized presentation of dashboards and worksheets.

09-ch09.indd 228

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 9



Chapter 9: 

D i s t r i b u t i n g a n d S h a r i n g Yo u r   V i s u a l i z a t i o n s

229

Full interactivity is available, including quick filters, actions, and tooltips.

A very powerful addition to Tableau 8 Server is the ability to edit existing worksheets and create new simple worksheets right in a web browser (either on a desktop computer or on a mobile device). Dimensions and measures can be dragged to and from shelves, options can be set from the Marks card, and Show Me can be used.

09-ch09.indd 229

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Chapter 9 Blind Folio 230

This page has been intentionally left blank

09-ch09.indd 230

30/07/13 4:39 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 

APPENDIX

Function Reference

T

his appendix documents functions available in the Tableau calculated field language. Add these functions to a calculated field by double-clicking the desired function in the list on the lower right of the Calculated Field dialog box. The function list displays all available functions in alphabetical order, or a subset of related functions in alphabetical order if a category is chosen in the drop-down list above the function list. Most functions accept one or more arguments, or values that are supplied to the function inside parentheses and separated by commas.

Number Functions These functions perform numeric operations and return numeric results. They also accept numeric arguments.

ABS Returns the absolute value of a number.

ABS(number) ABS([Profit])

returns the numeric value 74.25 if the [Profit] database field contains –74.25.

ACOS Returns the arc cosine (inverse cosine), in radians, of the supplied number.

ACOS(number) ACOS(-.5)

returns the numeric value 2.094395102.

ASIN Returns the arc sine (inverse sine), in radians, of the supplied number.

231

10-Appendix.indd 231

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



232



Tableau 8: The O f f icial Guide

ASIN(number) ASIN(.5)

returns the numeric value .523598776.

ATAN Returns the arc tangent (inverse tangent), in radians, of the supplied number.

ATAN(number) ATAN(45)

returns the numeric value 1.548577785.

ATAN2 Returns the arc tangent (inverse tangent), in radians, of the two supplied numbers.

ATAN2(y number, x number) ATAN2(45, 10)

returns the numeric value 1.352127433.

COS Returns the cosine, in radians, of the supplied number.

COS(number) COS(45)

returns the numeric value .525321960.

COT Returns the cotangent, in radians, of the supplied number.

COT(number) COT(45)

returns the numeric value .617369592.

DEGREES Returns a value, in degrees, of the supplied radian number.

DEGREES(number) DEGREES(.7865)

returns the numeric value 45.063130587.

10-Appendix.indd 232

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



Appendix: 

Function Reference

233

EXP Raises e (the base of the natural logarithm) to the specified power.

EXP(number) EXP(10)

returns the numeric value 22,026.46484375.

LN Returns the natural logarithm of the supplied number (or a null value if the specified number is ≤ 0).

LN(number) LN(10)

returns the numeric value 2.302585125.

LOG Returns the logarithm of the supplied number. An optional second argument, base, is used to supply a numeric base. If the second argument is not supplied, base 10 is used.

LOG(number, [base]) LOG(100)

returns the numeric value 2. LOG(100, 5)

returns the numeric value 2.861353159.

MAX Returns either the largest aggregate value of a supplied database field if used with one argument, or the larger of two supplied values if used with two arguments.

MAX(expression) MAX(expression1, expression2) MAX([Discount])

returns the numeric value .25 if the highest discount value in the underlying set of data records is .25 (25 percent). MAX([January Sales], [February Sales])

returns the numeric value 24,103.00 if January Sales is 24,103 and February Sales is 18,109.25.

10-Appendix.indd 233

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



234



Tableau 8: The O f f icial Guide

MIN Returns either the smallest aggregate value of a supplied database field if used with one argument, or the smaller of two supplied values if used with two arguments.

MIN(expression) MIN(expression1, expression2) MIN([Discount])

returns the numeric value .25 if the lowest discount value in the underlying set of data records is .25 (25 percent). MIN([January Sales], [February Sales])

returns the numeric value 18,109.25 if January Sales is 24,103 and February Sales is 18,109.25.

PI Returns the numeric constant of pi. This function takes no arguments, but still requires parentheses.

PI() PI()

returns the numeric value 3.141592654.

POWER Raises the supplied numeric value by the power specified in the second numeric argument. The ^ operator may be used for the same purpose.

POWER(number, power) POWER([Rating], 3)

returns the numeric value 125 for a Rating field value of 5. [Rating] ^ 3

will return the same result.

RADIANS Returns a value, in radians, of the supplied degree number.

RADIANS(number) RADIANS(45)

returns the numeric value .785398163.

10-Appendix.indd 234

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



Appendix: 

Function Reference

235

ROUND Rounds the supplied numeric value. If the second numeric argument is supplied, ROUND rounds to that number of significant digits. Otherwise, ROUND rounds to a whole number.

ROUND(number, [decimals]) ROUND([Weight])

returns 185 for a Weight database field value of 185.724. ROUND([Weight], 1)

returns 185.7 for a Weight database field value of 185.724.

SIGN Returns a numeric value indicating whether the supplied numeric value is positive, negative, or zero. SIGN returns a numeric value of –1 for negative numbers, +1 for positive numbers, and 0 for zero.

SIGN(number) CASE SIGN([Profit]) WHEN 1 THEN "Profit" WHEN -1 THEN "Loss" ELSE "At Cost" END

returns the string value “Profit” if the Profit database field is greater than zero, “Loss” if the field is less than zero, and “At Cost” if the field is exactly zero.

SIN Returns the sine, in radians, of the supplied number, also in radians.

SIN(number) SIN(5)

returns the numeric value –0.958924294.

SQRT Returns the square root of the supplied number.

SQRT(number) SQRT(64)

returns the numeric value 8.

10-Appendix.indd 235

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



236



Tableau 8: The O f f icial Guide

SQUARE Returns the square (raised to the power of two) of the supplied number. The POWER function and ^ operator may also be used.

SQUARE(number) SQUARE(8)

returns the numeric value 64. Equivalents are POWER(8, 2) 8 ^ 2

TAN Returns the tangent, in radians, of the supplied number.

TAN(number) TAN(1.25)

returns the numeric value 3.009569674.

ZN Returns the numeric value of the supplied number if it is not null. Otherwise, returns 0.

ZN(expression) ZN([Salary])

returns 125,000 if the Salary database field contains the value 125,000. If the Salary database field contains a null value, the result will be 0 instead of a null.

String Functions These functions perform string operations and return various results (either strings or numbers). Depending on the function, they accept a combination of string and/or numeric arguments.

ASCII Returns the American Standard Code for Information Interchange (ASCII) numeric value for the first character in the supplied string.

ASCII(string) ASCII([Middle Initial])

returns the numeric value 69 if the Middle Initial database field contains a capital E.

10-Appendix.indd 236

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



Appendix: 

Function Reference

237

CHAR Converts the supplied integer numeric value into a single string character, based on the American Standard Code for Information Interchange (ASCII) value of the supplied number.

CHAR(integer) [Company Name] + CHAR(10) + [City] + ", " + [State]

returns Tableau Software Seattle, WA

for a Company Name of “Tableau Software,” City of “Seattle,” and State of “WA.” The ASCII number 10 equates to a line feed character.

CONTAINS Determines whether the value in the first string argument contains the value in the second string argument. If so, the function returns True. Otherwise, it returns False.

CONTAINS(string, substring) IF CONTAINS([Product Name], "BD") THEN "BluRay Media" ELSE "DVD Media" END

returns the string “BluRay Media” if the characters “BD” are contained anywhere within the Product Name database field. Otherwise, the result is “DVD Media”.

ENDSWITH Determines whether the value in the first string argument ends with the value in the second string argument. If so, the function returns True. Otherwise, it returns False.

ENDSWITH(string, substring) IF ENDSWITH([Product Name], "-BD") THEN "BluRay Media" ELSE "DVD Media" END

returns the string “BluRay Media” if the characters “-BD” appear at the end of the Product Name database field. Otherwise, the result is “DVD Media”.

10-Appendix.indd 237

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



238



Tableau 8: The O f f icial Guide

FIND Searches the first value in the first string argument for the value in the second substring argument, returning a numeric value indicating the position where the second argument exists. If the optional third numeric argument is provided, FIND starts the search at that position. If the search fails, FIND returns 0.

FIND(string, substring, [start]) FIND([Product Type-SKU], "-"]

returns 5 for a Product Type-SKU value of “SOFT-A103881”. FIND([Product Type-SKU], "-", 10]

returns 0 for a Product Type-SKU value of “SOFT-A103881”.

ISDATE Tests the supplied string argument and returns True if it can be converted to a date value with the DATE function. Otherwise, returns False.

ISDATE(string) IF ISDATE([DateOrderedString]) THEN DATE([DateOrderedString]) ELSE DATE("01/01/1900") END

will return the string database field DateOrderedString as a date value if it contains a string value that the DATE function can properly interpret. Otherwise, it will return the date value January 1, 1900. Simply using DATE([DateOrderedString])

will return a null if the supplied string argument does not contain a properly formatted date. By using ISDATE, null values may be avoided.

LEFT Returns a string value consisting of the number of characters specified in the second argument from the beginning (or left) of the string specified in the first argument.

LEFT(string, num_chars) IF LEFT([Type-Part#], 3) = "BLU" THEN "BluRay Media" ELSE "Other Media" END

10-Appendix.indd 238

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



Appendix: 

Function Reference

239

will test the first three characters of the Type-Part# database field and return “BluRay Media” if those characters = “BLU.” If the first three characters are anything else, the result will be “Other Media”.

LEN Returns a numeric value indicating the number of characters contained in the supplied string argument.

LEN(string) IF LEN([Phone]) = 10 THEN LEFT([Phone], 3) ELSE "No Area Code" END

returns the first three characters from the Phone database field if the Phone database field contains 10 characters. Otherwise, returns “No Area Code”.

LOWER Converts the supplied string to lowercase letters.

LOWER(string) LOWER("GeOrgE")

returns “george”.

LTRIM Trims away leading spaces (any spaces on the left side) from the supplied string.

LTRIM(string) LTRIM(" George ")

returns “George ” (the trailing space remains).

MAX Returns either the last alphabetic string value of a supplied database field within the underlying set of data records if used with one argument, or the last alphabetic value of two supplied values if used with two arguments.

MAX(string) MAX(string1, string2) MAX([CustomerLastName])

10-Appendix.indd 239

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



240



Tableau 8: The O f f icial Guide

returns “Williams” if the highest alphabetical value in the CustomerLastName database field within the underlying set of records is Williams. MAX([City1], [City2])

returns “Yuba City” if the City1 database field contains Denver and the City2 database field contains Yuba City.

MID Returns a subset of the characters from the string argument, starting at the position supplied by the numeric start argument. If the optional length numeric argument is supplied, only the number of characters specified in length is returned.

MID(string, start, [length]) MID("Tableau Software", 4)

returns “leau Software”. MID("Tableau Software", 6, 5)

returns “au So”.

MIN Returns either the first alphabetic string value of a supplied database field within the underlying set of data records if used with one argument, or the first alphabetic value of two supplied values if used with two arguments.

MIN(expression) MIN(expression1, expression2) MIN([CustomerLastName])

returns “Butler” if the lowest alphabetical value in the CustomerLastName database field within the underlying set of records is Butler. MIN([City1], [City2])

returns “Denver” if the City1 database field contains Denver and the City2 database field contains Yuba City.

RIGHT Returns a string value consisting of the number of characters specified in the second argument from the end (or right) of the string specified in the first argument.

10-Appendix.indd 240

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



Appendix: 

Function Reference

241

RIGHT(string, num_chars) RIGHT([Type-Part#], 5)

will return “81773” for a Type-Part# database value of BLU-81773.

RTRIM Trims away trailing spaces (any spaces on the right side) from the supplied string.

RTRIM(string) LTRIM(" George ")

returns “ George” (the leading space remains).

SPACE Returns a string consisting of the number of space characters specified in the numeric argument.

SPACE(number) "Tableau" + SPACE(5) + "Software"

will return “Tableau

Software” (with five spaces appearing between the two words).

STARTSWITH Determines whether the value in the first string argument starts with the value in the second string argument. If so, the function returns True. Otherwise, it returns False.

STARTSWITH(string, substring) IF STARTSWITH([Type-Part#], "BLU") THEN "BluRay Media" ELSE "Other Media" END

will determine if the Type-Part# database field starts with the characters BLU. If so, “BluRay Media” will be returned. Otherwise, the result will be “Other Media.”

TRIM Trims trailing spaces from the beginning and ending of the supplied string.

TRIM(string) TRIM(" George ")

returns “George”.

10-Appendix.indd 241

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



242



Tableau 8: The O f f icial Guide

UPPER Converts the supplied string to uppercase letters.

UPPER(string) UPPER("GeOrgE")

returns “GEORGE”.

Date Functions These functions perform date operations and return various results (either dates or numbers). Depending on the function, they accept a combination of date, string, or numeric arguments. Many date functions expect a date-part argument, which is a specific string value that must be supplied: •• “year” •• “quarter” •• “month” •• “dayofyear” •• “day” •• “weekday” •• “week” •• “hour” •• “minute” •• “second”

DATEADD Returns a date/time before or after the date supplied in the third argument, based on the number of “intervals” supplied in the second argument. The type of interval (days, weeks, and so forth) is determined by the string date-part supplied in the first argument.

DATEADD(date_part, interval, date) DATEADD("month", 6, [Order Date-Time])

returns 4/1/2013 2:15:00 PM if the Order Date-Time database field contains October 1, 2012, 2:15 p.m.

10-Appendix.indd 242

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



Appendix: 

Function Reference

243

DATEDIFF Returns a numeric value indicating the number of “intervals” between the start_date argument and the end_date argument. The type of interval (days, weeks, and so forth) is determined by the string date-part supplied in the first argument.

DATEDIFF(date_part, start_date, end_date) DATEDIFF("days", [Order Date], [Ship Date])

returns the numeric value 8 if the Order Date database field is 2/15/2013 and the Ship Date database field is 2/23/2013.

DATENAME Returns a string value representing the spelled-out date_part supplied in the first argument of the date supplied in the second argument.

DATENAME(date_part, date) DATENAME("month", [Order Date])

will return the string “March” if the Order Date database field is 3/10/2013.

DATEPART Returns a numeric value indicating the date_part supplied in the first argument of the date supplied in the second argument.

DATEPART(date_part, date) DATEPART("hour", [Sample Date-Time])

will return the numeric value 15 if the Sample Date-Time database field contains 3/10/2013 03:25:10 p.m.

DATETRUNC Truncates, or rounds, the date supplied in the second argument to the date_part supplied in the first argument, returning a date value.

DATETRUNC(date_part, date) DATETRUNC("quarter", [Order Date])

returns 1/1/2013 12:00:00 AM if the Order Date database field contains 3/10/2013 (the first date of the calendar quarter that 3/10/2103 falls in is 1/1/2013).

DAY Returns a numeric value between 1 and 31 indicating the day of the month of the supplied date argument.

10-Appendix.indd 243

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



244



Tableau 8: The O f f icial Guide

DAY(date) DAY([Order Date])

returns a numeric 10 if the Order Date database field contains 3/10/2013.

ISDATE Tests the supplied string argument and returns True if it can be converted to a date value with the DATE function. Otherwise, returns False.

ISDATE(string) IF ISDATE([DateOrderedString]) THEN DATE([DateOrderedString]) ELSE DATE("01/01/1900") END

will return the string database field DateOrderedString as a date value if it contains a string value that the DATE function can properly interpret. Otherwise, it will return the date value January 1, 1900. Simply using DATE([DateOrderedString])

will return a null if the supplied string argument does not contain a properly formatted date. By using ISDATE, null values may be avoided.

MAX Returns either the latest date value of a supplied database field within the underlying set of data records if used with one argument, or the latest date value of two supplied values if used with two arguments.

MAX(date) MAX(date1, date2) MAX([Order Date])

returns 12/15/2012, if the latest Order Date in the underlying set of records is 12/15/2012. MAX([Paid Date], [Invoice Due Date])

returns 5/10/2013 if the Paid Date database field contains 5/5/2013 and the Invoice Due Date database field contains 5/10/2013.

MIN Returns either the earliest date value of a supplied database field within the underlying set of data records if used with one argument, or the earliest date value of two supplied values if used with two arguments.

10-Appendix.indd 244

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



Appendix: 

Function Reference

245

MIN(date) MIN(date1, date2) MIN([Order Date])

returns 1/22/2012, if the earliest Order Date in the underlying set of records is 1/22/2012. MIN([Paid Date], [Invoice Due Date])

returns 5/5/2013 if the Paid Date database field contains 5/5/2013 and the Invoice Due Date database field contains 5/10/2013.

MONTH Returns a numeric value between 1 and 12 indicating the month of the supplied date argument.

MONTH(date) MONTH([Order Date])

returns a numeric 3 if the Order Date database field contains 3/10/2013.

NOW Returns a date/time value consisting of the current date and time as returned by the database. Although NOW doesn’t require any arguments, parentheses are still required.

NOW() NOW()

returns 5/30/2013 3:44:41 PM if executed on May 30, 2013, at 3:44:41 p.m.

TODAY Returns a date value consisting of the current date as returned by the database. Although TODAY doesn’t require any arguments, parentheses are still required.

TODAY() DATEDIFF("day", [Due Date], TODAY())

returns a numeric value 33 if the Due Date database field is 4/27/2013 and the database server’s current date is 5/30/2013. Caution  NOW and TODAY retrieve values from the underlying database server, not your local Tableau client computer. If the database server you are using is set to a different time zone, you may not see the results you expect.

10-Appendix.indd 245

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



246



Tableau 8: The O f f icial Guide

YEAR Returns a numeric value indicating the year of the supplied date argument.

YEAR(date) YEAR([Order Date])

returns a numeric 2,013 if the Order Date database field contains 3/10/2013.

Type Conversion Functions These functions convert from one data type to another.

DATE Converts the supplied expression to a date value. The supplied expression may be a number (representing the number of days since 1/1/1900), string, or date/time value.

DATE(expression) IF ISDATE([DateOrderedString]) THEN DATE([DateOrderedString]) ELSE DATE("01/01/1900") END

will return the string database field DateOrderedString as a date value if it contains a string value that the DATE function can properly interpret. Otherwise, it will return the date value January 1, 1900. Simply using DATE([DateOrderedString])

will return a null if the supplied string argument does not contain a properly formatted date. By using ISDATE, null values may be avoided.

DATETIME Converts the supplied expression to a date/time value. The supplied expression may be an integer or real number (representing the number of fractional days since 1/1/1900), string, or date/time value.

DATETIME(expression) DATETIME([Order DateTime String])

returns the date/time value 2/10/2013 3:42:00 PM if the string value of the Order DateTime String database field contains the string “2013-02-10 15:42:00”.

10-Appendix.indd 246

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



Appendix: 

Function Reference

247

FLOAT Converts the supplied string or number to a floating-point (noninteger) number.

FLOAT(expression) FLOAT([Discount String])

will return the floating-point numeric value .08500 if the Discount String database field contains the string “.085”.

INT Converts the supplied string or number to an integer (whole) number. Any decimal values appearing in the original argument are ignored (truncated)—the result will not be rounded up.

INT(expression) INT([Unit Price])

returns the whole number 7 if the floating-point Unit Price database field contains 7.75.

STR Converts any value to a string.

STR(expression) STR([Order DateTime])

returns the string value “2013-04-10 14:15:00” if the Order DateTime database field contains a date/time value of 4/10/2013 2:15 PM.

Logical Functions These functions perform various logical tests, returning various values resulting from the tests. In some cases, comparison operators are used with these functions. Comparison operators recognized by Tableau include •• = or == •• < •• > •• = •• or !=

10-Appendix.indd 247

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



248



Tableau 8: The O f f icial Guide

CASE CASE defines an initial expression that is evaluated by one or more following WHEN tests. When a WHEN test is True, the corresponding THEN value is returned. An optional ELSE clause will return a value if all WHEN tests fail. If there is no ELSE clause and all WHEN tests fail, a null is returned.

CASE WHEN THEN … [ELSE ] END CASE LEFT([ProductType-SKU], 3) WHEN "HDW" THEN "Hardware" WHEN "SFT" THEN "Software" WHEN "ACC" THEN "Accessory" END

will return “Software” for a ProductType-SKU value of “SFT-18385”. CASE LEFT([ProductType-SKU], 3) WHEN "HDW" THEN "Hardware" WHEN "SFT" THEN "Software" WHEN "ACC" THEN "Accessory" END

will return null for a ProductType-SKU value of “APP-15432”. CASE LEFT([ProductType-SKU], 3) WHEN "HDW" THEN "Hardware" WHEN "SFT" THEN "Software" WHEN "ACC" THEN "Accessory" ELSE "Uncategorized" END

will return “Uncategorized” for a ProductType-SKU value of “APP-15432”.

IF Performs the test specified in the first expression. If the test evaluates to True, returns the value specified in the THEN clause. Optionally, additional ELSIF/THEN tests may be executed to perform more tests if the first test fails. And, an optional ELSE clause may be added to return a result if all IF and ELSEIF tests fail.

IF THEN [ELSEIF THEN …] [ELSE ] END IF LEFT([ProductType-SKU, 3) = "HDW" THEN "Hardware" ELSEIF LEFT([ProductType-SKU, 3) = "SFT" THEN "Software"

10-Appendix.indd 248

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



Appendix: 

Function Reference

249

ELSEIF LEFT([ProductType-SKU, 3) = "ACC" THEN "Accessory" ELSEIF [ProductPrice] > 1000 THEN "Premium Category" ELSE "Uncategorized" END

will return “Premium Category” for the combination of a ProductType-SKU value of “APP-15432” and ProductPrice of 2,500. Note  While the CASE construct (discussed prior to IF) provides similar logic that may be easier to read and maintain, it does not provide the ability to include more than one test or more than one data type in a test, as does IF.

IFNULL Tests whether the first expression evaluates to a null value. If so, the second expression is returned. If not, the first expression is returned.

IFNULL(expression1, expression2) IFNULL([Unit Price] * [Discount], [Unit Price])

returns the calculated results of Unit Price multiplied by Discount if neither of the fields contains null. Otherwise, Unit Price is returned.

IIF Performs the logic test specified in the first argument (the first argument may also be a Boolean field). If the test evaluates to True, returns the value supplied by the second Then argument. If the test evaluates to False, returns the values specified in the third Else argument. If the optional fourth Unknown argument is provided, it will be returned if the test evaluates to Unknown (perhaps because the test returns a null value).

IIF(test, then, else, [unknown]) IIF([Discount] < 0, [Unit Price], [Unit Price] * [Discount], [Unit Price])

returns the value of Unit Price if the Discount is less than 0. Otherwise, returns the calculated results of Unit Price multiplied by Discount. If Discount is null, returns Unit Price.

ISDATE Tests the supplied string argument and returns True if it can be converted to a date value with the DATE function. Otherwise, returns False.

10-Appendix.indd 249

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



250



Tableau 8: The O f f icial Guide

ISDATE(string) IF ISDATE([DateOrderedString]) THEN DATE([DateOrderedString]) ELSE DATE("01/01/1900") END

will return the string database field DateOrderedString as a date value if it contains a string value that the DATE function can properly interpret. Otherwise, it will return the date value January 1, 1900. Simply using DATE([DateOrderedString])

will return a null if the supplied string argument does not contain a properly formatted date. By using ISDATE, null values may be avoided.

ISNULL Returns True if the supplied expression evaluates to a null value. Otherwise, returns False.

ISNULL(expression) IF ISNULL([Discount]) THEN [Unit Price] ELSE [Unit Price] * [Discount] END

returns the Unit Price if the Discount field is null. Otherwise, the calculated results of Unit Price multiplied by Discount are returned.

ZN Returns the numeric value of the supplied number if it is not null. Otherwise, returns 0.

ZN(expression) ZN([Salary])

returns 125,000 if the Salary database field contains the value 125,000. If the Salary database field contains a null value, the result will be 0 instead of a null.

Aggregate Functions These functions perform in-calculation aggregation. While Tableau typically aggregates by default, these functions provide for more precise aggregation, if desired, within a calculated field. Examples within this section are based on the sample data set illustrated in Figure A-1.

10-Appendix.indd 250

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



Appendix: 

Function Reference

251

Figure A-1  Sample data for aggregate functions

ATTR Returns the value of the supplied expression if all rows in the group of data contain the same value. Otherwise, returns an asterisk (*).

ATTR(expression) ATTR([Product])

returns * if there is no Product filter applied or Product is not added to a shelf. Otherwise, the value of Product is returned.

AVG Returns the numeric average of the supplied numeric value.

AVG(number) AVG([Amount])

returns 363.977777778. Note that a null value does not figure into the average calculation.

COUNT Returns the numeric count of records based on the supplied expression (any data type is allowed).

COUNT(expression) COUNT([RowID])

returns 10. COUNT([Amount])

returns 9, as null values do not increment the COUNT function.

10-Appendix.indd 251

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



252



Tableau 8: The O f f icial Guide

COUNTD Returns the numeric count of distinct (or unique) records based on the supplied expression (any date type is allowed).

COUNTD(expression) COUNTD([RowID])

returns 10, as RowID is unique. COUNTD([Amount])

returns 8, as there are two occurrences of the same value, as well as a null value (which does not increment COUNTD). COUNTD([Product])

returns 3, as there are three unique occurrences of a product type. Note  COUNTD is not available when using Microsoft Excel, Microsoft Access, or text file data sources. If you wish to use the COUNTD function with these data sources, perform a data extract from these data sources (covered in Chapter 3), as COUNTD is available when using a data extract.

MAX Returns the largest numeric value, latest date, or last alphabetical value based on the supplied expression (any data type is allowed).

MAX(expression) MAX([Product])

returns the string “SFT,” as that is the last alphabetical value in the Product field. MAX([Amount])

returns the number 1,150, the largest Amount value.

MEDIAN Returns the numeric median of the supplied numeric value.

MEDIAN(number) MEDIAN([Amount])

returns 245.1. Note that the null amount does not figure into the median calculation.

10-Appendix.indd 252

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



Appendix: 

Function Reference

253

Note  MEDIAN is not available when using Microsoft Excel, Microsoft Access, or text file data sources. If you wish to use the MEDIAN function with these data sources, perform a data extract from these data sources (covered in Chapter 3), as MEDIAN is available when using a data extract.

MIN Returns the smallest numeric value, earliest date, or first alphabetical value based on the supplied expression (any data type is allowed).

MIN(expression) MIN([Product])

returns the string “ACC,” as that is the first alphabetical value in the Product field. MIN([Amount])

returns the number 9.25, the smallest Amount value.

STDEV Returns the standard deviation of the supplied numeric value.

STDEV(number) STDEV([Amount])

returns 416.143059920.

STDEVP Returns the population standard deviation of the supplied numeric value.

STDEVP(number) STDEVP([Amount])

returns 392.343439484.

SUM Returns the sum of the supplied numeric value.

SUM(expression) SUM([Amount])

returns 3,275.8.

10-Appendix.indd 253

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



254



Tableau 8: The O f f icial Guide

VAR Returns the variance of the supplied numeric value.

VAR(number) VAR([Amount])

returns 173,175.046319444.

VARP Returns the population variance of the supplied numeric value.

VARP(number) VARP([Amount])

returns 153,933.374506173.

Pass-Through Functions While many functions in the Tableau formula language may look familiar to those who work with SQL databases, not every function or feature of an individual database server is provided in Tableau. Should you desire to call a native SQL function from your particular database server, Tableau provides a series of pass-through functions. These functions are not interpreted or modified by Tableau before being sent to the database server (hence, the name RAWSQL). As such, any native function available in your underlying SQL database may be used in a calculated field. Pass-through functions are available for each data type that Tableau recognizes (real, integer, string, and others). There are also nonaggregate and aggregate versions of each pass-through function. Nonaggregate versions will be automatically aggregated by Tableau, as with standard database fields. Aggregate versions, which generally will be used when passing aggregate functions to the underlying database, will be not be reaggregated by Tableau. You may pass as many arguments as necessary to the underlying SQL function. However, as the database may not be able to interpret Tableau’s field-naming convention, you must add argument “placeholders” in the RAWSQL specified as the first argument. These placeholders are represented by a percent sign (%) followed by sequential numbers (the first argument will be %1, the fifth %5, and so on). You must then supply the actual Tableau field names to pass to the placeholders as additional arguments in the RAWSQL syntax. For example, if you wish to return a random number from an underlying Microsoft SQL Server database, the following calculated field, using the SQL Server RAND function, may be used. Note that the RAND function makes use of an optional “seed” value. This is being supplied by a unique order ID number from Tableau. RAWSQL_REAL("RAND(%1)",[Order ID])

10-Appendix.indd 254

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



Appendix: 

Function Reference

255

If you uncheck Aggregate Measures from the Analysis drop-down menu, or add the unique Order ID to your visualization, Tableau will display the underlying random numbers from SQL Server. However, as with any other standard numeric database value, the random number calculated field will be aggregated as a SUM otherwise. If you wish the pass-through function to make use of a value aggregated on the database server, use the AGG versions of the pass-through function. For example: RAWSQLAGG_REAL("FLOOR(SUM(%1))",[Order Amount])

will subtotal the passed Order Amount field on the database server and return the results of the SQL Server native FLOOR function. Much as with standard calculated fields that use Tableau aggregate functions, calculated fields using AGG versions of pass-through functions will not be reaggregated by Tableau and will appear with an AGG indicator when used on the workspace.

RAWSQLAGG_BOOL Returns a Boolean (True or False) result based on the supplied SQL expression. The result will not be reaggregated by Tableau.

RAWSQLAGG_BOOL(“sql_expression”, [argument1], … [argumentN])

RAWSQLAGG_DATE Returns a date result based on the supplied SQL expression. The result will not be reaggregated by Tableau.

RAWSQLAGG_DATE(“sql_expression”, [argument1], … [argumentN])

RAWSQLAGG_DATETIME Returns a date/time result based on the supplied SQL expression. The result will not be reaggregated by Tableau.

RAWSQLAGG_DATETIME(“sql_expression”, [argument1], … [argumentN])

RAWSQLAGG_INT Returns an integer (whole number) result based on the supplied SQL expression. The result will not be reaggregated by Tableau.

RAWSQLAGG_INT(“sql_expression”, [argument1], … [argumentN])

RAWSQLAGG_REAL Returns a real (fractional) result based on the supplied SQL expression. The result will not be reaggregated by Tableau.

RAWSQLAGG_REAL(“sql_expression”, [argument1], … [argumentN])

10-Appendix.indd 255

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



256



Tableau 8: The O f f icial Guide

RAWSQLAGG_STR Returns a string result based on the supplied SQL expression. The result will not be reaggregated by Tableau.

RAWSQLAGG_STR(“sql_expression”, [argument1], … [argumentN])

RAWSQL_BOOL Returns a Boolean (True or False) result based on the supplied SQL expression.

RAWSQL_BOOL(“sql_expression”, [argument1], … [argumentN])

RAWSQL_DATE Returns a date result based on the supplied SQL expression.

RAWSQL_DATE(“sql_expression”, [argument1], … [argumentN])

RAWSQL_DATETIME Returns a date/time result based on the supplied SQL expression.

RAWSQL_DATETIME(“sql_expression”, [argument1], … [argumentN])

RAWSQL_INT Returns an integer (whole number) result based on the supplied SQL expression.

RAWSQL_INT(“sql_expression”, [argument1], … [argumentN])

RAWSQL_REAL Returns a real (fractional) result based on the supplied SQL expression.

RAWSQL_REAL(“sql_expression”, [argument1], … [argumentN])

RAWSQL_STR Returns a string result based on the supplied SQL expression.

RAWSQL_STR(“sql_expression”, [argument1], … [argumentN])

User Functions These functions retrieve user and group information from a connected Tableau Server. By using these functions, you may tailor your worksheet or dashboard behavior according to who is logged in to Tableau Server (see Chapter 9).

10-Appendix.indd 256

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



Appendix: 

Function Reference

257

FULLNAME Returns the full name of the current Tableau user. If logged into Tableau Server, the Tableau Server full name is returned. Otherwise, the domain/Windows user is returned. Even though this function accepts no arguments, the parentheses are required.

FULLNAME() FULLNAME()

returns “George Peck” if the full name (not the user name) of the user currently logged in to Tableau Server is George Peck.

ISFULLNAME Returns True if the supplied string argument is the same as the current FULLNAME (see the “FULLNAME” entry previously in this section). Otherwise, returns False.

ISFULLNAME(string) ISFULLNAME("George Peck")

returns True if the user currently logged in to Tableau Server has a full name (not a user name) of “George Peck”.

ISMEMBEROF Returns True if the supplied string argument is the same as a Tableau Server group that the current user is a member of. Otherwise, returns False.

ISMEMBEROF(string) IF ISMEMBEROF("HR") THEN STR([Salary]) ELSE "Not Available" END

returns the string conversion of the Salary database field if the current user is a member of the HR group. Otherwise, returns “Not Available”.

ISUSERNAME Returns True if the supplied string argument is the same as the current USERNAME (see the “USERNAME” entry later in this section). Otherwise, returns False.

ISUSERNAME(string) ISUSERNAME("GPeck")

returns True if the user currently logged in to Tableau Server has a user name (not a full name) of “GPeck”.

10-Appendix.indd 257

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



258



Tableau 8: The O f f icial Guide

USERDOMAIN Returns the domain of the Tableau Server the current user is logged in to. If the user is not logged in to Tableau Server, the current Windows domain is returned. Even though this function accepts no arguments, the parentheses are required.

USERDOMAIN() USERDOMAIN()

returns “local” if the Tableau Server the user is currently logged in to is not in an Active Directory domain.

USERNAME Returns the user name (not the full name) of the user currently logged in to Tableau Server. If the user is not logged in to Tableau Server, the Windows user name is returned. Even though this function accepts no arguments, the parentheses are required.

USERNAME() USERNAME()

returns “GPeck” if the user name (not the full name) of the user currently logged in to Tableau Server is GPeck. USERNAME() = "Administrator" OR [Employee Login] = USERNAME()

when added to the Filters shelf, returns all records if the administrator is logged in. Otherwise, only returns records where the Employee Login database field matches the user name (not the full name) of the user currently logged in to Tableau Server.

Table Calculation Functions These functions perform table calculation manipulation (see Chapter 7 for detailed information on table calculations). These functions force the calculated field they’re in to evaluate after Tableau has returned an aggregated set of data from the underlying data source. As such, any field arguments provided must appear in aggregate (by way of SUM(), AVG(), or other aggregate functions described earlier in this appendix). Any calculated field using these functions will automatically become a table calculation. As such, it will appear with a delta icon when used on the workspace. And, as with standard table calculations, direction and scope may be specified for the calculated field by way of the Compute Using option from the field’s context menu (direction and scope are covered in detail in Chapter 7). The direction/scope choices will determine the “partition” the function applies to.

10-Appendix.indd 258

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



Appendix: 

Function Reference

259

Figure A-2  Table calculation function example

The examples in this section are based on the text table illustrated in Figure A-2. For these examples, direction/scope has been set to Pane Down, indicating that table calculations will calculate from top to bottom, resetting at a new “pane,” or year. As such, this example contains two partitions. Due to the Pane Down partition setting, only the first Accessories row is illustrated in the following examples.

FIRST Returns the offset from the current position to the starting position in the partition. Even though this function accepts no arguments, the parentheses are required.

FIRST() FIRST()

returns

10-Appendix.indd 259

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



260



Tableau 8: The O f f icial Guide

INDEX Returns the number of the current position in the partition. Even though this function accepts no arguments, the parentheses are required.

INDEX() INDEX()

returns

LAST Returns the offset from the current position to the ending position in the partition. Even though this function accepts no arguments, the parentheses are required.

LAST() LAST()

returns

10-Appendix.indd 260

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



Appendix: 

Function Reference

261

LOOKUP Looks up another value from earlier in the partition (if the numeric offset argument is negative) or later in the partition (if the numeric offset is positive). The offset determines how many positions before or after the current position to retrieve. If offset is not supplied, the offset may be supplied with the “Relative To” option on the table calculation context menu.

LOOKUP(expression, [offset]) LOOKUP(SUM([Amount]), -1)

returns

PREVIOUS_VALUE Returns the value of the previous occurrence of the calculated field. If this is the first occurrence of the calculated field, the expression argument is returned. Otherwise, this function builds a cumulative value as it progresses through the data partition.

PREVIOUS_VALUE(expression) PREVIOUS_VALUE(0) + SUM([Amount])

returns

10-Appendix.indd 261

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



262



Tableau 8: The O f f icial Guide

RUNNING_AVG Returns the running average of the supplied expression as of the current position in the partition.

RUNNING_AVG(expression) RUNNING_AVG(SUM([Amount]))

returns

RUNNING_COUNT Returns the running count of the supplied expression as of the current position in the partition.

RUNNING_COUNT(expression) RUNNING_COUNT(SUM([Amount]))

returns

10-Appendix.indd 262

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



Appendix: 

Function Reference

263

RUNNING_MAX Returns the running maximum of the supplied expression as of the current position in the partition.

RUNNING_MAX(expression) RUNNING_MAX(SUM([Amount]))

returns

RUNNING_MIN Returns the running minimum of the supplied expression as of the current position in the partition.

RUNNING_MIN(expression) RUNNING_MIN(SUM([Amount]))

returns

10-Appendix.indd 263

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



264



Tableau 8: The O f f icial Guide

RUNNING_SUM Returns the running sum of the supplied expression as of the current position in the partition.

RUNNING_SUM(expression) RUNNING_SUM(SUM([Amount]))

returns

SIZE Returns the number of positions in the partition. Even though this function accepts no arguments, the parentheses are required.

SIZE() SIZE()

returns

10-Appendix.indd 264

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



Appendix: 

Function Reference

265

TOTAL Returns the total sum of the supplied expression over the partition.

TOTAL(expression) TOTAL(SUM([Amount]))

returns

WINDOW_AVG Returns the overall average of the supplied expression over the partition (referred to as the “window”). If optional numeric start and end arguments are supplied, the average is reduced to that range.

WINDOW_AVG(expression, [start, end]) WINDOW_AVG(SUM([Amount]))

returns

WINDOW_AVG(SUM([Amount]),0,LAST()-1)

returns

10-Appendix.indd 265

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



266



Tableau 8: The O f f icial Guide

WINDOW_COUNT Returns the overall count of the supplied expression over the partition (referred to as the “window”). If optional numeric start and end arguments are supplied, the count is reduced to that range.

WINDOW_COUNT(expression, [start, end]) WINDOW_COUNT(SUM([Amount]))

returns

WINDOW_COUNT(SUM([Amount]),0,LAST()-1)

returns

WINDOW_MAX Returns the overall maximum of the supplied expression over the partition (referred to as the “window”). If optional numeric start and end arguments are supplied, the maximum is reduced to that range.

10-Appendix.indd 266

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



Appendix: 

Function Reference

267

WINDOW_MAX(expression, [start, end]) WINDOW_MAX(SUM([Amount]))

returns

WINDOW_MAX(SUM([Amount]),0,LAST()-1)

returns

WINDOW_MEDIAN Returns the overall median of the supplied expression over the partition (referred to as the “window”). If optional numeric start and end arguments are supplied, the median is reduced to that range.

10-Appendix.indd 267

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



268



Tableau 8: The O f f icial Guide

WINDOW_MEDIAN(expression, [start, end]) WINDOW_MEDIAN(SUM([Amount]))

returns

WINDOW_MEDIAN(SUM([Amount]),0,LAST()-1)

returns

WINDOW_MIN Returns the overall minimum of the supplied expression over the partition (referred to as the “window”). If optional numeric start and end arguments are supplied, the minimum is reduced to that range.

WINDOW_MIN(expression, [start, end]) WINDOW_MIN(SUM([Amount]))

returns

10-Appendix.indd 268

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



Appendix: 

Function Reference

269

WINDOW_MIN(SUM([Amount]),0,LAST()-1)

returns

WINDOW_STDEV Returns the overall standard deviation of the supplied expression over the partition (referred to as the “window”). If optional numeric start and end arguments are supplied, the standard deviation is reduced to that range.

WINDOW_STDEV(expression, [start, end]) WINDOW_STDEV(SUM([Amount]))

returns

WINDOW_STDEV(SUM([Amount]),0,LAST()-1)

returns

10-Appendix.indd 269

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



270



Tableau 8: The O f f icial Guide

WINDOW_STDEVP Returns the overall population standard deviation of the supplied expression over the partition (referred to as the “window”). If optional numeric start and end arguments are supplied, the population standard deviation is reduced to that range.

WINDOW_STDEVP(expression, [start, end]) WINDOW_STDEVP(SUM([Amount]))

returns

WINDOW_STDEVP(SUM([Amount]),0,LAST()-1)

returns

WINDOW_SUM Returns the overall sum of the supplied expression over the partition (referred to as the “window”). If optional numeric start and end arguments are supplied, the sum is reduced to that range.

10-Appendix.indd 270

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



Appendix: 

Function Reference

271

WINDOW_SUM(expression, [start, end]) WINDOW_SUM(SUM([Amount]))

returns

WINDOW_SUM(SUM([Amount]),0,LAST()-1)

returns

WINDOW_VAR Returns the overall variance of the supplied expression over the partition (referred to as the “window”). If optional numeric start and end arguments are supplied, the variance is reduced to that range.

WINDOW_VAR(expression, [start, end]) WINDOW_VAR(SUM([Amount]))

returns

10-Appendix.indd 271

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Appendix 



272

Tableau 8: The O f f icial Guide

WINDOW_VAR(SUM([Amount]),0,LAST()-1)

returns

WINDOW_VARP Returns the overall population variance of the supplied expression over the partition (referred to as the “window”). If optional numeric start and end arguments are supplied, the population variance is reduced to that range.

WINDOW_VARP(expression, [start, end]) WINDOW_VARP(SUM([Amount]))

returns

WINDOW_VARP(SUM([Amount]),0,LAST()-1)

returns

10-Appendix.indd 272

30/07/13 4:40 PM

CompRef_FLUFF_4C/ Tableau 8: The Official Guide / Peck / 678-X / Index

Index Symbols

= (equals), 247 == (equals), 247 / (division), 158 > (greater than), 247 >= (greater than or equal to), 247 < (less than), 247