US 12,411,861 B2
Utilizing appropriate measure aggregation for generating data visualizations of multi-fact datasets
Christian Eubank, Seattle, WA (US); and Justin Talbot, Seattle, WA (US)
Assigned to Tableau Software, Inc., Seattle, WA (US)
Filed by Tableau Software, Inc., Seattle, WA (US)
Filed on Apr. 18, 2024, as Appl. No. 18/639,946.
Application 18/639,946 is a continuation of application No. 16/570,969, filed on Sep. 13, 2019, granted, now 11,966,406.
Application 16/570,969 is a continuation in part of application No. 16/236,611, filed on Dec. 30, 2018, granted, now 11,966,568.
Claims priority of provisional application 62/748,968, filed on Oct. 22, 2018.
Prior Publication US 2024/0265025 A1, Aug. 8, 2024
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 16/248 (2019.01); G06F 16/22 (2019.01); G06F 16/2455 (2019.01)
CPC G06F 16/248 (2019.01) [G06F 16/2282 (2019.01); G06F 16/24556 (2019.01); G06F 16/2456 (2019.01)] 20 Claims
OG exemplary drawing
 
1. A method of generating 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 one or more data fields from a data source and user placement of the one or more data fields into a shelf region of a user interface, the data source including a plurality of data fields and each of the data fields is either a dimension or a measure;
in accordance with receiving the user selection and the user placement:
obtaining a data model encoding the data source as a tree of logical tables, each logical table including a respective one or more logical fields, each logical field corresponding to a measure data field or a dimension data field of the data source, wherein each edge of the tree connects two logical tables that are related;
generating a dimension subquery based on logical tables that supply the data fields for the dimensions;
generating, for each measure, based on the logical tables that supply the data fields for the respective measure, a respective aggregated measure subquery grouped by the dimensions;
forming a final query by joining, using the dimensions, the dimension subquery to each of the aggregated measure subqueries;
executing the final query against the data source to retrieve tuples that comprise distinct ordered combinations of data values for the data fields; and
generating and displaying, in the user interface, a data visualization according to the data fields in the tuples.