(57)【要約】  データテーブル内に存在するデータを使用してチャート推奨リストを生成するための方法は、セルの1つまたは複数の列および1つまたは複数のデータタイプを識別するために、データテーブルのセルを解析するステップと、1つまたは複数の列についての1つまたは複数の統計を取得するために、1つまたは複数の列の統計分析を実行するステップと、セルの1つまたは複数の列および1つまたは複数のデータタイプについての1つまたは複数の統計に基づいて、1つまたは複数の推奨されたチャートを作成するステップとを含む。1つまたは複数の推奨されたチャートの各々は、データテーブル内のデータの少なくともサブセットを表す。本方法はまた、1つまたは複数の推奨されたチャートのうちの少なくとも1つを含むチャート推奨リストを生成するステップを含む。
2019537089.tif 000002
【特許請求の範囲】
【請求項１】
クラウドベース環境に記憶された共同スプレッドシートのデータテーブル内に存在するデータを使用してチャート推奨リストを生成するための方法であって、
第1のユーザの第1のデバイスに表示されるべき前記共同スプレッドシートを提供するステップであって、前記共同スプレッドシートが、前記第1のユーザが前記共同スプレッドシートを前記第1のデバイス上で編集する間に、第2のユーザが前記共同スプレッドシートを第2のデバイス上で同時に編集することを可能にする許可を前記第2のユーザに与えることによって、前記第2のユーザと共有される、ステップと、
セルの1つまたは複数の列および1つまたは複数のデータタイプを識別するために、前記データテーブルの前記セルを解析するステップと、
前記1つまたは複数の列についての1つまたは複数の統計を取得するために、前記1つまたは複数の列の統計分析を実行するステップと、
前記セルの前記1つまたは複数の列および前記1つまたは複数のデータタイプについての前記1つまたは複数の統計に基づいて、1つまたは複数の推奨されたチャートを作成するステップであって、前記1つまたは複数の推奨されたチャートの各々が、前記データテーブル内の前記データの少なくともサブセットを表す、ステップと、
前記1つまたは複数の推奨されたチャートのうちの少なくとも1つを含むチャート推奨リストを生成するステップと、
を備える、方法。
【請求項２】
前記チャート推奨リストを提示するための第1の部分と、前記データテーブルを同時に提示するための第2の部分とを備えるユーザインターフェースを提供するステップをさらに備える、請求項1に記載の方法。
【請求項３】
前記1つまたは複数の推奨されたチャートを作成するステップが、1つまたは複数のルールを前記データテーブルに適用するステップを備え、
前記1つまたは複数のルールが、前記1つまたは複数の列のうちの少なくとも2つの列の間の関係を定義し、前記定義された関係が、視覚化のために指定された前記少なくとも2つの列の列ヘッダ間の関係、または前記少なくとも2つの列の値の間の相関関係のうちの少なくとも1つを含み、
前記1つまたは複数のルールが、前記1つまたは複数の列に関する前記1つまたは複数の統計、前記セルの前記1つまたは複数のデータタイプ、または前記定義された関係のうちの少なくとも1つに基づいて、1つまたは複数のチャートタイプを決定する方法を定義する、請求項1に記載の方法。
【請求項４】
前記1つまたは複数の推奨されたチャートを作成するステップが、目標出力として1つまたは複数のチャートタイプを生成するようにトレーニングされた機械学習モデルへの入力として、前記セルの前記1つまたは複数の列および前記1つまたは複数のデータタイプに関する前記1つまたは複数の統計を適用するステップを備え、前記1つまたは複数のチャートが、前記生成されたチャートタイプに基づいて作成される、請求項1に記載の方法。
【請求項５】
前記セルの前記1つまたは複数の列および前記1つまたは複数のデータタイプに関する前記1つまたは複数の統計に基づいて、前記データテーブルからの前記データのサブセットを含む少なくとも第2のデータテーブルを作成するステップと、
それぞれが前記第2のデータテーブル内のデータの少なくともサブセットを表す1つまたは複数の追加の推奨されたチャートを作成するステップと、
前記1つまたは複数の追加の推奨されたチャートのうちの少なくとも1つを含む前記チャート推奨リストを生成するステップと
をさらに備える、請求項1に記載の方法。
【請求項６】
前記セルの前記1つまたは複数のデータタイプ、前記1つまたは複数の統計、前記1つまたは複数の推奨チャートに関連する1つまたは複数の基準、あるいは前記1つまたは複数の列のうち少なくとも2つの列の間の識別される関係のうちの少なくとも1つに基づいて、前記1つまたは複数の推奨されたチャートのそれぞれにスコア付けするステップと、
最小しきい値を下回るスコアを受信する前記1つまたは複数の推奨されたチャートを破棄するステップと、
前記チャート推奨リストに含めるために前記最小しきい値を上回るスコアを受信する前記1つまたは複数の推奨されたチャートを選択するステップと、
をさらに備える、請求項1に記載の方法。
【請求項７】
前記第2のユーザの前記第2のデバイスから前記データテーブル内の追加のデータを受信するステップと、
前記追加のデータを表すために、1つまたは複数の修正された推奨されたチャートを作成するステップと、
前記1つまたは複数の修正された推奨されたチャートのうちの少なくとも1つを含む第2のチャート推奨リストを生成するステップと、
をさらに備える、請求項1に記載の方法。
【請求項８】
前記チャート推奨リストから推奨されたチャートの選択を受信するステップと、
前記選択された推奨されたチャートの前記作成に関与する前記データテーブル内の複数のセルに対するインジケータの表示を引き起こすステップと、
をさらに備える、請求項1に記載の方法。
【請求項９】
前記データテーブル内のデータのサブセットの選択を受信するステップと、
前記選択されたデータのサブセットを表すために1つまたは複数の修正された推奨されたチャートを作成するステップと、
前記1つまたは複数の修正された推奨されたチャートのうちの少なくとも1つを含む第2のチャート推奨リストを生成するステップと、
をさらに備える、請求項1に記載の方法。
【請求項１０】
第1のチャート推奨リスト内の前記1つまたは複数のチャートのうちの少なくとも1つが、変換されたデータを表し、変換から生じた前記変換されたデータが前記データテーブル内の前記データに適用され、前記変換されたデータが前記データテーブルに描かれておらず、前記変換が集計、合計、または平均化のうちの少なくとも1つを含む、請求項1に記載の方法。
【請求項１１】
前記1つまたは複数の統計が、前記1つまたは複数の列の各々におけるいくつかの一意の値、前記1つまたは複数の列の各々におけるデータの分布、前記データテーブルのサイズ、前記1つまたは複数の列の各々におけるデータ値の平均、あるいは前記1つまたは複数の列の各々におけるデータの範囲のうちの少なくとも1つを含む、請求項1に記載の方法。
【請求項１２】
第3のチャートのタイプチャートに関連して、少なくとも第1のチャートおよび第2のチャートのチャートタイプに基づいて、より高いスコアを有する第2のチャートよりも顕著に表示されるべきより低いスコアを有する第1のチャートを選択することによって、前記チャート推奨リスト内の前記1つまたは複数のチャートを再配置するステップをさらに備える、請求項1に記載の方法。
【請求項１３】
クラウドベース環境に記憶された共同スプレッドシートのデータテーブル内に存在するデータを使用してチャート推奨リストを生成するためのシステムであって、
命令を記憶するメモリデバイスと、
前記メモリデバイスに結合された処理デバイスであって、
第1のユーザの第1のデバイスに表示されるべき前記共同スプレッドシートを提供することであって、前記共同スプレッドシートが、前記第1のユーザが前記共同スプレッドシートを前記第1のデバイス上で編集する間に、第2のユーザが前記共同スプレッドシートを第2のデバイス上で同時に編集することを可能にする許可を前記第2のユーザに与えることによって、前記第2のユーザと共有される、ことと、
セルの1つまたは複数の列および1つまたは複数のデータタイプを識別するために、前記データテーブルの前記セルを解析することと、
前記1つまたは複数の列についての1つまたは複数の統計を取得するために、前記1つまたは複数の列の統計分析を実行することと、
前記セルの前記1つまたは複数の列および前記1つまたは複数のデータタイプについての前記1つまたは複数の統計に基づいて、1つまたは複数の推奨されたチャートを作成することであって、前記1つまたは複数の推奨されたチャートの各々が、前記データテーブル内の前記データの少なくともサブセットを表す、ことと、
前記1つまたは複数の推奨されたチャートのうちの少なくとも1つを含むチャート推奨リストを生成することと、
を行うために前記命令を実行するための前記処理デバイスと
を備える、システム。
【請求項１４】
前記処理デバイスが、前記チャート推奨リストを提示するための第1の部分と、前記データテーブルを同時に提示するための第2の部分とを備えるユーザインターフェースをさらに提供する、請求項13に記載のシステム。
【請求項１５】
前記処理デバイスが、1つまたは複数のルールを前記データテーブルに適用することによって、前記1つまたは複数の推奨されたチャートを作成し、前記1つまたは複数のルールが、前記1つまたは複数の列のうちの少なくとも2つの列の間の関係を定義し、前記定義された関係が、視覚化のために指定された前記少なくとも2つの列の列ヘッダ間の関係、または前記少なくとも2つの列の値の間の相関関係のうちの少なくとも1つを含み、前記1つまたは複数のルールが、前記1つまたは複数の列に関する前記1つまたは複数の統計、前記セルの前記1つまたは複数のデータタイプ、または前記定義された関係のうちの少なくとも1つに基づいて、1つまたは複数のチャートタイプを決定する方法を定義する、請求項13に記載のシステム。
【請求項１６】
前記処理デバイスが、目標出力として1つまたは複数のチャートタイプを生成するようにトレーニングされた機械学習モデルへの入力として、前記セルの前記1つまたは複数の列および前記1つまたは複数のデータタイプに関する前記1つまたは複数の統計を適用することによって前記1つまたは複数の推奨されたチャートを作成し、前記1つまたは複数のチャートが、前記生成されたチャートタイプに基づいて作成される、請求項13に記載のシステム。
【請求項１７】
前記処理デバイスが、
前記セルの前記1つまたは複数の列および前記1つまたは複数のデータタイプに関する前記1つまたは複数の統計に基づいて、前記データテーブルからの前記データのサブセットを含む少なくとも第2のデータテーブルを作成することと、
それぞれが前記第2のデータテーブル内のデータの少なくともサブセットを表す1つまたは複数の追加の推奨されたチャートを作成することと、
前記1つまたは複数の追加の推奨されたチャートのうちの少なくとも1つを含む前記チャート推奨リストを生成することと、
をさらに行う、請求項13に記載のシステム。
【請求項１８】
クラウドベース環境に記憶された共同スプレッドシートのデータテーブル内に存在するデータを使用してチャート推奨リストを生成するための命令を記憶する1つまたは複数の有形の非一時的コンピュータ可読媒体であって、前記命令が、1つまたは複数の処理デバイスによって実行されると、前記1つまたは複数の処理デバイスに、
第1のユーザの第1のデバイスに表示されるべき前記共同スプレッドシートを提供することであって、前記共同スプレッドシートが、前記第1のユーザが前記共同スプレッドシートを前記第1のデバイス上で編集する間に、第2のユーザが前記共同スプレッドシートを第2のデバイス上で同時に編集することを可能にする許可を前記第2のユーザに与えることによって、前記第2のユーザと共有される、ことと、
セルの1つまたは複数の列および1つまたは複数のデータタイプを識別するために、前記データテーブルの前記セルを解析することと、
前記1つまたは複数の列についての1つまたは複数の統計を取得するために、前記1つまたは複数の列の統計分析を実行することと、
前記セルの前記1つまたは複数の列および前記1つまたは複数のデータタイプについての前記1つまたは複数の統計に基づいて、1つまたは複数の推奨されたチャートを作成することであって、前記1つまたは複数の推奨されたチャートの各々が、前記データテーブル内の前記データの少なくともサブセットを表す、ことと、
前記1つまたは複数の推奨されたチャートのうちの少なくとも1つを含むチャート推奨リストを生成することと、
を行わせる、非一時的コンピュータ可読媒体。
【請求項１９】
前記1つまたは複数の処理デバイスが、1つまたは複数のルールを前記データテーブルに適用することによって、前記1つまたは複数の推奨されたチャートを作成し、前記1つまたは複数のルールが、前記1つまたは複数の列のうちの少なくとも2つの列の間の関係を定義し、前記定義された関係が、視覚化のために指定された前記少なくとも2つの列の列ヘッダ間の関係、または前記少なくとも2つの列の値の間の相関関係のうちの少なくとも1つを含み、前記1つまたは複数のルールが、前記1つまたは複数の列に関する前記1つまたは複数の統計、前記セルの前記1つまたは複数のデータタイプ、または前記定義された関係のうちの少なくとも1つに基づいて、1つまたは複数のチャートタイプを決定する方法を定義する、請求項18に記載のコンピュータ可読媒体。
【請求項２０】
前記1つまたは複数の処理デバイスが、目標出力として1つまたは複数のチャートタイプを生成するようにトレーニングされた機械学習モデルへの入力として、前記セルの前記1つまたは複数の列および前記1つまたは複数のデータタイプに関する前記1つまたは複数の統計を適用することによって前記1つまたは複数の推奨されたチャートを作成し、前記1つまたは複数のチャートが、前記生成されたチャートタイプに基づいて作成される、請求項18に記載のコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示の態様および実装形態は電子文書に関し、より具体的には、データテーブル内のデータからチャートを生成することに関する。
【背景技術】
【０００２】
データベース、スプレッドシート文書、ワープロ文書、スライドショー文書などにおけるデータテーブルは、データを含む多数のセルを含み得る。ユーザはデータテーブルよりももっと意味のある方法でデータを視覚化することを望む場合がる。たとえば、いくつかのスプレッドシートアプリケーションは、スプレッドシート内のデータテーブルからのデータのユーザによって行われる選択に基づいて、ユーザがスプレッドシート内のデータの構成要素(たとえば、チャートまたはグラフ)を作成することを可能にする。そのようなチャート作成方法は、スプレッドシートからのデータのサブセットの選択、およびチャートなどの選択されたデータのサブセットを表すための選択された構成要素の選択についてのユーザからの命令を受信するステップを含む。チャートを作成するためには、データ内の関係を識別し、識別された関係を表すための最善の方法を決定するために、ユーザはスプレッドシート内のデータを分析する必要がある。
【発明の概要】
【課題を解決するための手段】
【０００３】
本開示の態様および実装形態は、データテーブルに基づいて1つまたは複数の生成されたチャートを含むチャート推奨リストを生成することによって、データ表現技術を向上させる。データテーブルのセルは、データテーブル内のセルの列およびデータタイプを識別するために解析され得る。データテーブル内の列についての1つまたは複数の統計を取得するために、データテーブルに対して統計分析が実行され得る。推奨されたチャートは、少なくともセルの統計とデータタイプに基づいて作成され得る。いくつかの実装形態では、データのグループ間の関係を識別し、様々なチャートタイプ、追加のデータテーブル、および/または多数の要因に基づいて生成されたチャートにスコア付けするために、ならびに/あるいは推奨されたチャートタイプを作成するために、1つまたは複数のルールあるいは機械学習モデルがデータテーブルに適用され得る。
【０００４】
推奨されたチャートは、ユーザが最初は気付いていない可能性があるデータテーブル内の関係および/またはパターンを明らかにすることができる。推奨されたチャートは、データテーブル内のデータのサブセットを使用して作成され得、データテーブル全体とは対照的に、データテーブルのサブセットのみを使用して生成されたチャートを送信することによって、チャートを生成する処理速度を向上させ、および/またはネットワークトラフィックを低減することができる。推奨されたチャートは、ユーザインターフェースの第1の部分に表示されるチャート推奨リストに含まれてもよく、データテーブルはユーザインターフェースの第2の部分に同時に表示される。このように、チャート推奨リスト内の推奨されたチャートをデータテーブルと同時に便利に表示し、ユーザがチャート推奨リストから推奨されたチャートを直接選択して、データテーブルを含む電子文書に挿入することを可能にする、改良されたグラフィックユーザインターフェースが提供され得る。
【０００５】
本開示の態様および実装形態は、以下に与えられる詳細な説明、ならびに本開示の様々な態様および実装形態の添付の図面からより完全に理解されるであろう。しかしながら、本開示を特定の態様または実装形態に限定すると解釈されるべきではなく、説明および理解のためだけのものである。
【図面の簡単な説明】
【０００６】
【図１】本開示の実装形態のためのシステムアーキテクチャの一例を示す図である。
【図２】例示的な実装形態による、データテーブル内のデータに基づいて生成されたチャート推奨リストの一例を示す図である。
【図３】例示的な文書による、データテーブル内のデータのユーザ選択に基づいて生成されたチャート推奨リストの一例を示す図である。
【図４】本開示の一実装形態による、データテーブル内のデータからチャート推奨リストを生成するための方法の態様の流れ図である。
【図５】本開示の一実装形態による、チャート推奨リストを生成するために、1つまたは複数のルールを使用して生成されたチャートをスコア付けするための方法の態様の流れ図である。
【図６】例示的な実装形態による、データテーブル内に存在するデータから生成された集計テーブルの一例を示す図である。
【図７】例示的な実装形態による、データテーブル内に存在するデータから生成されたファセットチャートセットの一例を示す図である。
【図８】本開示の一実装形態による、初期データテーブルから生成される追加のデータテーブル内のデータからチャート推奨リストを生成するための方法の態様の流れ図である。
【図９】例示的な実装形態による、共同作業するユーザから追加のデータを受信し、追加のデータに基づいてチャートを含む第2のチャート推奨リストを生成するための方法の流れ図である。
【図１０】本開示の1つまたは複数の態様に従って動作する例示的なコンピューティングシステムのブロック図である。
【発明を実施するための形態】
【０００７】
従来、チャートを生成するステップは、ユーザが、データテーブル内の様々なデータが互いにどのように関連しているかを決定するため、またはデータ内の様々なパターンを決定するために、データテーブル内のデータを分析するステップを含み得る。次いで、ユーザは、どの構成要素(たとえば、チャート、グラフなど)が所望のデータを適切に表し得るかを選択し得る。しかしながら、構成要素の分析および選択は、ユーザ側でかなりの努力を払う可能性があり、ユーザがデータ内の重要な微妙な関係またはパターンを見逃す可能性がある。さらに、ユーザは、構成要素との所望の関係またはパターンを適切に表すために必要とされるよりも大きい部分のデータを選択し得る。そのような場合、大きなデータセットを有する構成要素の生成によってコンピューティングデバイスの処理速度が遅くなることがあり、および/または大きなデータセットに基づく構成要素がネットワークを介してユーザデバイスに配信されるときにネットワーク帯域幅が悪影響を受けることがある。
【０００８】
本開示の態様および実装形態は、とりわけ、データテーブル内のデータから生成された1つまたは複数のチャートを含むチャート推奨リストを生成することによって、少なくともこれらの欠陥に対処する共同文書システムに関する。本明細書ではチャート推奨リストが参照されるが、データを視覚化するための任意の適切なグラフィカル構成要素(たとえば、グラフ)が生成され、構成要素推奨リストに提供され得ることを理解されたい。本明細書に開示された実装形態は、チャート推奨リスト内のチャートを生成するために表形式(たとえば、行および列)を含む任意の適切なデータ構造に適用され得る。たとえば、そのようなデータ構造の1つは、データストア、ワープロ文書、スライドショー文書、スプレッドシート文書などに含まれるデータテーブルを含み得る。さらに、共同文書システムは、本開示の残りの部分を通して開示された技法を実装するものとして説明されているが、データテーブルにアクセスすることができる任意の適切なシステムまたはアプリケーション(たとえば、ユーザデバイスにインストールされたスタンドアロンアプリケーション)は、チャート推奨リストのためのデータテーブルに基づいて1つまたは複数のチャートを生成し得る点に留意されたい。
【０００９】
共同文書システムは、電子文書の所有者が、クラウドベース環境に記憶されている電子文書に関して共同編集者として参加するように他のユーザを招待することを可能にし得る。電子文書は、電子形式において使用されるメディアコンテンツを指す。メディアコンテンツは、テキスト、データテーブル、ビデオ、画像、グラフ、スライド、チャート、ソフトウェアプログラミングコード、デザイン、リスト、プラン、青写真、地図などを含み得る。ユーザが同時にアクセスおよび/または編集する許可を与えられた電子文書は、本明細書では共同文書と呼ばれ得る。共同文書は、クラウドベース環境内の1つまたは複数のサーバによって共同編集者のユーザデバイスに提供され得る。各共同編集者は、ユーザタイプ(たとえば、編集者、査読者、閲覧者など)に関連付けられ得る。共同文書を編集、コメント、レビュー、または単に閲覧することを可能にするために、ユーザのタイプに基づいて共同編集者に異なるビューおよび機能が提供され得る。共同文書へのアクセス許可が与えられると、共同編集者は、自分のユーザタイプに許可された動作を実行するために共同文書にアクセスし得る。
【００１０】
共同文書システムを使用して、ユーザは共同文書を作成または開き、共同文書を1人または複数の共同編集者と共有し得る。共同文書は、列ヘッダを有する行および列を有するデータテーブルを含み得る。データテーブルはまた、1つまたは複数のデータタイプ(たとえば、数、文字列、浮動小数点数、日付など)を有するデータを記憶する多数のセルを含み得る。一実装形態では、セルの1つまたは複数の列および1つまたは複数のデータタイプを識別するために、データテーブルのセルが解析され得る。データテーブル内の列についての1つまたは複数の統計を取得するために、データテーブルに対して統計分析が実行され得る。たとえば、統計は、列の各々におけるいくつかの一意の値または列におけるデータ範囲を含み得る。いくつかの実装形態では、統計に基づいて追加のデータテーブルが作成され得る。追加のテーブルは、初期データテーブルからのデータおよび/または変換された(たとえば、集計された、合計された、平均化された、などの)データのサブセットを含み得る。初期データテーブルおよび/または追加のデータテーブルを使用して、1つまたは複数の推奨されたチャートが作成され得る。
【００１１】
いくつかの実装形態では、データテーブル内のデータのグループ(たとえば、少なくとも2つのデータの列)間の関係(たとえば、2つの列ヘッダ間の相関関係、2つの列の値の間の相関関係など)を識別するために、ルールがデータテーブル(たとえば、初期データテーブル、追加のデータテーブルなど)に適用され得る。ルールは、特定のチャートタイプまたは生成されたチャートがデータテーブルからのデータをどれだけうまく提示できるかを示すために、データテーブルまたは生成されたチャートについて可能なチャートタイプをスコア付けする方法を定義し得る。ルールは、特定のスコアまたはスコア範囲と、統計、セルのデータタイプ、識別された関係、利用可能な構成要素(たとえば、チャート、グラフなど)に関連する基準などのそのような要因との間の相関関係を提供し得る。さらに、ルールは、最小しきい値を上回ってスコア付けするチャートタイプまたは生成されたチャートがユーザに提示されること、および他のチャートタイプおよび生成されたチャートが破棄されることを要求し得る。別の実装形態では、セルの統計およびデータタイプは、データテーブルのための1つまたは複数のチャートタイプを生成するようにトレーニングされた機械学習モデルへの入力として適用され得る。ルールおよび/または機械学習モデルによって提供されるチャートタイプは、データテーブルからのデータの少なくともサブセットを含む推奨されたチャートを作成するために使用され得る。推奨されたチャートは、チャート推奨リストに含まれ得る。チャート推奨リストは、共同システムによって提供されるユーザインターフェースの第1の部分に表示されてもよく、データテーブルは、ユーザインターフェースの第2の部分に同時に表示されてもよい。
【００１２】
作成されたチャートは、ユーザが自分では考えていなかったような興味深い方法で特定のデータのサブセットを表し得る。たとえば、セルを解析し、セルのデータタイプ、列についての統計を決定することによって、および/またはデータのグループ間の関係を識別することによって、ユーザの関与なしにデータのセット内のパターンが自動的に識別され得る。さらに、開示された技法は、チャートを作成する際に使用するデータのより小さいサブセットを選択すること、特定のデータをより効率的に処理するチャートを選択することなどによって、処理速度を向上させることができる。たとえば、いくつかの実装形態では、データテーブル内のデータは、集計、合計、または平均化によって変換され得、それによってチャート内に表す行の数が削減され得る。さらに、いくつかの実装形態では、特定の基準を満たすチャートが選択され得、それによってチャートを生成する処理速度を向上させることができる。また、データテーブルとチャート推奨リストとを同時に表示する拡張グラフィカルユーザインターフェースが提供され得る。ユーザは、異なる画面、ウィンドウ、またはユーザインターフェース間で切り替えることなしに、共同文書に含めるべきチャートをチャート推奨リストから直接選択し得る。
【００１３】
図1は、本開示の実装形態のためのシステムアーキテクチャ100の一例である。システムアーキテクチャ100は、ネットワーク130を介してユーザデバイス140A〜140Zに接続されたクラウドベース環境110を含む。システムアーキテクチャ100はクラウドベース環境110の文脈で説明されており、これは、データを記憶および共有するために、クラウドベース環境110内のサーバ112A〜112Z間、およびネットワーク130を介したユーザデバイス140A〜140Zとの間の通信を可能にし得るが、本明細書に記載された実装形態は局所的に相互接続されているシステムにも適用し得ることを理解されたい。クラウドベース環境110は、ネットワーク130を介して複数のユーザデバイス140A〜140Zに1つまたは複数のサービス(たとえば、チャート推奨リストに含めるためのチャート生成)を提供するアプリケーションをホストする物理マシンの集まりを指す。ネットワーク130は、パブリックネットワーク(たとえばインターネット)、プライベートネットワーク(たとえばローカルエリアネットワーク(LAN)または広域ネットワーク(WAN))、あるいはそれらの組合せであり得る。ネットワーク130は、ネットワーク130に接続されたワイヤレスフィデリティ(WiFi)ホットスポットなどの1つまたは複数のワイヤレス通信システムによって提供され得るワイヤレスインフラストラクチャ、および/または様々なデータ処理機器、通信塔などを使用して実装され得るワイヤレスキャリアシステムを含み得る。追加的または代替的に、ネットワーク130はワイヤードインフラストラクチャ(たとえば、イーサネット(登録商標))を含み得る。
【００１４】
クラウドベース環境110は、1つまたは複数のサーバ112A〜112Z、統計エンジン114、トレーニングエンジン116、および/またはデータストア118を含み得る。統計エンジン114、トレーニングエンジン116、および/またはデータストア118は、サーバ112A〜112Zとは別個であり、サーバ112A〜112Zに通信可能に結合されてもよく、統計エンジン114、トレーニングエンジン116、および/またはデータストア118は、1つまたは複数のサーバ112A〜112Zのうちの1つまたは複数の一部であってもよい。データストア118は、列ヘッダを有する行および列によって配置されたセル内にデータを含み得るデータテーブル120を記憶し得る。データストア118はまた、データテーブル120がその一部である共同文書を含み得る。共同文書は、ユーザと共有され得るスプレッドシート文書、スライドショー文書、ワープロ文書、または任意の適切な電子文書(たとえば、テキスト、データテーブル、ビデオ、画像、グラフ、スライド、チャート、ソフトウェアプログラミングコード、デザイン、リスト、プラン、青写真、地図などを含む電子文書)であり得る。
【００１５】
データテーブル120を含む共同文書は作者によって作成されてもよく、作者は共同文書を他のユーザ(たとえば共同編集者)と共有してもよい。共同文書を共有することは、共同文書にアクセスする(閲覧する、および/または編集する)許可を他のユーザに与えることを指すことができる。共同文書を共有することは、共同文書へのリンクを含むメッセージ(たとえば、電子メール、テキストメッセージなど)を介して共同文書116の他のユーザに知らせることを含み得る。各ユーザに与えられる許可のレベルは、各特定のユーザのユーザタイプに基づき得る。たとえば、編集者ユーザタイプを有するユーザは、共同文書を開き、共同文書に直接変更を加えることが可能であり得る。そのため、多数の共同編集者が共同文書に提示されたデータテーブル120に変更を加えることができる。
【００１６】
統計エンジン114および/またはトレーニングエンジン116は、本明細書に記載されている実施形態のうちのいくつかを実行するために、ハードウェア、ファームウェア、およびソフトウェアで構成されたコンピュータ、マイクロプロセッサ、論理デバイス、あるいは他のデバイスまたはプロセッサなどの処理デバイスを含み得る。統計エンジン114は、データテーブル120のセルを解析し、セルの1つまたは複数の列、列ヘッダ、および/またはデータタイプを識別するために使用され得る。統計エンジン114は、データテーブル120内の列に関する1つまたは複数の統計121を決定し得る。たとえば、統計121は、各列内の一意の値の集計を含み得る。集計は、データに関する情報を明らかにするためにデータに対する計算を指すことがある。統計121はまた、列の各々における値の範囲、データの分布(たとえば、データ値がランダムに分布されているのか、または傾向(増加/減少)方法で分布されているのか)、データテーブル120内の行の数などを含み得る。
【００１７】
トレーニングエンジン116は、トレーニングエンジン116によってトレーニングデータとして使用される注釈付きチャート122を含み得る。機械学習モデル123は、トレーニング入力および対応する目標出力を使用してトレーニングエンジン116によって作成されたモデルアーティファクトを指すことがある。トレーニング入力は注釈付きチャート122を含み得、対応する目標出力はそれぞれのトレーニング入力用の推奨されたチャートタイプ、追加生成されたテーブル、またはトレーニング入力に基づいて生成される推奨されたチャートを含み得る。注釈付きチャート122は、使用されるトレーニングデータテーブルと、トレーニングデータテーブルに基づいて作成される結果のチャートとを含み得る。さらに、注釈付きチャート122は、開発者またはユーザによって手動で注釈付けされ得る。いくつかの実装形態では、これらの注釈付きチャート122は、トレーニングデータテーブル内の様々な列およびデータセットにラベル付けするための注釈を含み得る。いくつかの実装形態では、トレーニングされた機械学習モデル123の目標出力は、とりわけ、彼らが興味深い関係および/または統計をどれほど反映しているかを示すために、推奨されたチャートタイプ、追加生成されたテーブル、および/または生成された推奨されたチャートのスコアも含み得る。
【００１８】
注釈は、トレーニングデータテーブルの注釈付き列の間の特定の関係を含み得る。説明のために、売上データを含むトレーニングデータテーブルにおいて、注釈は、視覚化のために指定された関係(たとえば、列ヘッダ「販売量」と列ヘッダ「販売地域」との間)を示し得る。別の例では、注釈は、2つ以上の列の値の間に相関関係がある(たとえば、日付列が売上の列の値とともに増加する)依存関係を示し得る。いくつかの実装形態では、異なる列の間の関係は、列ヘッダおよびグループヘッダに基づいて動的に決定され得る。たとえば、トレーニングデータテーブルが、「販売量」、「販売地域」などのような個々のヘッダを含む場合、年ごと(たとえば、2016年、2017年など)にグループヘッダもあり得る。個々のヘッダは、様々な年の売上情報間の関係が決定され得るように、グループ間で繰り返され/共有され得る。いくつかの実装形態では、注釈は、列に関連付けられる統計(たとえば、集計、合計、平均化など)のためのものであり得、特定の統計を有する列があるトレーニングデータテーブルを表すために使用するために好ましいチャートタイプ(たとえば、棒、線、円、面積、散布、列など)を示し得る。いくつかの実装形態では、注釈は、列内に特定のデータタイプを有する値の間の相関関係のためのものであり得る。たとえば、注釈は、第1の列の日付データタイプを有するデータ値が増加し、第2の列の数値データタイプを有するデータ値も増加する(たとえば、売上が時間とともに蓄積するにつれて)列の組合せに対する好ましいチャートタイプ、あるいは、ある列のデータ値(たとえば日付)が増加し、別の列のデータ値(たとえば、在庫金額)が減少する列の組合せに対する別の好ましいチャートタイプを示し得る。いくつかの実装形態では、注釈は、チャートがファセットされ得るかどうかを示し得る。一旦トレーニングされると、機械学習モデル116は、新しいデータテーブルのための1つまたは複数の推奨されたチャートタイプを取得するために、新しいデータテーブル120(たとえば、セルの統計121およびデータタイプを含む)に適用され得る。いくつかの実装形態では、機械学習モデル116は、チャート推奨リストに含めるための推奨されたチャートを出力し得る。
【００１９】
サーバ112A〜112Zは、それぞれがメモリデバイスおよび入力/出力(I/O)デバイスに通信可能に結合された1つまたは複数の処理デバイスを含む、物理的な機械(たとえば、サーバ機械、デスクトップコンピュータなど)であり得る。サーバ112A〜112Zの各々は、チャート生成モジュール(124A〜124Z)をホストし得る。チャート生成モジュール124A〜124Zは、サーバ112A〜112Zの各々の上の1つまたは複数の処理デバイスによって実行可能なコンピュータ命令として実装され得る。いくつかの実装形態では、統計エンジン114は、コンピュータ命令として実装され、チャート生成モジュール124A〜124Zの一部として含まれ得る。チャート生成モジュール124A〜124Zは、セルの1つまたは複数の列および1つまたは複数のデータタイプに関する統計121に部分的に基づいて、データテーブル120内のデータについて様々な推奨されたチャートを作成し得る。作成された推奨されたチャートの各々は、データテーブル120内のデータの少なくともサブセットを表し得る。
【００２０】
いくつかの実装形態では、チャート生成モジュール124A〜124Zは、推奨されたチャートを作成するために1つまたは複数のルール125A〜125Zを使用し得る。ルール125A〜125Zは開発者によってあらかじめ定義されてもよく、ルールはデータテーブル120内のデータのグループ間の関係を識別するためにデータテーブル120に適用されてもよい。いくつかの実装形態では、関係は、特定のモデル(たとえば、線形、対数など)に適合するデータテーブル120内のデータを指すことができる。たとえば、関係は、特定のデータタイプを有するデータと、データテーブル120の列内の値との間の相関関係を含み得る。いくつかの実装形態では、関係は、データテーブル120内の少なくとも2つの列ヘッダ(たとえば、「販売量」と「販売地域」)の間の相関関係などを指し得る。ルール125A〜125Zはまた、特定のチャートがファセットされ得るかどうかを指定し得る。
【００２１】
いくつかの実装形態では、ルール125A〜125Zは、少なくとも2つの列の間の識別された関係、列に関する統計121、セルのデータタイプ、および/または任意の他の適切な要因に基づいて、推奨されたチャートのセットを作成するために、データテーブル120の列を様々な順列で組み合わせる方法を定義し得る。ルール125A〜125Zは、上述したように、作成された推奨されたチャートにスコア付けするために使用され得る。ルール125A〜125Zは、最小しきい値を下回ってスコア付けするチャートが破棄される一方で、最小しきい値を上回ってスコア付けする推奨されたチャートがユーザに提供されることを要求し得る。
【００２２】
いくつかの実装形態では、ルール125A〜125Zは、少なくとも2つの列の間の識別された関係、列についての統計121、セルのデータタイプ、および/または、任意の他の適切な要因に基づいて、データテーブル120に使用され得る可能なチャートタイプをスコア付けする方法を定義し、最小しきい値を下回ってスコア付けするチャートタイプを破棄しながら、最小しきい値を上回ってスコア付けする1つまたは複数のチャートタイプを生成し得る。たとえば、データテーブル120の第1の列が日付データタイプを有し、日付が順番に現れる場合、その要因は折れ線チャートのスコアを増加させることになり得る。データテーブル120内の第2の列が、数値データタイプを有し、数が非ランダムな方法で(たとえば、それらが増加または減少している)分布されている場合、その要因も折れ線チャートのスコアを増加させることになる。それら2つの要因を組み合わせると、折れ線チャートのスコアが高くなる可能性がある。別の例では、負の数があることを列のデータ範囲が示す場合、その要因によって円チャートのスコアが減少することがある。別の例では、列内に多数の一意の値がある場合、円チャートに含まれるスライスが多すぎて円チャートを読みにくくなり得るため、その要因によって円チャートのスコアが減少することがある。別の例では、データテーブル120内に多数の行がある場合、棒が細すぎてコヒーレントに読み取るには互いに接近し過ぎる可能性があるので、その要因によって棒チャートのスコアが減少することがある。別の例では、2つの列が両方とも数値データタイプを有し、一般に、1つの列における値がより大きい場合、他の列における値も大きいため、列における値の間に相関関係がある可能性があり、散布図のスコアが高い可能性がある。いくつかの実装形態では、ルール125A〜125Zは、初期データテーブルに基づいて生成される可能性のある追加のテーブルをスコア付けする方法を定義し得る。たとえば、初期データテーブル内の様々な列を使用して集計データテーブルが生成され得、ルール125A〜125Zは、一意の値が最も少ない列を使用して生成される集計データテーブルに最高スコアが割り当てられることを定義し得る。
【００２３】
チャート生成モジュール124A〜124Zは、チャートタイプを決定し、チャートタイプに従って推奨されたチャートを作成するために、機械学習モデル123および/またはルール125A〜125Zを使用し得る。チャート生成モジュール124A〜124Zはまた、推奨されたチャートを含むチャート推奨リストを生成し得る。いくつかの実施形態では、推奨されたチャートは、スコアおよび/または多様性基準に従って順序付けられ得る。多様性基準は、多様なデータの提示を確実にするために、類似のデータ関係を表す類似のタイプのチャートがチャート推奨リスト内で互いに隣接して配置されないことを確実にするために使用され得る。
【００２４】
いくつかの実装形態では、追加のデータテーブルは、データテーブル120から生成され得る。追加のテーブルは、統計121に基づいて初期データテーブルから生成され得る。たとえば、データテーブル120内の列内の一意の値の合計を含む集計テーブルが生成され得る。集計テーブルを生成するために使用される他の集計式があり得る。たとえば、集計式は、データテーブル120内の情報について平均集計を計算し得る。さらに、選択された列に関連付けられる変換されたデータを生成するために、合計、集計、または平均化などの変換が他の列内のデータ値に適用され得る。したがって、追加のテーブルは、初期データテーブルからのデータのサブセットと、変換されたデータの縮小されたセットとを含み得る。集計テーブルは、データのファセットを生成するために使用され得る。集計テーブルおよびファセットの両方は、図6および図7においてより詳細に論じられている。追加のテーブルを使用してチャートを生成することは、興味のあるチャートをユーザに提供し、より小さいデータセットを使用してチャートを生成することによって処理効率を高めることをもたらし得る。
【００２５】
サーバ112A〜112Zのうちの1つまたは複数は、共同文書環境142A〜142Zをユーザデバイス140A〜140Zに提供し得る。共同文書環境142A〜142Zを提供するために選択されたサーバ112A〜112Zは、特定の負荷分散技法、サービスレベル契約、性能指標などに基づき得る。共同文書環境142A〜142Zは、データテーブル120を第1の部分に表示し、同時にチャート推奨リストを第2の部分に表示するユーザインターフェース144A〜144Zを提供し得る。共同文書環境142A〜142Zは、それぞれのユーザインターフェース144A〜144Z内のデータテーブル120および/またはチャート推奨リストに対する変更をレビュー、編集、閲覧、および/または提案するために、異なるユーザデバイス140A〜140Zを使用するユーザがデータテーブル120および/またはチャート推奨リストを含む共同文書に同時にアクセスすることを可能にし得る。一実装形態では、ユーザインターフェース144A〜144Zは、ウェブブラウザによってレンダリングされ、ウェブブラウザウィンドウ内のユーザデバイス140A〜140Zに表示されるウェブページであり得る。別の実装形態では、ユーザインターフェース144A〜144Zは、ユーザデバイス140A〜140Zにダウンロードされたスタンドアロンアプリケーションに含まれ得る。
【００２６】
ユーザデバイス140A〜140Zは、メモリデバイスおよびI/Oデバイスに通信可能に結合された1つまたは複数の処理デバイスを含み得る。ユーザデバイス140A〜140Zは、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、モバイル電話(たとえば、スマートフォン)、または任意の適切なコンピューティングデバイスであり得る。ユーザデバイス140A〜140Zは、入力デバイスおよび出力デバイスなどの構成要素を含み得る。ユーザは、ユーザインターフェース144A〜144Zを介してユーザ名およびパスワードを入力する(または、他の識別情報を提供する)ことによってサーバ112A〜112Zと認証し得、それによって、同じユーザデバイス140A〜140Zが異なるユーザによって異なる時間に使用され得る。いくつかの実装形態では、統計エンジン114、トレーニングエンジン116、データストア118、および/またはチャート生成モジュール124A〜124Zは、ユーザデバイス140A〜140Zの一部であり得る。
【００２７】
図2は、例示的な実装形態による、データテーブル120内のデータに基づいて生成されたチャート推奨リスト200の一例を示している。チャート推奨リスト200は、ユーザインターフェース144Aの第2の部分にデータテーブル120も同時に表示する共同文書環境142Aのユーザインターフェース144Aの第1の部分に提示される。図示される例では、データテーブル120は共同スプレッドシート文書に含まれている。共同スプレッドシート文書内のコンテンツは、データテーブル、チャート、グラフ、視覚的構成要素、テキスト、画像、ビデオ、オーディオクリップ、プログラミングソースコード、または任意の他の適切なタイプのコンテンツのうちの任意の1つまたは複数を含み得る。いくつかの実装形態では、共同スプレッドシート文書は、ユーザによってデータテーブル120に挿入された少なくとも2つのデータの列を有し得る。
【００２８】
スプレッドシート内の様々な列とデータテーブル120のセルのデータタイプとの間の統計を決定するために、共同スプレッドシート文書のデータテーブル120内のデータが解析され得る。いくつかの実装形態では、データテーブル120、統計、およびデータタイプは、推奨されたチャートタイプを生成するようにトレーニングされた機械学習モデル123に入力され得る。いくつかの実装形態では、最小しきい値を上回るスコアを受信する推奨されたチャートタイプを生成するために、少なくともセルの統計およびデータタイプに基づいて、データテーブルにルールが適用され得る。ルールはまた、データテーブル120内の少なくとも2つの列の間の関係を識別するために使用され得、推奨されたチャートタイプは、識別された関係、統計、データタイプ、様々なチャートに関連する前提条件などに基づいて選択され得る。チャート生成モジュール124Aは、推奨されたチャートタイプを使用してデータテーブル120のための推奨されたチャートを作成し得、また、推奨されたチャートを含むチャート推奨リスト200を生成し得る。
【００２９】
図3を参照してより詳細に説明すると、いくつかの実装形態では、ユーザはデータテーブル120内のデータのサブセットの選択を提供し得る。チャート生成モジュール124Aは、最初に、選択された部分におけるデータのために推奨されたチャートを作成することを優先し得る。
【００３０】
図2に示される例では、ユーザまたは共同編集者は、図示されるようにデータテーブル120の列F、G、H、およびIにデータを挿入し得る。データの挿入時に、列についての統計121、少なくとも2つの列の間の1つまたは複数の識別された関係、セルのデータタイプ、チャートに関連する前提条件などに基づいて、1つまたは複数の推奨されたチャートがデータテーブル120に対して作成された後に洞察テーブル204が生成され得る。たとえば、洞察テーブル204は、ルール125Aまたは機械学習モデル123を使用して決定された関係の描写であるチャート206を含む。図示されるように、製品「Rx983小」の売上データはデータテーブル120の一部である。
【００３１】
統計エンジン114は、データテーブル120に対して統計分析を実行し、総単位(F)、返却単位(G)、単位あたりの価格(H)、および州(I)の列ごとの一意の値の数を識別し得る。具体的には、州の列は、データテーブル120内の他の列と比較して、一意の値の最小数(たとえば、3)を含む。さらに、チャート生成モジュール124Aは、データテーブル120内の少なくとも2つの列の間の関係を識別するために、ルール125Aまたは機械学習モデル123を適用し得る。図示される例では、「州」の列である可能性がある販売の地域と、「総単位」、「返却単位」、および/または「単位あたりの価格」の列の組合せである可能性がある売上情報との間の関係が識別され得る。統計および/または識別された関係に基づいて棒チャートのチャートタイプを生成するために、ルール125Aまたは機械学習モデル123が使用され得る。したがって、チャート生成モジュール124Aは、「州」の列によって製品の売上情報を集計することによって、統計および/または識別された関係に基づいて、推奨された棒チャート206を作成し得る。推奨された棒チャート206は、ユーザインターフェース144A内のデータテーブル120と同時に洞察テーブル204内に表示され得る。
【００３２】
いくつかの実装形態では、ユーザが、推奨された棒チャート206を(たとえば、入力装置を1回クリックすることによって、またはカーソルを重ねることによって)部分的に選択すると、選択されたチャートのセルの作成に関与するデータテーブル120内のセルに対して視覚的インジケータが表示され得る。たとえば、セルが強調表示され得る。そのような視覚的インジケータは、推奨された棒チャート206においてどのデータが視覚化されているかをユーザがより完全に理解することを可能にする、拡張されたユーザインターフェースを提供し得る。さらに、ユーザは、完全に選択することによって(たとえば、ダブルクリックすること、または入力装置を保持することによって)、推奨された棒チャート206を共同スプレッドシート文書に直接追加し得る。
【００３３】
データテーブル120から抽出され、推奨された棒チャート206に示された情報を要約する洞察テーブル204において生成された強調表示セクション208もあり得る。たとえば、強調表示セクション208は、製品が販売されていると報告されている3つの州のうち、上位2つの州に売上が集中していることを示している。
【００３４】
図3は、例示的な文書による、データテーブル120内のデータのユーザ選択に基づいて生成されたチャート推奨リスト200の一例を示している。データテーブル120は、共同スプレッドシート文書のユーザインターフェース144Aに表示され得る。具体的には、ユーザは、データテーブル120内のセルの強調表示された部分によって表されるように、データテーブル120からデータのサブセットを選択し得る。チャート生成モジュール124Aは、選択されたデータのサブセットに基づいて、1つまたは複数の推奨されたチャートを生成し得る。たとえば、選択されたデータのサブセット内に存在する列のデータタイプが決定されてもよく、選択されたデータのサブセットに存在する列についての統計121が決定されてもよく、関係が、選択されたデータのサブセット内に存在する少なくとも2つのデータの列について識別されてもよく、また同様なものであってよい。選択されたデータのサブセットについて1つまたは複数の推奨されたチャートタイプを生成するために、ルール125Aまたは機械学習モデル123が使用され得る。チャート生成モジュール124Aは、推奨されたチャートタイプに基づいて推奨されたチャートを生成し得る。ユーザによって選択されたデータのサブセットを表す少なくとも1つの推奨されたチャートを示すために、データテーブル120全体を表す推奨されたチャートを以前に表示した洞察テーブル204は動的に更新され得る。
【００３５】
たとえば、図示されるように、商品「Rx983小」の売上情報がデータテーブル120に示されている。売上情報の分布は、各売上げの都市も説明する。ユーザは、強調表示300によって表されるデータテーブル120内のデータのサブセットを選択した。選択されたサブセットのセルのデータタイプが決定されてもよく、選択されたデータのサブセット内の列についての統計が決定されてもよく、選択されたサブセット内の少なくとも2つの列の関係が識別されてもよく、様々なチャートの前提条件が、選択されたデータのサブセットを考慮して決定されてもよく、また同様なものであってよい。たとえば、都市と、製品の売上げによって生み出される利益との間の関係が識別され得る。選択されたデータのサブセットについてのこの情報に基づいて1つまたは複数の推奨されたチャートタイプを生成するために、ルール125Aまたは機械学習モデル123が使用され得る。チャート生成モジュール124Aは、選択されたデータのサブセットについての1つまたは複数の推奨されたチャートタイプに基づいて、1つまたは複数の推奨されたチャートを作成し得る。たとえば、図示されるように、推奨された棒チャート302は、選択されたデータのサブセットを表すために生成される。「都市」の列における一意の値の数が棒チャートのしきい値を超えないため、ルール125Aまたは機械学習モデル123を使用して棒チャートが生成され得、および「都市」の列と「売上げ」との間の関係は視覚化のために指定された関係として識別される。言い換えれば、選択されたデータのサブセットを他のタイプのチャートよりもユーザにとってより明確に表すように決定され得るので、棒チャートが生成され得る。
【００３６】
さらに、地理的チャート304はまた、チャート生成モジュール124Aによって生成され、チャート推奨リスト200に含まれ得る。地理的チャート304は、選択されたデータのサブセットが「都市」の列ヘッダを有する列を含むので選択され得る。地理的チャートが都市などの地理的インジケータを含むデータを表す際に有用であり得ると決定するために、ルール124Aまたは機械学習モデル123が使用され得る。しかしながら、地理的チャート304は、棒チャートほど明確に都市別の利益を表示しないので、棒チャート302ほど高いスコアを受信していない可能性がある。したがって、地理的チャート304は、チャート推奨リスト200の下側に表示され得る。チャート生成モジュール124Aは、推奨された棒チャート302と地理的チャート304の両方を含めるために、洞察テーブル204に表示されたチャート推奨リスト200を更新し得る。
【００３７】
いくつかの実装形態では、データテーブル120の処理は、関係識別プロセスまたは統計決定プロセスにいかなる値も追加しない可能性があるデータを除去することを備える。たとえば、データベース内のIDフィールドは、データテーブル120内の記録ごとの一意の識別子のリストであり、IDフィールドからどのような推論も導き出すことはできない。したがって、IDフィールドは、列についての意味のある統計を決定すること、および/またはデータテーブル120内の少なくとも2つの列の間の関係を決定することには不要であり得る。いくつかの実装形態では、データテーブル120を処理することは、データテーブル120内の様々な列の間の関係を確立するために使用される列内のデータのタイプを決定するために、データテーブル120内の列ごとの列ヘッダおよびデータタイプを分析することを含み得る。
【００３８】
ユーザは、図2および図3に示される洞察テーブル204と対話し得る。いくつかの実装形態では、対話は、データテーブル120とともに共同スプレッドシート文書内に表示されるチャート推奨リスト200内の推奨されたチャートの選択であり得る。選択されると、推奨されたチャートは共同スプレッドシート文書に挿入され得る。いくつかの実装形態では、チャートが選択されると、次いでユーザは個人の好みに合うように選択された異なるフィールドの名前、データ範囲、またはチャートのタイプを修正することに進み得る。いくつかの実装形態では、ユーザは、洞察テーブル204を閉じ、洞察テーブル204によって提供される洞察またはチャートのいずれも使用せずに、ルール125Aまたは機械学習モデル123によって探求されない関係についての新しいチャートを作成し得る。推奨された棒チャート206とのあらゆる対話は記録され、機械学習モデル123を更新するためにトレーニングエンジン116に提供され得る。たとえば、ユーザが推奨された棒チャート206を選択し、任意の軸名、フォント、色などを修正する場合、この情報はトレーニングエンジン116に提供され得、それによって、機械学習モデル123は、個人的に調整され、ユーザによって選択される可能性がより高い類似のデータ用のチャートタイプを生成するように更新され得る。図2および図3に示されるユーザインターフェース144Aは説明のためのものであることを理解されたい。ユーザインターフェース144A内のデータテーブル120および/または推奨されたチャートは、より少ないデータ、より多くのデータ、または多くの異なるデータのフォーマットを有し得る。
【００３９】
図4は、本開示の一実装形態による、データテーブル120内のデータからチャート推奨リスト200を生成するための方法400の態様の流れ図である。方法400およびその個々の機能、ルーチン、サブルーチン、または動作の各々は、本方法を実行するコンピュータデバイスの1つまたは複数の処理デバイスによって実行され得る。いくつかの実装形態では、方法400は単一の処理スレッドによって実行され得る。あるいは、方法400は、2つ以上の処理スレッドによって実行されてもよく、各スレッドは、方法の1つまたは複数の個々の機能、ルーチン、サブルーチン、または動作を実行する。例示的な例では、方法400を実装する処理スレッドは同期され得る(たとえば、セマフォ、クリティカルセクション、および/または他のスレッド同期メカニズムを使用して)。あるいは、方法400を実装するプロセスは互いに非同期的に実行され得る。
【００４０】
説明を簡単にするために、本開示の方法は一連の動作として描かれ説明されている。しかしながら、本開示による動作は、様々な順序で、および/または同時に、ならびに本明細書に提示および説明されていない他の動作と同時に起こり得る。さらに、開示された主題に従って方法を実装するために、例示されたすべての動作が必要とされるわけではない。さらに、当業者は、方法が状態図またはイベントを介して一連の相互に関連した状態として代替的に表され得ることを理解および認識するだろう。さらに、本明細書に開示されている方法は、そのような方法をコンピューティングデバイスに移送および転送することを容易にするために製品に記憶されることが可能であることを理解されたい。本明細書で使用される「製品」という用語は、任意のコンピュータ可読デバイスまたはストレージ媒体からアクセス可能なコンピュータプログラムを包含することが意図される。一実装形態では、方法400は、クラウドベース環境110内のサーバ112A〜112Zおよび/または統計エンジン114のうちの1つまたは複数の処理デバイスによって実行される、1つまたは複数のチャート生成モジュール124A〜124Zによって実行され得る。いくつかの実装形態では、方法400は、チャート生成モジュール124A〜124Zおよび/または統計エンジン114を実行するユーザデバイス140A〜140Zのうちの1つまたは複数の処理デバイスによって実行され得る。
【００４１】
方法400はブロック402において開始し得る。ブロック402において、処理デバイスは、セルの1つまたは複数の列および1つまたは複数のデータタイプを識別するために、データテーブル120のセルを解析し得る。データテーブル120は、データストア118内に配置されてもよく、任意の適切な電子文書(たとえば、スプレッドシート文書、ワープロ文書、スライドショー文書など)に含まれてもよい。電子文書は共同編集者と共有されてもよく、共有されなくてもよい。処理デバイスはまた、列の各々の列ヘッダを識別し得る。列のデータタイプは、文字列、数値、日付、通貨、浮動小数点数、または任意の適切なデータタイプを含み得る。
【００４２】
ブロック404において、処理デバイスは、1つまたは複数の列についての1つまたは複数の統計121を取得するために、1つまたは複数の列の統計分析を実行し得る。統計は、列の各々における一意の値の数の集計、列の各々における値の範囲、列の各々におけるデータの分布、列における行の数、列の各々におけるデータの平均などを含み得る。さらに、統計121はデータテーブル120のサイズも含み得る。
【００４３】
ブロック406において、処理デバイスは、1つまたは複数の列に関する1つまたは複数の統計121およびセルの1つまたは複数のデータタイプに基づいて、1つまたは複数の推奨されたチャートを作成し得る。いくつかの実装形態では、1つまたは複数の推奨されたチャートを作成することは、1つまたは複数のルール125Aをデータテーブル120に適用することを含み得る。1つまたは複数のルールは、1つまたは複数の列の少なくとも2つの列の間の関係を識別するために使用され得る。上述したように、識別された関係は、視覚化に適している/指定されていると定義される少なくとも2つの列の列ヘッダ間の関係、または少なくとも2つの列の値の間の相関関係によって定義される関係であり得る。たとえば、ルールは、製品が販売される地域に関連する列ヘッダと、製品の実際の売上データに関連する列ヘッダとの間の売上情報についての関係を指定し得る。別の関係は、2つの異なる列における値がともに傾向がある(たとえば、両方が増加する、両方が減少する、または一方が増加するが他方が減少する)と決定されたときに、相関関係を指定し得る。1つまたは複数のルールはまた、推奨されたチャートタイプをスコア付けする方法を定義し得る。これらのスコアに基づいて、最小しきい値を上回ってスコア付けする1つまたは複数の推奨されたチャートタイプが識別され得る。処理デバイスは、データテーブル120内の少なくともデータのサブセットについて、識別されたチャートタイプに基づいて推奨されたチャートを作成し得る。いくつかの実装形態では、1つまたは複数のルールは、図5を参照してさらに説明するように、推奨されたチャートをスコア付けする方法を定義し得る。
【００４４】
いくつかの実装形態では、1つまたは複数の推奨されたチャートを作成することは、1つまたは複数のチャートタイプを出力するようにトレーニングされた機械学習モデル123への入力として、セルの1つまたは複数の列および1つまたは複数のデータタイプに関する1つまたは複数の統計121を適用することを含み得る。機械学習モデル123は、入力された様々なトレーニングデータテーブルに対する注釈を提供し得る注釈付きチャート122、および入力されたデータテーブルに基づいて出力される対応するチャートを使用してトレーニングされ得る。たとえば、注釈は、トレーニングデータテーブル内の統計、トレーニングデータテーブル内のデータのグループ間の関係、トレーニングデータテーブル内のデータタイプ、トレーニングデータテーブルに適したチャートタイプの前提条件などを指定し得る。処理デバイスは、出力されたチャートタイプに基づいて1つまたは複数の推奨されたチャートを作成し得る。
【００４５】
ブロック408において、処理デバイスは、1つまたは複数の推奨されたチャートのうちの少なくとも1つを含むチャート推奨リスト200を生成し得る。ユーザインターフェース144Aは、ユーザデバイス140A上に表示するために提供されてもよく、ユーザインターフェース144Aは、チャート推奨リスト200を提示するための第1の部分と、データテーブル120を同時に提示するための第2の部分とを含んでもよい。チャート推奨リスト200は、洞察テーブル204に表示され得る。ユーザは、チャート推奨リスト200に表示された推奨されたチャートのいずれかをデータテーブル120を含む電子文書に追加することを選択し得、選択された推奨されたチャートは、データテーブル120に近接する電子文書に挿入され得る。
【００４６】
いくつかの実装形態では、処理デバイスは、スコアに基づいてチャート推奨リスト200内の推奨されたチャートを順序付けてもよく、最高スコアの推奨されたチャートが、チャート推奨リスト200においてより優先的に(たとえば、より高く)表示される。いくつかの実装形態では、処理デバイスはまた、チャート推奨リスト200内の推奨されたチャートの順序を決定するために、多様性基準を使用し得る。たとえば、最高のスコアを有する上位2つのチャートが同様のチャートタイプであり、同様の方法でデータを表す場合、異なるチャートタイプを有する第3のチャートは、第3のチャートが異なるタイプであり、異なる方法でデータを表す場合、第2の最高ランクチャートよりも顕著に表示されるように再配置され得る。したがって、たとえ第3のチャートが第2の最高スコアを有する第2のチャートよりも低いスコアを有するとしても、第3のチャートは第2のチャートの上に表示され得る。
【００４７】
いくつかの実装形態では、処理デバイスは、チャート推奨リスト200から推奨されたチャートの選択を受信し得る。たとえば、ユーザは、推奨されたチャートを電子文書に挿入することなしに、推奨されたチャートリスト200内の推奨されたチャートを選択し得る(たとえば、推奨されたチャート上で入力装置を1回クリックすることによって、または推奨されたチャート上にカーソルを重ねることによって)。処理デバイスは、選択された推奨されたチャートの作成に関与するデータテーブル120内のセルに対して視覚的インジケータ(たとえば、強調表示)を表示させることができる。いくつかの実装形態では、ユーザが推奨されたチャートを電子文書に挿入することを選択すると、選択された推奨されたチャートの作成に関与するデータテーブル120内のセルに対して視覚的インジケータも表示され得る。
【００４８】
いくつかの実装形態では、処理デバイスは、データテーブル120内のデータのサブセットの選択を受信し得る。ユーザは、所望のセルの周りにボックスをドラッグすることによって、電子文書内のデータテーブル120内のデータのサブセットを強調表示し得る。処理デバイスは、データの選択されたサブセットがチャート作成のために使用されるように優先し得る。たとえば、処理デバイスは、選択されたデータのサブセットを表すために1つまたは複数の修正された推奨されたチャートを作成し得る。たとえば、選択されたデータのサブセットについて新しい統計が取得され得、選択されたデータのサブセットについて新しい関係が識別され得、選択されたデータのサブセットについて新しいデータタイプが決定され得、選択されたデータのサブセットについてチャートの新しい前提条件が決定され得るなどし、処理デバイスはそれに応じて修正された推奨されたチャートを作成し得る。処理デバイスはまた、データテーブル120全体についての推奨されたチャートを作成し得る。処理デバイスは、1つまたは複数の修正された推奨されたチャートのうちの少なくとも1つを含む更新されたチャート推奨リストを生成し得る。チャート推奨リストはまた、データテーブル120全体に基づいて推奨されたチャートのうちの少なくとも1つを含み得る。処理デバイスは、データテーブル120全体に基づいて、推奨されたチャートの上の選択されたデータのサブセットに基づく修正された推奨されたチャートを優先的にランク付けして表示し得る。
【００４９】
図5は、本開示の一実装形態による、チャート推奨リスト200を生成するために、1つまたは複数のルールを使用して生成されたチャートをスコア付けするための方法500の態様の流れ図である。方法500は、方法400に関して上述した方法と同じまたは類似の方法で実行され得る。一実装形態では、方法500は、クラウドベース環境110内のサーバ112A〜112Zおよび/または統計エンジン114のうちの1つまたは複数の処理デバイスによって実行される、1つまたは複数のチャート生成モジュール124A〜124Zによって実行され得る。いくつかの実装形態では、方法500は、チャート生成モジュール124A〜124Zおよび/または統計エンジン114を実行するユーザ装置140A〜140Zのうちの1つまたは複数の処理デバイスによって実行され得る。
【００５０】
方法500はブロック502において開始し得る。ブロック502において、処理デバイスは、上述のように作成された1つまたは複数の推奨されたチャートの各々にスコア付けし得る。スコア付けは、ルール125A〜125Zまたは機械学習モデル123を適用することによって処理デバイスによって実行され得る。スコア付けは、セルの1つまたは複数のデータタイプ、1つまたは複数の統計121(たとえば、列内の一意の値の集計、データ値範囲、データの分布、データテーブルのサイズ)、1つまたは複数の基準(たとえば、特定のチャートタイプに描かれ得るいくつかの列、チャートタイプが負の値を処理することができるかどうか、チャートが元のチャートが明らかにしなかった情報を明らかにするかどうか、など)、および/またはデータテーブル120の少なくとも2つの列の間で識別された関係(たとえば、列の値の間の相関関係、視覚化のために指定されたと定義された関係など)のうちの少なくとも1つに基づき得る。いくつかの実装形態では、スコア付けは、ルール125A〜125Zまたは機械学習モデル123を使用して、推奨されたチャートタイプに対しても実行され得る。
【００５１】
ブロック504において、処理デバイスは、最小しきい値を下回るスコアを受信する1つまたは複数の推奨されたチャートを破棄し得る。最小しきい値を下回るスコアを受信する推奨されたチャートを破棄することは、チャート推奨リスト200に表示された推奨されたチャートの数を減らすことを可能にし得、チャート推奨リスト200を生成する処理速度を向上させることができる。
【００５２】
ブロック506において、処理デバイスは、チャート推奨リスト200に含めるために最小しきい値を上回るスコアを受信する1つまたは複数の推奨されたチャートを選択し得る。処理デバイスは、ユーザインターフェース144Aの別の部分にもデータテーブル120を同時に表示する、ユーザインターフェース144A内のある部分における洞察テーブル204内にチャート推奨リスト200を表示し得る。
【００５３】
図6は、例示的な実装形態による、データテーブル120内に存在するデータから作成された集計テーブルの一例を示す図である。データテーブル120は、データストア118に記憶されてもよく、共同編集者と共有されるかまたは共有されないかのいずれかである電子文書(たとえば、スプレッドシート文書、ワープロ文書、スライドショー文書など)に含まれてもよい。本明細書では、データテーブル120は初期データテーブルと呼ばれ得、集計テーブルは追加のテーブルと呼ばれ得る。
【００５４】
初期データテーブル120は、名前600、回答602、値A 604、および値B 606の4つの異なる列を含む。初期データテーブル120に対して行われた統計分析は、列600、602、604、および606の各々における一意の値の数を示す統計121を取得する。集計テーブル608は、統計(たとえば、テーブル120の各列内の一意の値)に基づいて生成され得る。いくつかの実装形態では、集計テーブルを生成するために列を選択するという決定は、列内の一意の値の数に基づいて行われ得る。たとえば、列の一意の値が比較的少ない場合、一意の値は、比較的多数の一意の値を含む列からの一意の値よりも重要になる可能性がある。図示されるように、回答列602は、テーブル内の他の列と比較して、2つの一意の値YesおよびNoのみを有する(たとえば、名前列600は5つの一意の値を有する)。ルール125A〜125Zのうちの1つまたは複数、あるいは機械学習モデル123の適用は、一意の値の数が限られているために、回答602に基づいて生成された集計テーブル608をテーブル402から生成された任意の他の集計テーブルよりも高くスコア付けすることをもたらし得る。さらに、値A列604および値B列606が数値のデータタイプを有すると決定した場合、回答列602内の一意の応答ごとに値A列604および値B列606の数を追加することによって集計テーブル608を生成するために、ルール125A〜125Zまたは機械学習モデル123が適用され得る。
【００５５】
集計テーブル608は、回答610、値Aの合計612、および値Bの合計614の3つの列を含む。回答列610は、YesおよびNoの行エントリを含み、それぞれの合計は、値A列の合計612および値B列の合計614に示される。したがって、集計テーブル608は、初期データテーブル120からの変換されたデータを表す。初期データテーブル120内のデータに適用される変換は、値Aおよび値BにおいてYesに関連付けられる値を合計すること、および値Aおよび値BにおいてNoに関連付けられる値を合計することを含む。平均化などの他の変換が適用され得ることを理解されたい。結果として生じる集計テーブル608は、初期データテーブル120からのデータのサブセット(たとえば、YesおよびNo)、ならびに初期データテーブル120において直接表されていない新たに変換されたデータを含み得る。
【００５６】
別の集計テーブル616は、最小の一意の値を有する初期データテーブル120内の回答602列に基づいて生成され得る。具体的には、集計テーブル616は、回答618およびカウント620のための列を含む。集計テーブル616は、回答列618のエントリ(YesおよびNo)と、それらが初期データテーブル120に何回現れるかについてのカウント(2および3)とを示す。したがって、集計データテーブル616は、初期データテーブル120からのデータのサブセットと、変換されたデータ(たとえば、カウント)を含む。
【００５７】
集計テーブル608および616は、図2および図3に示されるように、チャートおよびグラフの形で表され得る。集計テーブル608および616内の縮小されたデータのサブセットを使用してチャートを生成することは、縮小されたデータセットを使用して作成されたチャートを様々なユーザデバイス140A〜140Zに送信することによって、処理速度を向上し、および/またはネットワークトラフィックを低減し得る。集計テーブル608および616に関連するチャートは、上述したように、作成され、次いで多数の要因に基づいてスコア付けされ得る。これらの要因のうちのいくつかは、列内の一意の値の数および/または特定のチャートに表示され得る列の数を含み得る。いくつかの実装形態では、集計テーブル608および616内の情報を表すためにチャートタイプを決定する一方で、ルール125Aまたは機械学習モデル123は、チャートが集計テーブル608および/または616内の情報を表すための特定の前提条件を満たすかどうかを決定する。たとえば、円チャートは、負の値を有する集計テーブルを表すために使用することはできない。
【００５８】
図7は、例示的な実装形態による、データテーブル120内に存在するデータから生成されたファセットチャートセットの一例を示す図である。チャートおよびテーブルのファセットバージョンは、同じデータに対して同じタイプである。チャートをファセットするかどうかの選択は、ファセットチャートが、ファセットチャートが生成される第1のチャートに含まれていない情報を含むかどうかなどの、特定の要因に依存し得る。いくつかの実装形態では、チャートがファセット可能であるかどうかを決定するために、ルール125Aまたは機械学習モデル123が使用され得る。たとえば、列内に一意の値の繰り返しがほとんど含まれていないデータテーブルは、ファセット可能ではない場合がある。いくつかの実装形態では、列の各々の一意の値に基づいてどの列がファセットされ得るかも決定するために、統計分析が実行され得る。ファセットされると決定された列は、カテゴリ列と呼ばれ得る。
【００５９】
具体的には、図7のデータテーブル120は、2つの一意の値(MAおよびCA)を含む位置列を含む。したがって、位置列は、データテーブル120内の他の列と比較して最小数の一意の値を有するので、カテゴリ列として選択され得る。データテーブル120内のすべてのカテゴリ列について、ファセットチャートが生成されてもよく、ファセットチャートの各々は、正規化された相互情報の概念に基づいてスコア付けされ得る。ファセットチャートにおいて表される情報が多いほど、ファセットチャートのスコアはより高くなり得る。ファセットチャートが元のチャートが明らかにしなかった情報を明らかにした場合、ファセットチャートは高くスコア付けされる。
【００６０】
たとえば、初期チャート704は、データテーブル120の統計、データテーブル120内の少なくとも2つの列の識別された関係、セルのデータタイプなどに基づいてテーブル120について生成される。ルール125Aまたは機械学習モデル123がチャート504に適用され得、その結果、位置のカテゴリ列に基づいて、チャートがファセット可能であり得ると決定し得る。たとえば、ルール125Aまたは機械学習モデルは、位置列によるファセット処理がスコア列との高い相互情報を含むと決定し得る。示されているように、位置列のCAの各エントリはスコア列の5の値に関連付けられ、位置のMAの各エントリはスコア列の2の値に関連付けられている。したがって、位置によってファセットチャート700の追加のバージョンは、高いスコアを付けられ得る。ファセットチャートのスコア付けは、ユーザによってあらかじめ定められた任意のスケールで行われ得る。分析に基づいて、チャート生成モジュール124Aは、チャート700からのデータのサブセットを使用して生成されるが、位置によって分割される、ファセットチャート702および704を生成し得る。たとえば、ファセットチャート702は、位置についてCAによってチャート700から分割され、ファセットチャート704は、位置についてMAによってチャート700から分割される。ファセットチャート702および704を生成することは、初期データテーブル120からのデータのサブセットだけを使用することによって処理速度を上げることができ、また興味深い情報をユーザに提示することもできる。
【００６１】
図8は、本開示の一実装形態による、初期データテーブルから生成される追加のデータテーブル内のデータからチャート推奨リスト200を生成するための方法800の態様の流れ図である。方法800は、方法400に関して上述した方法と同じまたは類似の方法で実行され得る。一実装形態では、方法800は、クラウドベース環境110内のサーバ112A〜112Zおよび/または統計エンジン114のうちの1つまたは複数の処理デバイスによって実行される、1つまたは複数のチャート生成モジュール124A〜124Zによって実行され得る。いくつかの実装形態では、方法800は、チャート生成モジュール124A〜124Zおよび/または統計エンジン114を実行するユーザ装置140A〜140Zのうちの1つまたは複数の処理デバイスによって実行され得る。
【００６２】
方法800はブロック802において開始し得る。ブロック802において、処理デバイスは、初期データテーブルの列およびセルの1つまたは複数のデータタイプに関する統計121に基づいて、初期データテーブルからのデータのサブセットを含む少なくとも1つの追加のテーブルを作成し得る。追加のテーブルは、図6を参照して上述したように集計テーブルであり得る。いくつかの実装形態では、追加のデータテーブルは、電子文書のユーザインターフェース144A内の初期データテーブルに近接して表示され得る。
【００６３】
ブロック804において、処理デバイスは、それぞれが追加のデータテーブル内のデータの少なくともサブセットを表す1つまたは複数の追加の推奨されたチャートを作成し得る。追加の推奨されたチャートは、追加のデータテーブルの統計121、追加のデータテーブルの列の間で識別される関係、追加のデータテーブル内のセルのデータタイプ、追加のデータテーブルを表すためのチャートの前提条件などに基づいて、ルール125A〜125Zまたは機械学習モデル123を追加のデータテーブルに適用することによって作成され得る。いくつかの実装形態では、チャートは、たとえば集計テーブルを表す棒チャートであり得る。いくつかの実装形態では、追加の推奨されたチャートは、図7を参照して説明したファセットチャートであり得る。第1のチャート推奨リスト内の1つまたは複数の追加の推奨されたチャートのうちの少なくとも1つは、変換されたデータを表し得る。変換されたデータは、初期データテーブル内のデータに適用された変換から生じ得る。変換されたデータは初期データテーブルにおいて描かれていなくてもよく、変換は集計、合計、または平均化のうちの少なくとも1つを含んでもよい。
【００６４】
ブロック806において、処理デバイスは、1つまたは複数の追加の推奨されたチャートのうちの少なくとも1つを含むチャート推奨リスト200を生成し得る。ルール125A〜125Zまたは機械学習モデル123は、追加の推奨されたチャートをスコア付けし得、それはスコアおよび/または多様性基準に基づいてチャート推奨リスト200内に配置され得る。チャート推奨リスト200は、作成された初期データテーブルおよび/または追加のデータテーブルと同時に、ユーザインターフェース144Aの洞察テーブル204に表示され得る。
【００６５】
図9は、例示的な実装形態による、共同作業するユーザから追加のデータを受信し、追加のデータに基づいてチャートを含む第2のチャート推奨リストを生成するための方法900の流れ図である。方法900は、方法400に関して上述した方法と同じまたは類似の方法で実行され得る。一実装形態では、方法900は、クラウドベース環境110内のサーバ112A〜112Zおよび/または統計エンジン114のうちの1つまたは複数の処理デバイスによって実行される、1つまたは複数のチャート生成モジュール124A〜124Zによって実行され得る。いくつかの実装形態では、方法900は、チャート生成モジュール124A〜124Zおよび/または統計エンジン114を実行するユーザ装置140A〜140Zのうちの1つまたは複数の処理デバイスによって実行され得る。
【００６６】
方法900はブロック902において開始し得る。ブロック902において、処理デバイスは、共同作業するユーザからデータテーブル120内の追加のデータを受信し得る。たとえば、データテーブル120が共有電子文書に含まれる場合の例では、共有電子文書は第1のユーザデバイス140A上のユーザインターフェース144Aにおいて開かれてよく、共有電子文書は第2のユーザデバイス140B上の別のユーザインターフェース144Bにおいて同時に開かれ得る。第2のユーザはデータをデータテーブル120に追加し得る。
【００６７】
処理デバイスはデータテーブル120に対する追加のデータを受信し、追加のデータを表すために1つまたは複数の修正された推奨されたチャートを作成し得る(ブロック904)。たとえば、追加のデータを含むデータテーブル120について新たな統計が取得され得、新たな関係が識別され得、新たなデータタイプが決定され得、チャートの新たな前提条件が決定され得るなどし、処理デバイスは、それに応じて修正された推奨されたチャートを作成し得る。
【００６８】
ブロック904において、処理デバイスは、1つまたは複数の修正された推奨されたチャートのうちの少なくとも1つを含めるためにチャート推奨リスト200を更新し得る。更新されたチャート推奨リストは動的に更新され、共同作業するユーザによって追加されたデータを含むデータテーブル120にも表示されるユーザインターフェース144A内の洞察テーブル204に表示され得る。
【００６９】
図10は、本開示の1つまたは複数の態様に従って動作する例示的なコンピューティングシステムのブロック図である。様々な例示的な例では、コンピュータシステム1000は、図1のシステムアーキテクチャ100内のコンピューティングデバイスのいずれかに対応し得る。一実装形態では、コンピュータシステム1000は、サーバ112A〜112Z、統計エンジン114、またはトレーニングエンジン116の各々であり得る。別の実装形態では、コンピュータシステム1000は、ユーザデバイス140A〜140Zの各々であり得る。
【００７０】
いくつかの実装形態では、コンピュータシステム1000は、(たとえば、ローカルエリアネットワーク(LAN)、イントラネット、エクストラネット、またはインターネットなどのネットワークを介して)他のコンピュータシステムに接続され得る。コンピュータシステム1000は、クライアント-サーバ環境ではサーバまたはクライアントコンピュータの容量で、あるいはピアツーピアまたは分散ネットワーク環境ではピアコンピュータとして動作し得る。コンピュータシステム1000は、パーソナルコンピュータ(PC)、タブレットPC、セットトップボックス(STB)、携帯情報端末(PDA)、セルラー電話、ウェブ機器、サーバ、ネットワークルータ、スイッチまたはブリッジ、あるいはそのデバイスによって実行されるべきアクションを指定する命令のセット(順次またはその他)を実行することが可能な任意のデバイスによって提供され得る。さらに、「コンピュータ」という用語は、本明細書に記載の方法のうちの任意の1つまたは複数を実行するために、命令のセット(または、複数のセット)を個別に、または共同で実行する任意のコンピュータの集合を含む。
【００７１】
さらなる態様では、コンピュータシステム1000は、処理デバイス1002、揮発性メモリ1004(たとえば、ランダムアクセスメモリ(RAM))、不揮発性メモリ1006(たとえば、読出し専用メモリ(ROM)、または電気的消去可能プログラマブルROM(EEPROM))、およびデータストレージデバイス2316を含み得、それらはバス1008を介して互いに通信し得る。
【００７２】
処理デバイス1002は、汎用プロセッサ(たとえば、複合命令セットコンピューティング(CISC)マイクロプロセッサ、縮小命令セットコンピューティング(RISC)マイクロプロセッサ、非常に長い命令語(VLIW)マイクロプロセッサ、他のタイプの命令セットを実装するマイクロプロセッサ、または命令セットのタイプの組合せを実装するマイクロプロセッサなど)、あるいは専用プロセッサ(たとえば、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、デジタル信号プロセッサ(DSP)、またはネットワークプロセッサなど)などの、1つまたは複数のプロセッサによって提供され得る。
【００７３】
コンピュータシステム1000は、ネットワークインターフェースデバイス1022をさらに含み得る。コンピュータシステム1000はまた、ビデオディスプレイユニット1010(たとえば、LCD)、英数字入力デバイス1012(たとえば、キーボード)、カーソル制御デバイス1014(たとえば、マウス)、および信号発生デバイス1020を含み得る。
【００７４】
データ記憶デバイス1016は、本明細書に記載の方法のいずれかを実装するための、図1のチャート生成モジュール125(125A〜125Z)、統計エンジン114、および/またはトレーニングエンジン116を実装する命令を含む、本明細書に記載の方法または機能のうちの任意の1つまたは複数を符号化する命令1026を記憶し得る非一時的コンピュータ可読ストレージ媒体1024を含み得る。
【００７５】
命令1026はまた、コンピュータシステム1000による実行中、揮発性メモリ1004内および/または処理デバイス1002内に完全にまたは部分的に存在してもよく、したがって、揮発性メモリ1004および処理デバイス1002も機械可読ストレージ媒体を構成し得る。
【００７６】
コンピュータ可読ストレージ媒体1024は、例示的な例では単一の媒体として示されているが、「コンピュータ可読ストレージ媒体」という用語は、実行可能命令の1つまたは複数のセットを記憶する単一の媒体または複数の媒体(たとえば、集中型または分散型データベース、ならびに/あるいは関連付けられるキャッシュおよびサーバ)を含む。「コンピュータ可読ストレージ媒体」という用語はまた、本明細書に記載の方法のうちの任意の1つまたは複数をコンピュータに実行させる、コンピュータによる実行のための命令のセットを記憶または符号化することが可能な任意の有形の媒体を含む。「コンピュータ可読ストレージ媒体」という用語は、固体メモリ、光媒体、および磁気媒体を含むが、それらに限定されない。
【００７７】
前述の説明では、多数の詳細が述べられている。しかしながら、本開示がこれらの特定の詳細なしに実施され得ることは、本開示の利益を得る当業者には明らかであろう。いくつかの例では、本開示を不明瞭にすることを避けるために、よく知られている構造およびデバイスは、詳細にではなくブロック図の形で示されている。
【００７８】
詳細な説明のいくつかの部分は、コンピュータメモリ内のデータビットに対する動作のアルゴリズムおよび記号表現に関して提示されている。これらのアルゴリズムの説明および表現は、自分の仕事の内容を他の当業者に最も効果的に伝えるために、データ処理分野の当業者によって使用される手段である。本明細書では、および一般的には、アルゴリズムは、所望の結果をもたらす自己矛盾のない一連のステップであると考えられる。これらのステップは、物理量の物理的操作を必要とする。必ずというわけではないが、通常、これらの量は、記憶、転送、結合、比較、および他の方法で操作されることが可能な電気信号または磁気信号の形をとる。一般的な使用上の理由から、これらの信号をビット、値、要素、記号、文字、用語、数などとして参照することが時には便利であることが証明されている。
【００７９】
しかしながら、これらおよび類似の用語はすべて適切な物理量に関連付けられるべきであり、これらの量に適用される便利なラベルにすぎないことを念頭に置くべきである。以下の説明から明らかなように、特に明記しない限り、説明全体を通して、「受信」、「表示」、「移動」、「調整」、「置換」、「決定」、「再生」などの用語を利用した議論は、コンピュータシステムのレジスタおよびメモリ内の物理的(たとえば電子)量として表されるデータを操作し、コンピュータシステムのメモリまたはレジスタ内の物理量として同様に表される他のデータに変換するコンピュータシステムあるいは類似の電子コンピューティングデバイス、あるいは他のそのような情報ストレージ、変換、またはディスプレイデバイスのアクションおよびプロセスを指すことを理解されたい。
【００８０】
説明を簡単にするために、本明細書ではこれらの方法が一連の動作として図示および説明される。しかしながら、本開示による動作は、様々な順序で、および/または同時に、ならびに本明細書で提示および説明されていない他の動作とともに発生し得る。さらに、開示された主題に従って方法を実装するために例示されたすべての動作が必要とされるわけではない。さらに、当業者は、方法が状態図またはイベントを介して一連の相互に関連した状態として代替的に表され得ることを理解および認識するだろう。さらに、本明細書に開示されている方法は、そのような方法をコンピューティングデバイスに移送および転送することを容易にするために、製品に記憶されることが可能であることを理解されたい。本明細書で使用する場合、製品という用語は、任意のコンピュータ可読デバイスまたはストレージ媒体からアクセス可能なコンピュータプログラムを包含することが意図されている。
【００８１】
本開示のいくつかの実装形態はまた、本明細書の動作を実行するための装置に関連する。この装置は意図した目的のために構成されてもよく、コンピュータに記憶されたコンピュータプログラムによって選択的に起動または再構成された汎用コンピュータを備えてもよい。そのようなコンピュータプログラムは、これらに限定されないが、フロッピーディスク、光ディスク、CD-ROM、および光磁気ディスクを含む任意のタイプのディスク、読出し専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、EPROM、EEPROM、磁気または光学カード、または電子命令を記憶するのに適した任意のタイプの媒体などの、コンピュータ可読ストレージ媒体に記憶され得る。
【００８２】
本明細書を通じた「一実装形態」または「ある実装形態」への言及は、その実装形態に関して説明した特定の特徴、構造、または特性が少なくとも一つの実装形態に含まれることを意味する。したがって、本明細書を通じて様々な箇所に「一実装形態では」または「ある実装形態では」という句が出現しても、必ずしもすべて同じ実装形態を指すとは限らない。さらに、「または」という用語は、排他的な「または」ではなく包括的な「または」を意味することが意図されている。さらに、「例」または「例示的」という用語は、例、事例、または例示として役立つことを意味するために本明細書で使用される。「例示的」として本明細書に記載された任意の態様または設計は、他の態様または設計よりも好ましいまたは有利であると必ずしも解釈されるべきではない。むしろ、「例」または「例示的」という言葉の使用は、概念を具体的な形で提示することが意図されている。
【００８３】
上記の説明は例示的であり、限定的ではないことが意図されていることを理解されたい。上記の説明を読んで理解すれば、当業者には他の多くの実装形態が明らかになろう。したがって、本開示の範囲は、添付の特許請求の範囲を、そのような特許請求の範囲が権利を有する等価物の全範囲とともに参照して決定されるべきである。
【００８４】
上記の説明に加えて、ユーザは、本明細書に記載のシステム、プログラム、または機能がユーザ情報(たとえば、ユーザのソーシャルネットワーク、社会的なアクションや活動、職業、ユーザの嗜好、またはユーザの現在地についての情報)の収集を可能にするかどうか、およびいつ可能にするか、の両方について、ならびにサーバからユーザにコンテンツまたは通信が送信されるかどうかの選択をユーザが行うことを可能にする制御を提供され得る。さらに、特定のデータは、それが記憶または使用される前に1つまたは複数の方法で扱われる可能性があるため、個人を特定する情報は削除される。たとえば、ユーザの識別は、ユーザについての個人を特定する情報を決定することができないように、または、位置情報が取得される場合(都市、郵便番号、または州レベルなど)、ユーザの特定の位置を決定することができないように、ユーザの地理的位置が一般化され得るように扱われ得る。したがって、ユーザは、ユーザについてどの情報が収集されるか、その情報がどのように使用されるか、およびどの情報がユーザに提供されるかを制御し得る。
【符号の説明】
【００８５】
100  システムアーキテクチャ
110  クラウドベース環境
112A〜112Z  サーバ
114  統計エンジン
116  トレーニングエンジン
116  共同文書
116  機械学習モデル
118  データストア
120  データテーブル
120  初期データテーブル
121  統計
122  注釈付きチャート
123  機械学習モデル
124A〜124Z  チャート生成モジュール
125A〜125Z  ルール
130  ネットワーク
140A〜140Z  ユーザデバイス
142A〜142Z  共同文書環境
144A〜144Z  ユーザインターフェース
200  チャート推奨リスト
204  洞察テーブル
206  推奨された棒チャート
208  強調表示セクション
300  強調表示
302  推奨された棒チャート
304  地理的チャート
400  方法
500  方法
504  チャート
600  名前
602  回答
604  値A
606  値B
608  集計テーブル
610  回答
612  値Aの合計
614  値Bの合計
616  集計テーブル
618  回答
620  カウント
700  チャート
702  ファセットチャート
704  初期チャート
704  ファセットチャート
800  方法
900  方法
1000  コンピュータシステム
1002  処理デバイス
1004  揮発性メモリ
1006  不揮発性メモリ
1008  バス
1010  ビデオディスプレイユニット
1012  英数字入力デバイス
1014  カーソル制御デバイス
1016  データ記憶デバイス
1020  信号発生デバイス
1022  ネットワークインターフェースデバイス
1024  非一時的コンピュータ可読記憶媒体
1026  命令
2316  データストレージデバイス
【図１】
2019537089.tif 000003
【図２】
2019537089.tif 000004
【図３】
2019537089.tif 000005
【図４】
2019537089.tif 000006
【図５】
2019537089.tif 000007
【図６】
2019537089.tif 000008
【図７】
2019537089.tif 000009
【図８】
2019537089.tif 000010
【図９】
2019537089.tif 000011
【図１０】
2019537089.tif 000012
【手続補正書】
【提出日】平成31年4月10日(2019.4.10)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
1つまたは複数のコンピュータにより実行される方法であって、
クラウドベース環境に記憶された共同スプレッドシートのデータテーブル内に存在するデータを使用してチャート推奨リストを生成するための方法であって、
第1のユーザの第1のデバイスに表示されるべき前記共同スプレッドシートを提供するステップであって、前記共同スプレッドシートが、前記第1のユーザが前記共同スプレッドシートを前記第1のデバイス上で編集する間に、第2のユーザが前記共同スプレッドシートを第2のデバイス上で同時に編集することを可能にする許可を前記第2のユーザに与えることによって、前記第2のユーザと共有される、ステップと、
セルの1つまたは複数の列および1つまたは複数のデータタイプを識別するために、前記データテーブルの前記セルを解析するステップと、
前記1つまたは複数の列についての1つまたは複数の統計を取得するために、前記1つまたは複数の列の統計分析を実行するステップと、
前記セルの前記1つまたは複数の列および前記1つまたは複数のデータタイプについての前記1つまたは複数の統計に基づいて、1つまたは複数の推奨されたチャートを作成するステップであって、前記1つまたは複数の推奨されたチャートの各々が、前記データテーブル内の前記データの少なくともサブセットを表す、ステップと、
前記1つまたは複数の推奨されたチャートのうちの少なくとも1つを含むチャート推奨リストを生成するステップと、
を備える、方法。
【請求項２】
前記チャート推奨リストを提示するための第1の部分と、前記データテーブルを同時に提示するための第2の部分とを備えるユーザインターフェースを提供するステップをさらに備える、請求項1に記載の方法。
【請求項３】
前記1つまたは複数の推奨されたチャートを作成するステップが、1つまたは複数のルールを前記データテーブルに適用するステップを備え、
前記1つまたは複数のルールが、前記1つまたは複数の列のうちの少なくとも2つの列の間の関係を定義し、前記定義された関係が、視覚化のために指定された前記少なくとも2つの列の列ヘッダ間の関係、または前記少なくとも2つの列の値の間の相関関係のうちの少なくとも1つを含み、
前記1つまたは複数のルールが、前記1つまたは複数の列に関する前記1つまたは複数の統計、前記セルの前記1つまたは複数のデータタイプ、または前記定義された関係のうちの少なくとも1つに基づいて、1つまたは複数のチャートタイプを決定する方法を定義する、請求項1に記載の方法。
【請求項４】
前記1つまたは複数の推奨されたチャートを作成するステップが、目標出力として1つまたは複数のチャートタイプを生成するようにトレーニングされた機械学習モデルへの入力として、前記セルの前記1つまたは複数の列および前記1つまたは複数のデータタイプに関する前記1つまたは複数の統計を適用するステップを備え、前記1つまたは複数のチャートが、前記生成されたチャートタイプに基づいて作成される、請求項1に記載の方法。
【請求項５】
前記セルの前記1つまたは複数の列および前記1つまたは複数のデータタイプに関する前記1つまたは複数の統計に基づいて、前記データテーブルからの前記データのサブセットを含む少なくとも第2のデータテーブルを作成するステップと、
それぞれが前記第2のデータテーブル内のデータの少なくともサブセットを表す1つまたは複数の追加の推奨されたチャートを作成するステップと、
前記1つまたは複数の追加の推奨されたチャートのうちの少なくとも1つを含む前記チャート推奨リストを生成するステップと
をさらに備える、請求項1に記載の方法。
【請求項６】
前記セルの前記1つまたは複数のデータタイプ、前記1つまたは複数の統計、前記1つまたは複数の推奨チャートに関連する1つまたは複数の基準、あるいは前記1つまたは複数の列のうち少なくとも2つの列の間の識別される関係のうちの少なくとも1つに基づいて、前記1つまたは複数の推奨されたチャートのそれぞれにスコア付けするステップと、
最小しきい値を下回るスコアを受信する前記1つまたは複数の推奨されたチャートを破棄するステップと、
前記チャート推奨リストに含めるために前記最小しきい値を上回るスコアを受信する前記1つまたは複数の推奨されたチャートを選択するステップと、
をさらに備える、請求項1に記載の方法。
【請求項７】
前記第2のユーザの前記第2のデバイスから前記データテーブル内の追加のデータを受信するステップと、
前記追加のデータを表すために、1つまたは複数の修正された推奨されたチャートを作成するステップと、
前記1つまたは複数の修正された推奨されたチャートのうちの少なくとも1つを含む第2のチャート推奨リストを生成するステップと、
をさらに備える、請求項1に記載の方法。
【請求項８】
前記チャート推奨リストから推奨されたチャートの選択を受信するステップと、
前記選択された推奨されたチャートの前記作成に関与する前記データテーブル内の複数のセルに対するインジケータの表示を引き起こすステップと、
をさらに備える、請求項1に記載の方法。
【請求項９】
前記データテーブル内のデータのサブセットの選択を受信するステップと、
前記選択されたデータのサブセットを表すために1つまたは複数の修正された推奨されたチャートを作成するステップと、
前記1つまたは複数の修正された推奨されたチャートのうちの少なくとも1つを含む第2のチャート推奨リストを生成するステップと、
をさらに備える、請求項1に記載の方法。
【請求項１０】
第1のチャート推奨リスト内の前記1つまたは複数のチャートのうちの少なくとも1つが、変換されたデータを表し、変換から生じた前記変換されたデータが前記データテーブル内の前記データに適用され、前記変換されたデータが前記データテーブルに描かれておらず、前記変換が集計、合計、または平均化のうちの少なくとも1つを含む、請求項1に記載の方法。
【請求項１１】
前記1つまたは複数の統計が、前記1つまたは複数の列の各々におけるいくつかの一意の値、前記1つまたは複数の列の各々におけるデータの分布、前記データテーブルのサイズ、前記1つまたは複数の列の各々におけるデータ値の平均、あるいは前記1つまたは複数の列の各々におけるデータの範囲のうちの少なくとも1つを含む、請求項1に記載の方法。
【請求項１２】
第3のチャートのタイプチャートに関連して、少なくとも第1のチャートおよび第2のチャートのチャートタイプに基づいて、より高いスコアを有する第2のチャートよりも顕著に表示されるべきより低いスコアを有する第1のチャートを選択することによって、前記チャート推奨リスト内の前記1つまたは複数のチャートを再配置するステップをさらに備える、請求項1に記載の方法。
【請求項１３】
クラウドベース環境に記憶された共同スプレッドシートのデータテーブル内に存在するデータを使用してチャート推奨リストを生成するためのシステムであって、
命令を記憶するメモリデバイスと、
前記メモリデバイスに結合された処理デバイスであって、
第1のユーザの第1のデバイスに表示されるべき前記共同スプレッドシートを提供することであって、前記共同スプレッドシートが、前記第1のユーザが前記共同スプレッドシートを前記第1のデバイス上で編集する間に、第2のユーザが前記共同スプレッドシートを第2のデバイス上で同時に編集することを可能にする許可を前記第2のユーザに与えることによって、前記第2のユーザと共有される、ことと、
セルの1つまたは複数の列および1つまたは複数のデータタイプを識別するために、前記データテーブルの前記セルを解析することと、
前記1つまたは複数の列についての1つまたは複数の統計を取得するために、前記1つまたは複数の列の統計分析を実行することと、
前記セルの前記1つまたは複数の列および前記1つまたは複数のデータタイプについての前記1つまたは複数の統計に基づいて、1つまたは複数の推奨されたチャートを作成することであって、前記1つまたは複数の推奨されたチャートの各々が、前記データテーブル内の前記データの少なくともサブセットを表す、ことと、
前記1つまたは複数の推奨されたチャートのうちの少なくとも1つを含むチャート推奨リストを生成することと、
を行うために前記命令を実行するための前記処理デバイスと
を備える、システム。
【請求項１４】
前記処理デバイスが、前記チャート推奨リストを提示するための第1の部分と、前記データテーブルを同時に提示するための第2の部分とを備えるユーザインターフェースをさらに提供する、請求項13に記載のシステム。
【請求項１５】
前記処理デバイスが、1つまたは複数のルールを前記データテーブルに適用することによって、前記1つまたは複数の推奨されたチャートを作成し、前記1つまたは複数のルールが、前記1つまたは複数の列のうちの少なくとも2つの列の間の関係を定義し、前記定義された関係が、視覚化のために指定された前記少なくとも2つの列の列ヘッダ間の関係、または前記少なくとも2つの列の値の間の相関関係のうちの少なくとも1つを含み、前記1つまたは複数のルールが、前記1つまたは複数の列に関する前記1つまたは複数の統計、前記セルの前記1つまたは複数のデータタイプ、または前記定義された関係のうちの少なくとも1つに基づいて、1つまたは複数のチャートタイプを決定する方法を定義する、請求項13に記載のシステム。
【請求項１６】
前記処理デバイスが、目標出力として1つまたは複数のチャートタイプを生成するようにトレーニングされた機械学習モデルへの入力として、前記セルの前記1つまたは複数の列および前記1つまたは複数のデータタイプに関する前記1つまたは複数の統計を適用することによって前記1つまたは複数の推奨されたチャートを作成し、前記1つまたは複数のチャートが、前記生成されたチャートタイプに基づいて作成される、請求項13に記載のシステム。
【請求項１７】
前記処理デバイスが、
前記セルの前記1つまたは複数の列および前記1つまたは複数のデータタイプに関する前記1つまたは複数の統計に基づいて、前記データテーブルからの前記データのサブセットを含む少なくとも第2のデータテーブルを作成することと、
それぞれが前記第2のデータテーブル内のデータの少なくともサブセットを表す1つまたは複数の追加の推奨されたチャートを作成することと、
前記1つまたは複数の追加の推奨されたチャートのうちの少なくとも1つを含む前記チャート推奨リストを生成することと、
をさらに行う、請求項13に記載のシステム。
【請求項１８】
クラウドベース環境に記憶された共同スプレッドシートのデータテーブル内に存在するデータを使用してチャート推奨リストを生成するための命令を記憶する1つまたは複数の有形のコンピュータ可読記録媒体であって、前記命令が、1つまたは複数の処理デバイスによって実行されると、前記1つまたは複数の処理デバイスに、
第1のユーザの第1のデバイスに表示されるべき前記共同スプレッドシートを提供することであって、前記共同スプレッドシートが、前記第1のユーザが前記共同スプレッドシートを前記第1のデバイス上で編集する間に、第2のユーザが前記共同スプレッドシートを第2のデバイス上で同時に編集することを可能にする許可を前記第2のユーザに与えることによって、前記第2のユーザと共有される、ことと、
セルの1つまたは複数の列および1つまたは複数のデータタイプを識別するために、前記データテーブルの前記セルを解析することと、
前記1つまたは複数の列についての1つまたは複数の統計を取得するために、前記1つまたは複数の列の統計分析を実行することと、
前記セルの前記1つまたは複数の列および前記1つまたは複数のデータタイプについての前記1つまたは複数の統計に基づいて、1つまたは複数の推奨されたチャートを作成することであって、前記1つまたは複数の推奨されたチャートの各々が、前記データテーブル内の前記データの少なくともサブセットを表す、ことと、
前記1つまたは複数の推奨されたチャートのうちの少なくとも1つを含むチャート推奨リストを生成することと、
を行わせる、コンピュータ可読記録媒体。
【請求項１９】
前記1つまたは複数の処理デバイスが、1つまたは複数のルールを前記データテーブルに適用することによって、前記1つまたは複数の推奨されたチャートを作成し、前記1つまたは複数のルールが、前記1つまたは複数の列のうちの少なくとも2つの列の間の関係を定義し、前記定義された関係が、視覚化のために指定された前記少なくとも2つの列の列ヘッダ間の関係、または前記少なくとも2つの列の値の間の相関関係のうちの少なくとも1つを含み、前記1つまたは複数のルールが、前記1つまたは複数の列に関する前記1つまたは複数の統計、前記セルの前記1つまたは複数のデータタイプ、または前記定義された関係のうちの少なくとも1つに基づいて、1つまたは複数のチャートタイプを決定する方法を定義する、請求項18に記載のコンピュータ可読記録媒体。
【請求項２０】
前記1つまたは複数の処理デバイスが、目標出力として1つまたは複数のチャートタイプを生成するようにトレーニングされた機械学習モデルへの入力として、前記セルの前記1つまたは複数の列および前記1つまたは複数のデータタイプに関する前記1つまたは複数の統計を適用することによって前記1つまたは複数の推奨されたチャートを作成し、前記1つまたは複数のチャートが、前記生成されたチャートタイプに基づいて作成される、請求項18に記載のコンピュータ可読記録媒体。
【国際調査報告】
2019537089.tif 000013
2019537089.tif 000014
2019537089.tif 000015