US2023113933A1PendingUtilityA1

Visualizing temporal information

Assignee: TABLEAU SOFTWARE LLCPriority: Sep 17, 2021Filed: Sep 17, 2021Published: Apr 13, 2023
Est. expirySep 17, 2041(~15.1 yrs left)· nominal 20-yr term from priority
Inventors:Andrew Beers
G06F 3/0482G06F 16/248G06F 16/2477G06F 3/04847G06F 16/287
62
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Embodiments are directed to managing visualizations of data. A primary data set may be provided based on a data model and a query that includes a first time point and a second time point. A first data set and second data set that correspond to versions of the primary data set that correspond to the first time point and the second time point. A result data set may be generated based on the first data set and the second data set. The result data set may be classified based on the first data set and the second data set such that each record in the result data set may be classified as new, present, or removed. Changes to the primary data set that occur between the first time point and the second time point may be determined based on the classified records. Visualizations that represent the changes may be generated.

Claims

exact text as granted — not AI-modified
1 . A method for generating visualizations of data using one or more processors that execute instructions to perform actions, comprising: 
 providing a primary data set based on a data model and a query, wherein the primary data set includes one or more records and the query includes a first time point and a second time point;   generating one or more visualization models that comprise one or more display objects associated with one or more data objects based on the data model and a composition of the one or more data objects;   determining a first data set based on the primary data set and the first time point, wherein the first data set corresponds to a version of the primary data set that corresponds to the first time point;   determining a second data set based on the primary data set and the second time point, wherein the second data set corresponds to a version of the primary data set that corresponds to the second time point;   generating a result data set based on the first data set and the second data set, wherein each record in the result data set is based on a combination of a corresponding record from the first data set and another corresponding record from the second data set;   classifying each record in the result data set based on a comparison of the corresponding record from the first data set and the other corresponding record from the second data set, wherein each record in the result data set is classified as new, present, or removed; and   generating one or more visualizations for a display panel based on the result data set, one or more result data objects and the one or more visualization models, wherein the one or more visualizations are dynamically updated based on changes to the result data set and one or more result data objects.   
     
     
         2 . The method of  claim 1 , wherein classifying each record in the result data set further comprises:
 determining a first field in the result data set that corresponds to a primary key of the first data set;   determining a second field in the result data set that corresponds to a primary key of the second data set;   comparing a value of the first field with another value of the second field for each record in the result set;   in response to the value of the first field being non-null and the value of second field being null, classifying each record as a removed record;   in response to the value of the first field being null and the value of second field being non-null, classifying each record as a new record; and   in response to the value of the first field being non-null and the value of second field being non-null, classifying each record as a present record.   
     
     
         3 . The method of  claim 1 , wherein generating the one or more visualization, further comprises:
 determining a first field in the result data set that corresponds to a field-of-interest of the first data set;   determining a second field in the result data set that corresponds to a field-of-interest of the second data set; and   generating a Sankey diagram based on a change in a value of the first field and another change in a value of the second field.   
     
     
         4 . The method of  claim 1 , further comprising:
 determining one or more filter conditions based on the query information;   evaluating each record in the first data set and each record in the second data set based on the one or more filter conditions; and   updating the result data set to include an additional field for each filter, wherein the additional field for each filter stores a value indicating when a record in the first data set or another record in the second data set meet the conditions of a corresponding filter.   
     
     
         5 . The method of  claim 1 , further comprising:
 generating a graphical user interface (GUI) that includes a display of the visualization;   generating one or more controls in the GUI, wherein the one or more controls include one or more slider controls for selecting two or more time points;   determining another first time point and another second time point based on one or more interactions with the one or more slider controls;   updating the query based on the other first time point and the other second time point; and   updating the visualization based on an execution of the updated query.   
     
     
         6 . The method of  claim 1 , further comprising:
 providing one or more data sources based on one or more databases;   employing the one or more databases to periodically generate one or more snapshot data sets that include a version of the primary data set;   determining the first data set based on a snapshot data set that corresponds to the first time point; and   determining the second data set based on another snapshot data set that corresponds to the second time point.   
     
     
         7 . The method of  claim 1 , further comprising:
 providing one or more data sources based on one or more databases, wherein the primary data set is provided from one or more tables in the one or more databases.   
     
     
         8 . A processor readable non-transitory storage media that includes instructions for generating visualizations of data, wherein execution of the instructions by one or more processors, performs actions, comprising:
 providing a primary data set based on a data model and a query, wherein the primary data set includes one or more records and the query includes a first time point and a second time point;   generating one or more visualization models that comprise one or more display objects associated with one or more data objects based on the data model and a composition of the one or more data objects;   determining a first data set based on the primary data set and the first time point, wherein the first data set corresponds to a version of the primary data set that corresponds to the first time point;   determining a second data set based on the primary data set and the second time point, wherein the second data set corresponds to a version of the primary data set that corresponds to the second time point;   generating a result data set based on the first data set and the second data set, wherein each record in the result data set is based on a combination of a corresponding record from the first data set and another corresponding record from the second data set;   classifying each record in the result data set based on a comparison of the corresponding record from the first data set and the other corresponding record from the second data set, wherein each record in the result data set is classified as new, present, or removed; and   generating one or more visualizations for a display panel based on the result data set, one or more result data objects and the one or more visualization models, wherein the one or more visualizations are dynamically updated based on changes to the result data set and one or more result data objects.   
     
     
         9 . The media of  claim 8 , wherein classifying each record in the result data set further comprises:
 determining a first field in the result data set that corresponds to a primary key of the first data set;   determining a second field in the result data set that corresponds to a primary key of the second data set;   comparing a value of the first field with another value of the second field for each record in the result set;   in response to the value of the first field being non-null and the value of second field being null, classifying each record as a removed record;   in response to the value of the first field being null and the value of second field being non-null, classifying each record as a new record; and   in response to the value of the first field being non-null and the value of second field being non-null, classifying each record as a present record.   
     
     
         10 . The media of  claim 8 , wherein generating the one or more visualization, further comprises:
 determining a first field in the result data set that corresponds to a field-of-interest of the first data set;   determining a second field in the result data set that corresponds to a field-of-interest of the second data set; and   generating a Sankey diagram based on a change in a value of the first field and another change in a value of the second field.   
     
     
         11 . The media of  claim 8 , further comprising:
 determining one or more filter conditions based on the query information;   evaluating each record in the first data set and each record in the second data set based on the one or more filter conditions; and   updating the result data set to include an additional field for each filter, wherein the additional field for each filter stores a value indicating when a record in the first data set or another record in the second data set meet the conditions of a corresponding filter.   
     
     
         12 . The media of  claim 8 , further comprising:
 generating a graphical user interface (GUI) that includes a display of the visualization;   generating one or more controls in the GUI, wherein the one or more controls include one or more slider controls for selecting two or more time points;   determining another first time point and another second time point based on one or more interactions with the one or more slider controls;   updating the query based on the other first time point and the other second time point; and   updating the visualization based on an execution of the updated query.   
     
     
         13 . The media of  claim 8 , further comprising:
 providing one or more data sources based on one or more databases;   employing the one or more databases to periodically generate one or more snapshot data sets that include a version of the primary data set;   determining the first data set based on a snapshot data set that corresponds to the first time point; and   determining the second data set based on another snapshot data set that corresponds to the second time point.   
     
     
         14 . The media of  claim 8 , further comprising:
 providing one or more data sources based on one or more databases, wherein the primary data set is provided from one or more tables in the one or more databases.   
     
     
         15 . A system for generating visualizations of data, comprising:
 a network computer, comprising: 
 a memory that stores at least instructions; and 
 one or more processors that execute instructions that perform actions, including: 
 providing a primary data set based on a data model and a query, wherein the primary data set includes one or more records and the query includes a first time point and a second time point; 
 generating one or more visualization models that comprise one or more display objects associated with one or more data objects based on the data model and a composition of the one or more data objects; 
 determining a first data set based on the primary data set and the first time point, wherein the first data set corresponds to a version of the primary data set that corresponds to the first time point; 
 determining a second data set based on the primary data set and the second time point, wherein the second data set corresponds to a version of the primary data set that corresponds to the second time point; 
 generating a result data set based on the first data set and the second data set, wherein each record in the result data set is based on a combination of a corresponding record from the first data set and another corresponding record from the second data set; 
 classifying each record in the result data set based on a comparison of the corresponding record from the first data set and the other corresponding record from the second data set, wherein each record in the result data set is classified as new, present, or removed; and 
 generating one or more visualizations for a display panel based on the result data set, one or more result data objects and the one or more visualization models, wherein the one or more visualizations are dynamically updated based on changes to the result data set and one or more result data objects; and 
 
   a client computer, comprising: 
 a memory that stores at least instructions; and 
 one or more processors that execute instructions that perform actions, including: 
 providing the query or displaying the one or more visualizations. 
 
   
     
     
         16 . The system of  claim 15 , wherein classifying each record in the result data set further comprises:
 determining a first field in the result data set that corresponds to a primary key of the first data set;   determining a second field in the result data set that corresponds to a primary key of the second data set;   comparing a value of the first field with another value of the second field for each record in the result set;   in response to the value of the first field being non-null and the value of second field being null, classifying each record as a removed record;   in response to the value of the first field being null and the value of second field being non-null, classifying each record as a new record; and   in response to the value of the first field being non-null and the value of second field being non-null, classifying each record as a present record.   
     
     
         17 . The system of  claim 15 , wherein generating the one or more visualization, further comprises:
 determining a first field in the result data set that corresponds to a field-of-interest of the first data set;   determining a second field in the result data set that corresponds to a field-of-interest of the second data set; and   generating a Sankey diagram based on a change in a value of the first field and another change in a value of the second field.   
     
     
         18 . The system of  claim 15 , further comprising:
 determining one or more filter conditions based on the query information;   evaluating each record in the first data set and each record in the second data set based on the one or more filter conditions; and   updating the result data set to include an additional field for each filter, wherein the additional field for each filter stores a value indicating when a record in the first data set or another record in the second data set meet the conditions of a corresponding filter.   
     
     
         19 . The system of  claim 15 , further comprising:
 generating a graphical user interface (GUI) that includes a display of the visualization;   generating one or more controls in the GUI, wherein the one or more controls include one or more slider controls for selecting two or more time points;   determining another first time point and another second time point based on one or more interactions with the one or more slider controls;   updating the query based on the other first time point and the other second time point; and   updating the visualization based on an execution of the updated query.   
     
     
         20 . The system of  claim 15 , further comprising:
 providing one or more data sources based on one or more databases;   employing the one or more databases to periodically generate one or more snapshot data sets that include a version of the primary data set;   determining the first data set based on a snapshot data set that corresponds to the first time point; and   determining the second data set based on another snapshot data set that corresponds to the second time point.

Join the waitlist — get patent alerts

Track US2023113933A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.