IP Library Granted Patent US 11,030,256
Granted Patent B2
US 11,030,256 · App. 16/675,122 · Granted Jun 8, 2021

Methods and user interfaces for visually analyzing data visualizations with multi-row calculations

Inventors: Justin Talbot (Seattle, WA); Amy Nicole Forstrom (Seattle, WA); Daniel Cory (Seattle, WA); Christian Gabriel Eubank (Seattle, WA); Jeffrey Mark Booth, Jr. (Seattle, WA); Nicolas Borden (Seattle, WA)
Assignee: Tableau Software, Inc.
G06F16/904G06F3/0483G06F3/04842G06F16/9027
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,030,256
App. No.
16/675,122
Granted
Jun 8, 2021
Kind
B2
Abstract

A user selects a data source, and a computer displays a data visualization in a data visualization user interface according to the data source. The data visualization includes visual data marks representing data from the data source. The user selects a subset of the visual data marks. In response, the computer displaying a view data window having a summary of the selected data marks. The computer obtains a data model encoding the data source as a tree of logical tables, each including one or more logical fields. Each logical field corresponds to either a data field or a calculation that spans one or more logical tables. Each edge of the tree connects two logical tables that are related. The computer identifies aggregate measures corresponding to the selected data marks, and displays each aggregate measure in the view data window.

Claims (55)

1. A method of visually analyzing multi-row calculations for data visualizations, comprising:

at a computer having a display, one or more processors, and memory storing one or more programs configured for execution by the one or more processors:

receiving user selection of a data source;

displaying a data visualization in a data visualization user interface, according to placement of data fields, from the data source, in shelves of the user interface, wherein the data visualization comprises a plurality of visual data marks representing data from the data source;

detecting a first user input to select a subset of the visual data marks;

in response to detecting the first user input:

displaying a view data window including a summary of the selected subset of visual data marks;

obtaining a data model encoding the data source as a tree of logical tables, each logical table having its own physical representation and including a respective one or more logical fields, each logical field corresponding to either a data field or a calculation that spans one or more logical tables, wherein each edge of the tree connects two logical tables that are related, and each data field is either a measure or a dimension;

determining, based on the data model, one or more aggregate measures corresponding to the selected subset of visual data marks, wherein each aggregate measure is aggregated from a plurality of logical tables of the data model; and

displaying each aggregate measure of the one or more aggregate measures in the view data window, each aggregate measure displayed as a tab in the view data window.

2. The method of claim 1 , further comprising, in response to detecting the first user input, visually highlighting the selected subset of the visual data marks.

3. The method of claim 1 , wherein the view data window is displayed as a side panel or a pop up window.

4. The method of claim 1 , further comprising displaying each aggregate measure according to its disaggregated level of detail.

5. The method of claim 4 , further comprising displaying one or more dimensions referenced in the one or more aggregate measures in the data visualization.

6. The method of claim 5 , further comprising ordering the one or more dimensions according to a visual specification.

7. The method of claim 1 , further comprising:

detecting a second user input to show data fields of a respective aggregate measure; and

in response to detecting the second user input, displaying data fields for the respective aggregate measure.

8. The method of claim 1 , further comprising, in accordance with a determination that a plurality of aggregate measures is aggregated from a same set of logical tables, displaying a single instance of the plurality of aggregate measures in the view data window.

9. The method of claim 1 , further comprising, in accordance with a determination that a plurality of aggregate measures is aggregated from a first logical table: (i) ceasing to display the plurality of aggregate measures, and (ii) displaying the first logical table, in the view data window.

10. The method of claim 1 , further comprising displaying, in the view data window, dimensions and calculations referenced in the selected subset of visual data marks.

11. The method of claim 10 , further comprising displaying, in the view data window, one or more measures for each calculation referenced in the selected subset of visual data marks.

12. The method of claim 1 , further comprising displaying, in the view data window, one or more level of detail calculations referenced in the selected subset of visual data marks.

13. The method of claim 12 , wherein:

level of detail calculations that have Fixed calculation types and that have dimensions that come from a single logical table are displayed using the single logical table; and

level of detail calculations that have calculation types other than Fixed are displayed separately.

