IP Library › Granted Patent US 12,505,312
Granted Patent B2
US 12,505,312 · App. 18/754,103 · Granted Dec 23, 2025

Phrase recommendations for data visualizations

Inventors: Alex Djalali (Athens, GA); Andre Lukas Schorlemmer (Lions Bay, CA); Qixiang Zhang (Sunnyvale, CA); Yukiko Ishida Anonuevo (Concord, CA)
Assignee: Tableau Software, LLC
G06F40/40G06F3/0482G06F3/04847
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 12,505,312
App. No.
18/754,103
Filed
Jun 25, 2024
Granted
Dec 23, 2025
Kind
B2
Art Unit
2171
USPC
715/809
Abstract

The various implementations described herein include methods and devices for recommending phrases for data visualizations. In one aspect, a method includes presenting a data visualization page to a user, the page including a first region for displaying a data visualization and a second region for phrase recommendations. The method further includes obtaining a dataset selected by the user, the dataset including a plurality of fields; and generating a first set of phrase recommendations based on the dataset, each phrase recommendation corresponding to a respective field. The method also includes displaying the first set of phrase recommendations in the second region; and receiving a user selection of a first phrase. The method further includes, in response to the user selection: presenting a data visualization in the first region using the first phrase; and displaying a second set of phrase recommendations generated based on the first phrase.

Claims (71)

1 . A method performed at a computing system having memory and one or more processors, the method comprising:

presenting a data visualization page to a user, the data visualization page including a first region for displaying a data visualization and a second region for recommendations;

obtaining a dataset selected by the user, the dataset including a plurality of fields;

generating, by a machine learning model, a first set of recommendations based on the dataset, each recommendation in the first set of phrase recommendations corresponding to a respective field in the plurality of fields;

displaying the first set of recommendations in the second region;

receiving a user selection of a first recommendation of the first set of recommendations; and

in response to the user selection:

presenting a data visualization in the first region, the data visualization generated using the first recommendation;

generating a second set of recommendations, which include an updated set of the first set of recommendations, based on the user selection of the first recommendation, each recommendation in the second set specifying updates to one or more visual characteristics of the data visualization; and

displaying the second set of recommendations in the second region.

2 . The method of claim 1 , wherein each recommendation generated by the machine learning model in the first set of recommendations comprises a respective field of the plurality fields and a respective operator, and wherein each recommendation corresponds to a valid command in a visualization language.

3 . The method of claim 1 , wherein the first set of phrase recommendations generated by the machine learning model includes an aggregation recommendation and a filter recommendation;

wherein the aggregation recommendation comprises a first field of the plurality of fields and an aggregation operator; and

wherein the filter recommendation comprises a second field of the plurality of fields, a filter operator, and a value.

4 . The method of claim 1 , wherein at least one phrase in the first set of recommendations is generated using a machine learning model rather than selected from a list of previously used recommendations and has not previously been selected by a user to visualize the dataset.

5 . The method of claim 1 , further comprising, prior to generating the first set of recommendations, identifying a collection of recommendations for the dataset;

wherein the first set of phrase recommendations is generated from the collection of recommendations; and

wherein incompatible phrases from the collection of phrases are excluded from the first set of recommendations.

6 . The method of claim 1 , wherein the machine learning model is trained on historical visualization data to generate the first set of phrase recommendations.

7 . The method of claim 6 , wherein the historical visualization data includes historical data from at least the dataset, the user, or a tenancy of the user.

8 . The method of claim 1 , further comprising:

after displaying the second set of recommendations, receiving a second user selection of a second phrase from the second set of recommendations; and

in response to the second user selection:

updating the data visualization in the first region based on the first recommendation and the second set of recommendations; and

displaying a third set of phrase recommendations in the second region, wherein the third set of recommendations are ranked based on concurrence probabilities between the third set of recommendations and the first and second recommendations, wherein the ranking includes prioritizing recommendations in the third set of recommendations that have historical concurrence with both the first recommendation and the second recommendation.