14. The method of claim 12 , wherein each level of detail calculation that references more than one logical table is displayed using its corresponding Least Common Ancestor (LCA) logical table.

15. The method of claim 1 , further comprising displaying, in the view data window, a respective label or a name to identify each aggregate measure.

16. A computer system for displaying object models for data sources, comprising:

a display;

one or more processors; and

memory;

wherein the memory stores one or more programs configured for execution by the one or more processors, and the one or more programs comprise instructions for:

receiving user selection of a data source;

displaying a data visualization in a data visualization user interface, according to placement of data fields, from the data source, in shelves of the user interface, wherein the data visualization comprises a plurality of visual data marks representing data from the data source;

detecting a first user input to select a subset of the visual data marks;

in response to detecting the first user input:

displaying a view data window including a summary of the selected subset of visual data marks;

obtaining a data model encoding the data source as a tree of logical tables, each logical table having its own physical representation and including a respective one or more logical fields, each logical field corresponding to either a data field or a calculation that spans one or more logical tables, wherein each edge of the tree connects two logical tables that are related, and each data field is either a measure or a dimension;

determining, based on the data model, one or more aggregate measures that are measures corresponding to the selected subset of visual data marks, wherein each aggregate measure is aggregated from a plurality of logical tables of the data model;

displaying each aggregate measure of the one or more aggregate measures in the view data window; and

in accordance with a determination that a plurality of aggregate measures is aggregated from a same set of logical tables, displaying a single instance of the plurality of aggregate measures in the view data window.

17. The computer system of claim 16 , wherein the one or more programs further comprise instructions for displaying each aggregate measure according to its disaggregated level of detail.

18. The computer system of claim 17 , wherein the one or more programs further comprise instructions for displaying one or more dimensions referenced in the one or more aggregate measures in the data visualization.

19. A non-transitory computer readable storage medium storing one or more programs configured for execution by a computer system having a display, one or more processors, and memory, the one or more programs comprising instructions for:

receiving user selection of a data source;

displaying a data visualization in a data visualization user interface, according to placement of data fields, from the data source, in shelves of the user interface, wherein the data visualization comprises a plurality of visual data marks representing data from the data source;

detecting a first user input to select a subset of the visual data marks;

in response to detecting the first user input:

displaying a view data window including a summary of the selected subset of visual data marks;

obtaining a data model encoding the data source as a tree of logical tables, each logical table having its own physical representation and including a respective one or more logical fields, each logical field corresponding to either a data field or a calculation that spans one or more logical tables, wherein each edge of the tree connects two logical tables that are related, and each data field is either a measure or a dimension;

determining, based on the data model, one or more aggregate measures corresponding to the selected subset of visual data marks, wherein each aggregate measure is aggregated from a plurality of logical tables of the data model;

displaying each aggregate measure of the one or more aggregate measures in the view data window; and

in accordance with a determination that a plurality of aggregate measures is aggregated from a first logical table: (i) ceasing to display the plurality of aggregate measures, and (ii) displaying the first logical table, in the view data window.

20. The non-transitory computer readable storage medium of claim 19 , wherein each aggregate measure is displayed as a tab in the view data window.

Assignments (2)
CORRECTIVE ASSIGNMENT TO CORRECT THE CONVEYING PARTY DATA: TO ADD INVENTORS THOMAS NHAN AND DAVID PACE PREVIOUSLY RECORDED AT REEL: 052564 FRAME: 0357. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jun 7, 2021
From: TALBOT, JUSTIN; FORSTROM, AMY NICOLE; CORY, DANIEL; EUBANK, CHRISTIAN GABRIEL; BOOTH, JR., JEFFREY MARK; BORDEN, NICOLAS; NHAN, THOMAS; PACE, DAVID
To: TABLEAU SOFTWARE, INC.
Reel/Frame 056495/0611 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 4, 2020
From: TALBOT, JUSTIN; FORSTROM, AMY NICOLE; CORY, DANIEL; EUBANK, CHRISTIAN GABRIEL; BOOTH, JR., JEFFREY MARK; BORDEN, NICOLAS
To: TABLEAU SOFTWARE, INC.
Reel/Frame 052564/0357 →
Continuity (1)
Related Publication 20210133240A1 · May 6, 2021