9 . A computing device, comprising:

one or more processors;

memory;

a display; and

one or more programs stored in the memory and configured for execution by the one or more processors, the one or more programs comprising instructions for:

presenting a data visualization page to a user, the data visualization page including a first region for displaying a data visualization and a second region for recommendations;

obtaining a dataset selected by the user, the dataset including a plurality of fields;

generating, by a machine learning model, a first set of recommendations based on the dataset, each recommendation in the first set of recommendations corresponding to a respective field in the plurality of fields;

displaying the first set of recommendations in the second region;

receiving a user selection of a first recommendation of the first set of recommendations; and

in response to the user selection:

presenting a data visualization in the first region, the data visualization generated using the first recommendation;

generating a second set of recommendations, which include an updated set of the first set of recommendations, based on the user selection of the first recommendation, each recommendation in the second set specifying updates to one or more visual characteristics of the data visualization; and

displaying the second set of recommendations in the second region.

10 . The computing device of claim 9 , wherein each recommendation generated by the machine learning model in the first set of recommendations comprises a respective field of the plurality of fields and a respective operator, and wherein each recommendation corresponds to a valid command in a visualization language.

11 . The computing device of claim 9 , wherein the first set of recommendations generated by the machine learning model includes an aggregation phrase and a filter recommendation;

wherein the aggregation phrase comprises a first field of the plurality of fields and an aggregation operator; and

wherein the filter recommendation comprises a second field of the plurality of fields, a filter operator, and a value.

12 . The computing device of claim 9 , wherein at least one recommendation in the first set of recommendations is generated using a machine learning model rather than selected from a list of previously used recommendations and has not previously been selected by a user to visualize the dataset.

13 . The computing device of claim 9 , wherein the one or more programs further comprises instructions for, prior to generating the first set of recommendations, identifying a collection of recommendations for the dataset;

wherein the first set of phrase recommendations is generated from the collection of phrases; and

wherein incompatible phrases from the collection of phrases are excluded from the first set of phrase recommendations.

14 . The computing device of claim 9 , wherein the machine learning model is trained on historical visualization data to generate the first set of phrase recommendations.

15 . The computing device of claim 14 , wherein the historical visualization data includes historical data from at least the dataset, the user, or a tenancy of a user.

16 . The computing device of claim 9 , further comprising:

after displaying the second set of recommendations, receiving a second user selection of a second recommendation from the second set of recommendations;

in response to the second user selection:

updating the data visualization in the first region based on the first recommendation and the second recommendation; and

displaying a third set of recommendations in the second region, wherein the third set of recommendations are ranked based on concurrence probabilities between the third set of recommendations and the first and second recommendations, wherein the ranking includes prioritizing recommendations in the third set of recommendations that have historical concurrence with both the first recommendation and the second recommendation.

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

presenting a data visualization page to a user, the data visualization page including a first region for displaying a data visualization and a second region for recommendations;

obtaining a dataset selected by the user, the dataset including a plurality of fields;

generating, by a machine learning model, a first set of recommendations based on the dataset, each phrase recommendation in the first set of recommendations corresponding to a respective field in the plurality of fields;

displaying the first set of recommendations in the second region;

receiving a user selection of a first recommendation of the first set of recommendations; and

in response to the user selection:

presenting a data visualization in the first region, the data visualization generated using the first recommendation;

generating a second set of recommendations, which include an updated set of the first set of recommendations, based on the user selection of the first recommendation, each recommendation in the second set specifying updates to one or more visual characteristics of the data visualization; and

displaying the second set of recommendations in the second region.

18 . The non-transitory computer-readable storage medium of claim 17 , wherein one or more programs further comprise instructions for:

after displaying the second set of recommendations, receiving a second user selection of a second recommendation from the second set of recommendations; and

in response to the second user selection:

updating the data visualization in the first region based on the first recommendation and the second recommendation; and

displaying a third set of phrase recommendations in the second region, wherein the third set of recommendations are ranked based on concurrence probabilities between the third set of recommendations and the first and second recommendations, wherein the ranking includes prioritizing recommendations in the third set of recommendations that have historical concurrence with both the first recommendation and the second recommendation.

19 . The non-transitory computer-readable storage medium of claim 17 , wherein the machine learning model is trained on historical visualization data to generate the first set of phrase recommendations.

20 . The non-transitory computer-readable storage medium of claim 19 , wherein the historical visualization data includes historical data from at least the dataset, the user, or a tenancy of the user.

Continuity (2)
Continuation 17588189 · Jan 28, 2022
Related Publication 20240346258A1 · Oct 17, 2024
References Cited (40)
US 5845276A · Emerson et al. · 1998 [cited by applicant]
US 5884304A · Davis, III et al. · 1999 [cited by applicant]
US 5909678A · Bergman et al. · 1999 [cited by applicant]
US 5978804A · Dietzman · 1999 [cited by applicant]
US 6362838B1 · Szlam et al. · 2002 [cited by applicant]
US 9933928B2 · Mackinlay et al. · 2018 [cited by applicant]
US 10705695B1 · Porath et al. · 2020 [cited by applicant]
US 10896297B1 · Tory et al. · 2021 [cited by applicant]
US 11055284B1 · Vogelsgesang et al. · 2021 [cited by applicant]
US 20010021935A1 · Mills · 2001 [cited by applicant]
US 20020133488A1 · Bellis et al. · 2002 [cited by applicant]
US 20030046639A1 · Fai et al. · 2003 [cited by applicant]
US 20050010601A1 · Ciaramitaro et al. · 2005 [cited by applicant]
US 20060010416A1 · Keck et al. · 2006 [cited by applicant]
US 20060155689A1 · Blakeley et al. · 2006 [cited by applicant]
US 20090077012A1 · Glowacki et al. · 2009 [cited by applicant]
US 20090112986A1 · Caceres · 2009 [cited by applicant]
US 20100250190A1 · Zhang et al. · 2010 [cited by applicant]
US 20100250574A1 · Dettinger et al. · 2010 [cited by applicant]
US 20100257155A1 · Dettinger et al. · 2010 [cited by applicant]
US 20120254832A1 · Aman et al. · 2012 [cited by applicant]
US 20130111375A1 · Frohliger · 2013 [cited by applicant]
US 20140195888A1 · Alford, Jr. et al. · 2014 [cited by applicant]
US 20150269163A1 · Sun · 2015 [cited by examiner]
US 20160012015A1 · Tran et al. · 2016 [cited by applicant]
US 20170039281A1 · Venkata · 2017 [cited by examiner]
US 20170185603A1 · Dentel et al. · 2017 [cited by applicant]
US 20170236229A1 · Roof et al. · 2017 [cited by applicant]
US 20190361892A1 · Krishna et al. · 2019 [cited by applicant]
US 20200089700A1 · Ericson · 2020 [cited by examiner]
US 20200110803A1 · Djalali et al. · 2020 [cited by applicant]
US 20210011915A1 · Raichur et al. · 2021 [cited by applicant]
US 20210158933A1 · Frosch et al. · 2021 [cited by applicant]
US 20210333954A1 · Atallah et al. · 2021 [cited by applicant]
US 20220121350A1 · Nair et al. · 2022 [cited by applicant]
Djalali, Office Action, U.S. Appl. No. 17/588,189, Feb. 28, 2023, 14 pgs. [cited by applicant]
Djalali, Final Office Action, U.S. Appl. No. 17/588,189, Sep. 20, 2023, 15 pgs. [cited by applicant]
Djalali, Notice of Allowance, U.S. Appl. No. 17/588,189, Mar. 1, 2024, 7 pgs. [cited by applicant]
Djalali, Office-Action, U.S. Appl. No. 17/588,193, Feb. 6, 2023, 15 pgs. [cited by applicant]
Djalali, Notice of Allowance, U.S. Appl. No. 17/588,193, Jun. 30, 2023, 8 pgs. [cited by applicant]