(57)【特許請求の範囲】
【請求項１】
コンピュータで実施される方法であって、
テキストの１つまたは複数の表示を含む、グラフィカルなスケッチを受け取ることであって、前記グラフィカルなスケッチは強調表示されたラインを含む、受け取ることと、
前記スケッチから、当該スケッチを受けとったときの前記コンピュータのロケーションに関する情報を含むクエリーを自動的に生成することであって、前記テキストを自動的に認識すること、および前記テキストを前記クエリー内に自動的に表すことを含む、生成すること、
前記クエリーを実行して、前記クエリーに応答した地図を識別することであって、前記コンピュータの前記ロケーションに基づいて地図領域を探し出すこと、ならびに、前記地図領域に対応する地図を返すことを含み、前記対応する地図は、前記強調表示されたラインに対応し、かつ当該ラインから導出されたルートを示す、識別すること
を含むコンピュータ実施方法。
【請求項２】
前記地図が、前記テキストを含まない、請求項１に記載の方法。
【請求項３】
前記スケッチが、前記地図の１つまたは複数のグラフィカル特徴の１つまたは複数のグラフィカル表示を含む、請求項１に記載の方法。
【請求項４】
前記クエリーを自動的に生成することが、前記スケッチの１つまたは複数のグラフィカル要素によって表されているアイテムのタイプを自動的に識別すること、およびアイテムの前記タイプの１つまたは複数のテキスト表示を前記クエリー内に含めることを含む、請求項１に記載の方法。
【請求項５】
アイテムの前記タイプを自動的に識別することが、前記１つまたは複数のグラフィカル要素に関してパターンマッチングを実行することを含む、請求項４に記載の方法。
【請求項６】
前記クエリーを自動的に生成することが、前記スケッチの１つまたは複数のグラフィカル要素に関してパターンマッチングを自動的に実行すること、および前記テキストの前記１つまたは複数のスケッチされた表示に関してテキスト認識を自動的に実行することを含む、請求項１に記載の方法。
【請求項７】
前記クエリーを実行することが、複数の地図を識別し、前記テキストが、前記複数の地図のうちのそれぞれの１つまたは複数の非テキスト特徴について記述し、前記方法が、
前記複数の地図を返すこと、
前記複数の地図のうちの１つまたは複数を選択するユーザ入力を受け取ること、および  前記複数の地図のうちの前記１つまたは複数を選択する前記ユーザ入力に応答して、前記複数の地図のうちの前記１つまたは複数をドキュメント内に挿入することを含む、請求項１に記載の方法。
【請求項８】
デジタルドキュメントを表示することをさらに含み、前記スケッチを受け取ることが、前記表示されたドキュメントにおいて前記スケッチを定義するユーザ入力を受け取ること
を含み、前記方法が、前記返された地図を前記ドキュメント内に入力することをさらに含む、請求項１に記載の方法。
【請求項９】
少なくとも１つのプロセッサと、
少なくとも１つのプロセッサによって実行されたときに、
テキストの１つまたは複数のスケッチされた表示を含むグラフィカルなスケッチを受け取ることであって、前記グラフィカルなスケッチは強調表示されたラインを含む、受け取ることと、
前記スケッチによって表されている地図を地図サービスが返すことを要求する要求を当該地図サービスに送信することであって、前記テキストを自動的に認識すること、および前記テキストを前記要求内に自動的に表すことを含み、前記要求はスケッチを受けとったときの前記少なくとも１つのプロセッサを有するコンピュータのロケーションに関する情報を含む、送信すること、
前記要求を実行して、前記要求に応答した地図を識別することであって、前記コンピュータの前記ロケーションに基づいて地図領域を探し出すこと、
前記スケッチにおいて表されている前記テキストによって記述されている１つまたは複数の非テキスト特徴を含む地図を、前記地図サービスから受け取ることであって、前記地図は前記強調表示されたラインに対応し、かつ当該ラインから導出されたルートを含む、受け取ること、および
前記地図領域に対応する地図を表示することを含む行為を少なくとも１つのプロセッサに実行させる命令が格納されているメモリと
を含むコンピュータシステム。
【請求項１０】
少なくとも１つのプロセッサによって実行されたときに、
コンピュータディスプレイ上でのフリーハンドのグラフィカルなスケッチを定義するユーザ入力を受け取ることであって、前記ユーザ入力が、前記スケッチを描くタッチ入力を含み、前記スケッチが、１つまたは複数のスケッチされたグラフィカル表示、およびテキストの１つまたは複数のスケッチされた表示を含む、受け取ることであって、前記スケッチされた表示は強調表示されたラインを含む、受け取ることと、
前記スケッチから、当該スケッチを受けとったときの前記少なくとも１つのプロセッサを有するコンピュータのロケーションに関する情報を含むクエリーを自動的に生成することであって、前記テキストを自動的に認識すること、および前記テキストを前記クエリー内に自動的に表すことを含み、前記１つまたは複数のグラフィカル表示にパターンマッチングを行うことをさらに含む、生成すること、
前記クエリーを実行して、前記クエリーに応答した地図を識別することであって、前記テキストが、前記地図の１つまたは複数の非テキスト特徴について記述し、前記地図が、前記テキストを含まず、前記スケッチの前記１つまたは複数のグラフィカル表示が、前記地図において示されている１つまたは複数のグラフィカル特徴の１つまたは複数のグラフィカル表示であり、前記コンピュータの前記ロケーションに基づいて地図領域を探し出す、識別すること、
前記クエリーに応答して前記地図領域に対応する地図を返すことであって、前記対応する地図は、前記強調表示されたラインに対応し、かつ当該ラインから導出されたルートを示す、返すことと、ならびに
前記地図が返されたことに応答して前記地図を前記コンピュータディスプレイ上に表示することを含む行為を少なくとも１つのプロセッサに実行させるコンピュータ実行可能命令が具体化されている１つまたは複数のコンピュータ可読ストレージメディア。
【発明の詳細な説明】
【背景技術】
【０００１】
[0001]  コンピュータユーザにとって、画像、地図、またはグラフなどのグラフィックスを入力することは、典型的には、所望のグラフィックスを探し出すまたは生成するために、標準的な方法で検索語などのテキストを入力すること、情報を参照すること、選択を行うこと、および場合によってはこれらの行為のうちの１つまたは複数を繰り返すことによって行われている。たとえば、テキストは、実際のキーボードまたは仮想キーボード（たとえば、タッチスクリーン上に表示されているキーボード）を用いて、さまざまなダイアログ、メニューなどの上で選択を行うことを伴って入力することができる。次いで、それらの選択を使用して、所望のグラフィックスを生成することおよび／または取り出すことが可能である。
【発明の概要】
【発明が解決しようとする課題】
【０００２】
[0002]  上述のテキストおよび選択の技術のみを使用してグラフィックスを入手することは、煩雑で限界がある可能性がある。これは、完全に機能する現実のキーボードを有していないことがあるタブレットコンピュータおよびモバイル電話などのいくつかのモバイルデバイスを使用している場合に特に当てはまり得る。所望のグラフィックスのスケッチを受け取って分析することは、コンピューティングデバイスにおいてそのようなグラフィックスを検索する際に役立つことがあるということがわかっている（もちろん、本明細書において説明されているようなスケッチを使用しても、ユーザが探している正確なグラフィックスをすべての状況においてユーザが得ることになるとは保証されないが）。たとえば、スケッチは、フリーハンドのスケッチであることが可能であり（それらは、完全にフリーハンドである場合、または部分的にフリーハンドである場合があり）、それらは、たとえば、スタイラスもしくは指を入力用に用いたタッチセンシティブスクリーン、および／またはその他の入力メカニズムを使用することによって、入力することができる。スケッチは、それらのスケッチを使用して入手されることになるグラフィックスに関する情報を伝達するために使用することができるテキストの表示（注釈）および／または純粋にグラフィカルな要素を含むことができる。スケッチを分析することができ、結果として得られる情報を使用して、所望のグラフィックスを入手することができる。
【課題を解決するための手段】
【０００３】
[0003]  一実施形態においては、本ツールおよび技術は、グラフィカルスケッチを受け取ること（そのようなスケッチをコンピューティングデバイスにおけるユーザ入力から受け取ること、またはそのようなスケッチを、そのスケッチがユーザ入力として提供された別のコンピューティング環境から受け取ることなど）を含むことができ、そのスケッチは、テキストの１つまたは複数の表示を含む。そのスケッチからクエリーを自動的に生成することができる。クエリーの生成は、テキストを自動的に認識すること、およびそのテキストをクエリー内に自動的に表すことを含むことができる。クエリーを実行して、そのクエリーに応答した画像を識別することができ、テキストは、その画像の１つまたは複数の非テキスト特徴について記述する。グラフィカルスケッチの受け取りなどに応答して、その画像を返すことができる。
【０００４】
[0004]  本ツールおよび技術の別の実施形態においては、テキストの１つまたは複数のスケッチされた表示を含むグラフィカルスケッチを受け取ることができる。要求を画像サービスに送信することができ、その要求は、スケッチによって表されている画像を画像サービスが返すことを要求する。画像を画像サービスから受け取ることができ、その画像は、スケッチにおいて表されているテキストによって記述されている１つまたは複数の非テキスト特徴を含む。加えて、その画像を表示することができる。
【０００５】
[0005]  この「発明の概要」は、コンセプトのうちの抜粋したものを、簡略化された形式で紹介するために提供されている。それらのコンセプトは、以降の「発明を実施するための形態」においてさらに説明されている。この「発明の概要」は、特許請求される主題の鍵となる特徴または必要不可欠な特徴を特定することを意図されておらず、特許請求される主題の範囲を限定するために使用されることも意図されていない。同様に、本発明は、「背景技術」、「発明を実施するための形態」、または添付の図面において論じられている特定の技術、ツール、環境、不利な点、または利点に対処する実施態様に限定されるものではない。
【図面の簡単な説明】
【０００６】
【図１】[0006]説明されている実施形態のうちの１つまたは複数を実施することができる適切なコンピューティング環境のブロック図である。
【図２】[0007]スケッチベースのグラフィックス取り出しシステムの概略図である。
【図３】[0008]スケッチを表示しているユーザデバイスを示す図である。
【図４】[0009]図３のスケッチを使用して取り出された画像を表示している図３のユーザデバイスを示す図である。
【図５】[0010]図３のスケッチを使用して取り出された選択された画像を表示している図３のユーザデバイスを示す図である。
【図６】[0011]別のスケッチを表示している図３のユーザデバイスを示す図である。
【図７】[0012]図６のスケッチを使用して取り出された地図および道案内を表示している図６のユーザデバイスを示す図である。
【図８】[0013]別のスケッチを表示している図３のユーザデバイスを示す図である。
【図９】[0014]図８のスケッチを使用して取り出されたグラフを表示している図８のユーザデバイスを示す図である。
【図１０】[0015]スケッチベースのグラフィックス取り出し技術のフローチャートである。
【図１１】[0016]別のスケッチベースのグラフィックス取り出し技術のフローチャートである。
【図１２】[0017]さらに別のスケッチベースのグラフィックス取り出し技術のフローチャートである。
【図１３】[0018]さらに別のスケッチベースのグラフィックス取り出し技術のフローチャートである。
【図１４】[0019]さらに別のスケッチベースのグラフィックス取り出し技術のフローチャートである。
【図１５】[0020]さらに別のスケッチベースのグラフィックス取り出し技術のフローチャートである。
【図１６】[0021]さらに別のスケッチベースのグラフィックス取り出し技術のフローチャートである。
【図１７】[0022]さらに別のスケッチベースのグラフィックス取り出し技術のフローチャートである。
【図１８】[0023]さらに別のスケッチベースのグラフィックス取り出し技術のフローチャートである。
【発明を実施するための形態】
【０００７】
[0024]  本明細書において説明されている実施形態は、改善されたスケッチベースのグラフィックス取り出し（すなわち、スケッチからの情報を使用してグラフィックスを生成することおよび／または取り出すこと）のための技術およびツールを対象としている。そのような改善は、さまざまな技術およびツールを個別にまたは組み合わせて使用する結果として生じることが可能である。
【０００８】
[0025]  そのような技術およびツールは、スケッチを受け取ること、およびそのスケッチを使用して、画像、グラフ、または地図などの１つまたは複数のグラフィックスを入手することを含むことができる。スケッチは、グラフィカル要素と、テキストの表示とを含むことができ、それらは両方とも、グラフィックスを取り出す際に使用することができる。たとえば、そのようなスケッチを使用して、画像に関するクエリーを自動的に生成することができる。そのクエリーを画像サービスに送信することができ、画像サービスは、グラフィカル要素のうちの１つまたは複数を反映する画像を返すことができ、その画像は、たとえテキストそのものを含んでいないとしても、テキストによって示されているグラフィカル要素を有している。たとえば、スケッチは、シカの大まかなフリーハンドのスケッチである場合があり、「シカ」というテキストの表示を有する（フリーハンドでスケッチされているテキスト、または打ち込まれたテキストとして入力されているテキストを伴ってなど）場合がある。そのようなスケッチを使用して、「シカ」という用語に関連付けられているメタデータタグを有していて、かつそのスケッチに類似したグラフィカル特徴を有している画像に関するクエリーを構築することができる。たとえば、シカのスケッチが側面図である場合には、クエリーは、側面図が要求されているということを示すことができ、検索されている画像に関する検索インデックス等などのメタデータタグは、その画像が側面図であるか、正面図であるか、後面斜視図であるか、正面斜視図であるか、といったことを示すことができる。代替として、検索結果を返すことができ、次いでそれらの検索結果をスケッチの特徴と比較して、返された画像がそれぞれスケッチとどの程度よく相関しているかを特定することができる。
【０００９】
[0026]  別の例として、受け取られるスケッチは、地図のスケッチである場合がある。たとえば、そのスケッチは、ストリートを表すライン、ランドマークのスケッチされたグラフィックス、ストリート名を表すテキスト、ランドマーク表すテキストなどを示すことがある。そのスケッチは、２つのロケーションの間における強調表示されたルートを含む場合もある。そのスケッチを使用して、地図を取り出すことができる。たとえば、そのスケッチを要求内に含めて地図サービスにサブミットすることができる。地図サービスは、そのスケッチを地図領域にマッチさせるために、パターンマッチング技術を実行することによってなど、そのスケッチのグラフィックスおよびテキストの表示を分析することができる。これは、地図サービスによって作成された地図によって表されている地理的なロケーションと、スケッチされたランドマーク表示（特定の建物、湖などの描画）をマッチさせること、ストリートをマッチさせること（これは、スケッチにおいて提供されているストリートの名前を表すストリート名をマッチさせることを含むことができる）などを含むことができる。次いで地図サービスは、スケッチにおいて示されている特徴に対する高い相関関係を有する地図領域を示す地図を返すことができる。その地図は、スケッチにおいて表されているランドマークを、たとえそのようなランドマークが通常はそのような地図において示されていなくても、示すことができる。たとえば、スケッチが、ＢｒｏａｄｗａｙとＭａｉｎとの角にある「Ｊｏｅ’ｓ  Ｔａｃｏ  Ｓｈｏｐ」を示している場合には、たとえマッピングサービスが、同じ領域の一般的な地図上にその会社をランドマークとして示さないことが典型的であるとしても、Ｊｏｅ’ｓ  Ｔａｃｏ  Ｓｈｏｐを表すランドマークを示すことができる。地図サービスは、自分がスケッチから受け取る情報に基づいて自分の詳細さのレベルを改善することができる。たとえば、地図サービスは、自分のメイン地図上のレイヤ内になど、自分のデータに「Ｊｏｅ’ｓ  Ｔａｃｏ  Ｓｈｏｐ」を加えることができる。そして、この新たな情報を、その後のクエリーに応答する際に使用して、場合によっては、地図領域およびロケーションを識別する上で役立てること、および／または地図サービスがその後のクエリーに応答するときにさらなるコンテンツを提供することが可能である。返された地図は、スケッチにおいて表されていたルートを示すこともできる。加えて、その地図は、そのルートに近づくほど、より多くの詳細を、およびそのルートから遠ざかるほど、より少ない詳細を含むことができる。より多くの詳細およびより少ない詳細というこの特徴は、ルートを示す地図において、たとえその地図がスケッチに応答して返されていなくても、役立つ場合があるということに留意されたい。また、返される地図に加えて、（たとえば、道案内のリストを提供することによって、および／または道案内を発音させることによって）道案内を返して提示することもできる。
【００１０】
[0027]  さらに別の例として、グラフのスケッチを提供することができる。たとえば、そのようなスケッチは、グラフィカルなグラフ特徴（軸、棒グラフを表す棒、列グラフを表す列、折れ線グラフを表す線、円グラフを表す円セクションなど）、ラベル、付記、強調表示、タイトル、数値等などのグラフ特徴のスケッチされた表示を含むことができる。そのようなスケッチからグラフを生成することができる。加えて、グラフの基礎をなすデータセットをスケッチから生成することもできる。グラフは、スケッチ上に表されているグラフ特徴を含むことができる。加えて、データセットは、グラフの特徴と整合しているデータのセットであることが可能である。たとえば、データセット内のいくつかの値は、スケッチ内のテキスト表示において表されている値であることが可能である。その他の値は、スケッチから導出される新たな値であることが可能である。たとえば、スケッチ上のテキスト表示からの値、相対的なサイズ、および／またはスケッチ上のグラフィカル特徴のロケーションなどを使用して、内挿技術および／または外挿技術を用いて値を導出することができる。グラフおよびデータセットは、スプレッドシートアプリケーションユーザインターフェース内などに表示することができる。また、表示されるグラフおよびデータセットは、インタラクティブであることが可能であり、それらは、リンクされていることが可能である。たとえば、データセットに対して変更を行うためにユーザ入力を提供することができ、また、そのような変更をグラフに対して自動的に（場合によっては、データセットをマッチさせるためにグラフを更新するためのユーザによる確認の後に）行うことができる。加えて、変更をグラフ上にスケッチすることができる。たとえば、さらなる付記をグラフに加えるために、グラフ上にスケッチを提供することができる。
【００１１】
[0028]  理解できるであろうが、画像、地図、およびグラフなどのグラフィックスを生み出すためにユーザ入力を提供することをより便利にすることなど、１つまたは複数の多大な利点を、本明細書において説明されているツールおよび技術から実現することができる。しかしながら、添付の特許請求の範囲において定義されている主題は、本明細書において説明されている利点に必ずしも限定されるものではない。本発明の特定の実施態様は、本明細書において説明されている利点のうち、すべてを提供すること、いくつかを提供すること、またはいずれも提供しないことが可能である。本明細書においては、さまざまな技術に関するオペレーションどうしが、提示の便宜上、特定の連続した順序で説明されているが、この様式の説明は、特定の順序が必要とされない限り、オペレーションどうしの順序における並べ替えを含むということを理解されたい。たとえば、連続して説明されているオペレーションどうしは、いくつかのケースにおいては、並べ替えること、または同時に実行することが可能である。その上、説明を簡潔にするために、フローチャートは、特定の技術をその他の技術と組み合わせて使用することができるさまざまなやり方を示していない場合がある。
【００１２】
[0029]  本明細書において説明されている技術は、本明細書において説明されているシステムのうちの１つもしくは複数とともに、および／または１つもしくは複数のその他のシステムとともに使用することができる。たとえば、本明細書において説明されているさまざまな手順は、ハードウェア、またはソフトウェア、またはそれら両方の組合せを用いて実施することができる。たとえば、本明細書において説明されている技術のうちの１つまたは複数の少なくとも一部分を実施するために、専用のハードウェアロジックコンポーネントを構築することができる。限定ではなく、例として、そのようなハードウェアロジックコンポーネントとしては、フィールドプログラマブルゲートアレイ（FPGA）、プログラム固有集積回路（ASIC）、プログラム固有標準製品（ASSP）、システムオンアチップシステム（SOC）、結合プログラム可能論理回路（CPLD）などを含むことができる。さまざまな実施形態の装置およびシステムを含むことができるアプリケーションは、さまざまな電子システムおよびコンピュータシステムを広く含むことができる。モジュールどうしの間において、およびモジュールどうしを通じて通信することができる関連したコントロール信号およびデータ信号とともに複数の特定の相互接続されたハードウェアモジュールもしくはデバイスを使用して、または特定用途向け集積回路の一部として、技術を実施することができる。加えて、本明細書において説明されている技術は、コンピュータシステムによって実行可能なソフトウェアプログラムによって実施することができる。一例として、実施態様は、分散処理、コンポーネント／オブジェクト分散処理、および並列処理を含むことができる。その上、本明細書において説明されている技術または機能のうちの１つまたは複数を実施するための仮想コンピュータシステム処理を構築することができる。
【００１３】
Ｉ．例示的なコンピューティング環境
[0030]  図１は、説明されている実施形態のうちの１つまたは複数を実施することができる適切なコンピューティング環境（１００）の一般化された例を示している。たとえば、１つまたは複数のそのようなコンピューティング環境は、スケッチ入力環境および／またはグラフィックスサービス環境として使用することができる。一般に、さまざまな異なる汎用または専用のコンピューティングシステム構成を使用することができる。本明細書において説明されているツールおよび技術とともに使用するのに適している可能性のあるよく知られているコンピューティングシステム構成の例は、サーバファームおよびサーバクラスタ、パーソナルコンピュータ、サーバコンピュータ、スマートフォン、ラップトップデバイス、スレートデバイス、ゲームコンソール、マルチプロセッサシステム、マイクロプロセッサベースのシステム、プログラム可能な家庭用電化製品、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータ、上記のシステムまたはデバイスのうちのいずれかを含む分散コンピューティング環境などを含むが、それらには限定されない。
【００１４】
[0031]  コンピューティング環境（１００）は、本発明の使用または機能の範囲に関して何らかの限定を提示することを意図されているものではない。なぜなら、本発明は、多様な汎用または専用のコンピューティング環境において実施することができるためである。
【００１５】
[0032]  図１を参照すると、コンピューティング環境（１００）は、少なくとも１つの処理ユニットまたはプロセッサ（１１０）と、メモリ（１２０）とを含む。図１においては、この最も基本的な構成（１３０）は、破線内に含まれている。処理ユニット（１１０）は、コンピュータ実行可能命令を実行し、実際のまたは仮想のプロセッサであることが可能である。マルチプロセッシングシステムにおいては、処理能力を高めるために、複数の処理ユニットが、コンピュータ実行可能命令を実行する。メモリ（１２０）は、揮発性メモリ（たとえば、レジスタ、キャッシュ、ＲＡＭ）、不揮発性メモリ（たとえば、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリ）、またはそれら２つの何らかの組合せであることが可能である。メモリ（１２０）は、スケッチベースのグラフィックス取り出しを実施するソフトウェア（１８０）を格納する。スケッチベースのグラフィックス取り出しの一実施態様は、プロセッサ（１１０）およびメモリ（１２０）のアクティビティーのうちのすべてまたは一部が、ソフトウェア（１８０）の代替として、またはソフトウェア（１８０）に加えてハードウェアロジックにおいて具体化されることを伴うことができる。
【００１６】
[0033]  図１のさまざまなブロックは、明確にするために実線で示されているが、実際には、さまざまなコンポーネントを線引きすることは、さほど明確ではなく、比喩的に言えば、図１および以降で論じられているその他の図の実線は、より正確にはグレーで不鮮明なものになる。たとえば、ディスプレイデバイスなどの提示コンポーネントを、（たとえば、そのディスプレイデバイスがタッチスクリーンを含む場合には）Ｉ／Ｏコンポーネントであるとみなすことができる。また、プロセッサは、メモリを有する。本発明の発明者らは、そのようなことが当技術分野の性質であるということを認識しており、図１の図解は、本発明の１つまたは複数の実施形態に関連して使用することができる例示的なコンピューティングデバイスを例示しているにすぎないということを繰り返し申し述べる。「ワークステーション」、「サーバ」、「ラップトップ」、「ハンドヘルドデバイス」等などのカテゴリーどうしの間における区別は行われない。なぜなら、それらはすべて、図１、および「コンピュータ」、「コンピューティング環境」、または「コンピューティングデバイス」への言及の範囲内と考えられるためである。
【００１７】
[0034]  コンピューティング環境（１００）は、さらなる特徴を有することができる。図１においては、コンピューティング環境（１００）は、ストレージ（１４０）、１つまたは複数の入力デバイス（１５０）、１つまたは複数の出力デバイス（１６０）、および１つまたは複数の通信接続（１７０）を含む。バス、コントローラ、またはネットワークなどの相互接続メカニズム（図示せず）が、コンピューティング環境（１００）のコンポーネントどうしを相互接続する。典型的には、オペレーティングシステムソフトウェア（図示せず）が、コンピューティング環境（１００）において実行されるその他のソフトウェアのためのオペレーティング環境を提供し、コンピューティング環境（１００）のコンポーネントどうしのアクティビティーをコーディネートする。
【００１８】
[0035]  ストレージ（１４０）は、取り外し可能または取り外し不能とすることができ、フラッシュドライブ、磁気ディスク、磁気テープもしくはカセット、ＣＤ−ＲＯＭ、ＣＤ−ＲＷ、ＤＶＤ、または、情報を格納するために使用することが可能な、およびコンピューティング環境（１００）内でアクセスすることが可能なその他の任意のメディア等のコンピュータ可読ストレージメディアを含むことができる。ストレージ（１４０）は、ソフトウェア（１８０）のための命令を格納する。
【００１９】
[0036]  入力デバイス（１５０）は、さまざまな異なる入力デバイスのうちの１つまたは複数であることが可能である。たとえば、入力デバイス（１５０）は、マウス、キーボード、トラックボール等などのユーザデバイスを含むことができる。入力デバイス（１５０）は、話声認識、タッチおよびスタイラス認識、入力デバイス（１５０）と接触しての、および入力デバイス（１５０）の付近でのジェスチャーの認識、エアジェスチャーの認識、ヘッドトラッキングおよびアイトラッキング、音声および話声認識、ユーザの脳の活動を感知すること（たとえば、ＥＥＧおよび関連した方法を使用すること）、ならびにマシンインテリジェンス（たとえば、ユーザの意図および目的を理解するためにマシンインテリジェンスを使用すること）など、１つまたは複数のナチュラルユーザインターフェース技術を実施することができる。その他の例としては、入力デバイス（１５０）は、スキャニングデバイス、ネットワークアダプタ、ＣＤ／ＤＶＤリーダ、または、コンピューティング環境（１００）に入力を提供する別のデバイスを含むことができる。出力デバイス（１６０）は、ディスプレイ、プリンタ、スピーカー、ＣＤ／ＤＶＤライタ、ネットワークアダプタ、または、コンピューティング環境（１００）からの出力を提供する別のデバイスであることが可能である。入力デバイス（１５０）および出力デバイス（１６０）は、タッチスクリーンまたは仮想現実システムなど、単一のシステムまたはデバイス内に組み込むことができる。
【００２０】
[0037]  通信接続（１７０）は、通信メディアを介した別のコンピューティングエンティティーへの通信を可能にする。加えて、コンピューティング環境（１００）のコンポーネントの機能は、単一のコンピューティングマシンにおいて、または通信接続を介して通信することができる複数のコンピューティングマシンにおいて実施することができる。したがって、コンピューティング環境（１００）は、ハンドヘルドコンピューティングデバイス、パーソナルコンピュータ、サーバ、ルータ、ネットワークＰＣ、ピアデバイス、または別の一般的なネットワークノードなど、１つまたは複数のリモートコンピューティングデバイスへの論理接続を使用して、ネットワーク化された環境において機能することができる。通信メディアは、データまたはコンピュータ実行可能命令もしくは要求などの情報を、変調されたデータ信号で搬送する。変調されたデータ信号とは、その信号の特性のうちの１つまたは複数が、その信号内で情報をエンコードするような様式で設定または変更されている信号である。限定ではなく、例として、通信メディアは、電気キャリア、光キャリア、ＲＦキャリア、赤外線キャリア、音響キャリア、またはその他のキャリアを用いて実施される有線またはワイヤレスの技術を含む。
【００２１】
[0038]  本ツールおよび技術については、ストレージメディアまたは通信メディアであることが可能であるコンピュータ可読メディアという一般的なコンテキストにおいて説明することができる。コンピュータ可読ストレージメディアは、コンピューティング環境内でアクセスすることができる任意の利用可能なストレージメディアであるが、コンピュータ可読ストレージメディアという用語は、伝搬される信号自体を意味しない。限定ではなく、例として、コンピューティング環境（１００）については、コンピュータ可読ストレージメディアは、メモリ（１２０）、ストレージ（１４０）、およびそれらの組合せを含む。
【００２２】
[0039]  本ツールおよび技術については、ターゲットである実際のまたは仮想のプロセッサ上のコンピューティング環境において実行されるプログラムモジュール内に含まれているコンピュータ実行可能命令などのコンピュータ実行可能命令という一般的なコンテキストにおいて説明することができる。一般に、プログラムモジュールは、特定のタスクを実行するかまたは特定の抽象データ型を実施するルーチン、プログラム、ライブラリ、オブジェクト、クラス、コンポーネント、データ構造などを含む。プログラムモジュールどうしの機能は、さまざまな実施形態において要望に応じてプログラムモジュールどうしの間において結合または分割することができる。プログラムモジュールのためのコンピュータ実行可能命令は、ローカルのまたは分散されたコンピューティング環境内で実行することができる。分散コンピューティング環境においては、プログラムモジュールは、ローカルおよびリモートの両方のコンピュータストレージメディア内に配置することができる。
【００２３】
[0040]  提示の目的で、詳細な説明は、コンピューティング環境におけるコンピュータオペレーションを記述するために、「特定する」、「受け取る」、「送信する」、「生成する」、および「表示する」といった用語を使用している。これらおよびその他の類似の用語は、コンピュータによって実行されるオペレーションを表すハイレベルな抽象概念であり、人間（「ユーザ」など）による行為の実行が明示的に言及されていない限り、人間によって実行される行為と混同されるべきではない。これらの用語に対応する実際のコンピュータオペレーションは、実施態様に応じてさまざまである。
【００２４】
ＩＩ．スケッチベースのグラフィックス取り出しシステムおよび環境
[0041]  図２は、スケッチベースのグラフィックス取り出しシステム（２００）の概略図であり、そのスケッチベースのグラフィックス取り出しシステム（２００）に関連して、説明されている実施形態のうちの１つまたは複数を実施することができる。システム（２００）は、スケッチ入力環境（２１０）およびグラフィックスサービス環境（２２０）を含むことができる。
【００２５】
[0042]  スケッチ入力環境（２１０）は、スケッチ受け取りコンポーネント（２３０）を含むことができ、スケッチ受け取りコンポーネント（２３０）は、スケッチを受け取ることができる。たとえば、スケッチ受け取りコンポーネント（２３０）は、スケッチを定義するユーザ入力を受け取るための１つまたは複数の入力デバイス（タッチスクリーンなど）、ならびにその入力を処理してスケッチを使用可能な形式にフォーマットするためのソフトウェアおよび／またはハードウェアコンポーネントを含むことができる。たとえば、スケッチ受け取りコンポーネント（２３０）は、グラフィックスフォーマット（たとえば、ビットマップイメージ、ＪＰＥＧイメージなど）でのグラフィックスファイルの形式でスケッチ（２４２）を作成することができる。スケッチ受け取りコンポーネント（２３０）は、スケッチ（２４２）をグラフィックス要求コンポーネント（２４０）へ送信することができる。グラフィックス要求コンポーネント（２４０）は、スケッチ（２４２）を使用して、グラフィックスサービス環境（２２０）においてホストすることができるグラフィックスサービス（２５０）（たとえば、画像サービス、グラフサービス、および／または地図サービス）へ送信することができる要求（２４４）（たとえば、グラフィックスサービスクエリー）を作成することができる。たとえば、グラフィックス要求コンポーネント（２４０）は、スケッチ（２４２）を分析して、グラフィックスクエリー（グラフィックスサービス（２５０）を求める命令を含むことができる）を作成することができ、要求（２４４）は、そのグラフィックスクエリーを含むことができる。あるいは、グラフィックス要求コンポーネント（２４０）は、スケッチ（２４２）を分析しないことが可能であり、その一方で、スケッチ（２４２）を要求（２４４）内に含めることができ、それによって、グラフィックスサービス（２５０）がスケッチ（２４２）を分析することができる。さらに別の選択肢として、グラフィックス要求コンポーネント（２４０）は、スケッチを分析してクエリーを作成することができ、スケッチおよびクエリーを、グラフィックスサービスに対する要求（２４４）内に含めることができる。
【００２６】
[0043]  グラフィックスサービスは、要求（２４４）を分析して、グラフィックス応答（２５２）を選択および／または生成することができる。グラフィックス応答（２５２）は、要求されているグラフィックスを含むことができる。グラフィックス応答（２５２）は、単一のグラフィックスおよび／または複数のグラフィックスを含むことができる。たとえば、要求（２４４）が、スケッチ（２４２）によって示されている画像を求める要求である場合には、グラフィックス応答（２５２）は、複数の画像を含むことができ、スケッチ入力環境（２１０）においてユーザ入力が提供されて、それらの画像のうちの１つまたは複数を選択することが可能である。別の例として、要求（２４４）は、スケッチ（２４２）によって示されているグラフを求める要求である場合があり、グラフィックス応答（２５２）は、スケッチ（２４２）から生成された単一のグラフを含むことができる。その例においては、グラフィックス応答（２５２）は、生成されたグラフの基礎をなすデータセットなど、その他の関連した情報を含むこともできる。
【００２７】
[0044]  あるいは、スケッチベースのグラフィックス取り出しシステム（２００）のサービス／コンポーネントは、図２の例において示されているものとは異なってアレンジすることができる。たとえば、グラフィックスサービス（２５０）のすべてまたは一部が、スケッチ入力環境（２１０）内に存在することが可能である。たとえば、スケッチ入力環境（２１０）は、タブレットコンピュータであることが可能であり、そのタブレットコンピュータは、本明細書において論じられているすべてのスケッチ受け取りおよびグラフィックスサービスアクションを実行することができる。あるいは、グラフィックスサービス（２５０）は、リモートウェブサービスなど、スケッチ入力環境（２１０）からリモートにあるサービスであることが可能である。
【００２８】
ＩＩＩ．スケッチからのグラフィックスの例
[0045]  次いで図３〜図９における例示的なユーザインターフェース表示を参照しながら、スケッチからグラフィックスを生成することおよび／または取り出すことの例について論じる。そのようなユーザインターフェース表示は、１つまたは複数のオフィス生産性アプリケーションユーザインターフェース（スプレッドシートアプリケーション、ワードプロセッシングアプリケーション、スライドプレゼンテーションアプリケーションなど）、ウェブブラウザインターフェース、専用の「スケッチからグラフィックスへ」のアプリケーションインターフェース、一般的なオペレーティングシステムインターフェース等の一部など、さまざまな異なるユーザインターフェース環境内にあることが可能である。示されているユーザインターフェースは、論じられている「スケッチからグラフィックスへ」の機能を選択するユーザ入力によって先導することができる。たとえば、ユーザは、「スケッチから画像へ」を求めるユーザインターフェースコントロールを選択し、次いで、対応する画像を入手する際に使用されることになるスケッチを入力することができる。別の例として、ユーザは、スケッチを入力し、次いで「スケッチから画像へ」、「スケッチから地図へ」、または「スケッチからグラフへ」などのさまざまなオプションのうちの１つを選択することができる。さらに別の例として、ユーザは、スケッチを入力し、次いで「スケッチからグラフィックスへ」の機能を一般的に選択することができ、スケッチを分析すること、およびそれが、グラフを表すスケッチであるか、画像を表すスケッチであるか、地図を表すスケッチであるかなどを特定することをコンピューティングデバイスに依存することができる。また、これらのカテゴリー（グラフ、画像、地図）は排他的ではないことが可能であるということに留意されたい。たとえば、「スケッチから画像へ」の機能は、地図の形式である画像、またはグラフの形式である画像を返すことができる。
【００２９】
Ａ．スケッチからの画像の例
[0046]  次いで図３を参照しながら、スケッチからの画像の一例について論じる。図３は、タブレットコンピュータまたはモバイル電話などのユーザデバイス（３１０）を示している。このユーザデバイスは、タッチスクリーンなどのディスプレイ（３２０）を含むことができる。ディスプレイ（３２０）は、スケッチ（３３０）を表示することができ、スケッチ（３３０）は、ユーザ入力によって入力することができる。たとえば、ユーザが、スタイラスまたは指を使用して、そのスケッチをフリーハンドでディスプレイ（３２０）上に描いた可能性がある。そのスケッチは、非テキストグラフィカル要素または特徴（３３４）を含む。スケッチ（３３０）はまた、「Ｓｅｒｖｅｒ」という言葉を形成しているテキストのスケッチされた表示（３３６）を含む。このディスプレイは、「スケッチから画像へ」の機能を呼び出すためにユーザ入力によって選択することができるユーザインターフェースコントロール（３４０）を表示することもできる。
【００３０】
[0047]  「スケッチから画像へ」の機能が呼び出された場合には、処理用にスケッチ（３３０）を受け取ることができ、そのスケッチ（３３０）からクエリーを自動的に生成することができる。たとえば、テキスト認識ルーチンが、表示（３３６）など、手書きされたまたは（スケッチ（３３０）の一部がフリーハンドではない場合には）打ち込まれたテキストの表示を認識するためにパターンマッチングを実行することができる。加えて、パターンマッチングルーチンが、サーバコンピュータを表すグラフィカル要素または特徴（３３４）などの非テキストグラフィカル要素または特徴を分析することができる。したがって、サーバコンピュータの画像を求めるクエリーを自動的に生成することができる。加えて、そのクエリーは、さまざまな画像と、スケッチからの提供されたグラフィカル特徴（たとえば、色、向き等などのグラフィカル特徴）との間における類似度を比較するグラフィカルパターンマッチングルーチンを使用して、非テキストグラフィカル特徴にマッチする画像を検索することができる。たとえば、さまざまなタイプのアイテムのライブラリを組み立てることができる。たとえば、これは、画像の既存のデータベースから情報を抽出すること、およびアイテムのタイプを表す特定のタグを伴う、画像内に示されているアイテムからのパターンを形成するためにグラフィカル特徴を使用することによって行うことができる。１つまたは複数の検索ランキング特徴、たとえば、グラフィカル特徴の類似度、スケッチから導出されたテキストへの画像タグのマッチ度、画像の人気度などを使用して、画像を採点することができる。このパターンマッチングおよびクエリーは、デバイス（３１０）上でローカルに、および／またはグラフィックスサービス環境においてリモートで実行することができる。たとえば、クエリーは、画像のイメージ検索を実行するウェブサービス上で実行することができる。
【００３１】
[0048]  「スケッチから画像へ」の機能は、単一の画像のみを返すことができる。あるいは、複数の画像（４５０）を返して、所望の画像を選択するためのユーザ入力が提供されることを可能にすることができる。別の例として、複数の返される画像をグループで提供して、画像化された特定のタイプのもののグループなどのグループをユーザ入力が選択することを可能にすることができる。たとえば、スケッチは、サーバコンピュータを表す画像のセット、およびレストランの給仕人を表す画像の別のセットを返すことができる。ユーザが、サーバコンピュータを表す画像を選択した場合には、サーバコンピュータの画像（サーバコンピュータとしてタグ付けされている画像）をディスプレイ（３２０）上に示すことができる。図４において示されているように、複数の画像（４５０）は、サーバコンピュータの２つの画像を含む。図４において示されている画像（４５０）は、線画である。しかしながら、画像は、デジタル写真、写真ではないカラーイラスト、またはその他の画像であることが可能である。それらの画像のうちの１つを選択するためのユーザ入力を提供することができる。そうすると、図５において示されているように、ディスプレイ（３２０）においてスケッチ（３３０）が、選択された画像（５５０）に置き換えられるという結果につながることが可能である。
【００３２】
[0049]  いくつかの状況においては、入力されたスケッチ（３３０）にマッチすることができる画像が見つからない場合がある。そうである場合には、画像が見つからなかったということを示す通知をディスプレイ（３２０）上に表すことができる。その他の状況においては、検索におけるあいまいさを解消するために、さらなるユーザ入力を要求することができる。たとえば、スケッチが、円と、その円の中心から外側へ延びる２つの放射状の直線とを示していた場合には、さまざまなアイテム（腕時計、掛け時計、円グラフ、本物のパイなど）のうちのどれをそのスケッチによって意図していたかをユーザに尋ねるプロンプトを出すことができる。そのような入力を受け取ると、適切なアイテム（たとえば、腕時計が選択された場合には、腕時計の１つまたは複数の画像）を表示することができる。本明細書において論じられている「スケッチから地図へ」および「スケッチからグラフへ」の機能についても、同様の技術を使用することができる。
【００３３】
Ｂ．スケッチからの地図の例
[0050]  次いで図６を参照しながら、スケッチからの地図の一例について論じる。図６は、地図スケッチ（６３０）を示しているディスプレイ（３２０）を伴うユーザデバイス（３１０）を示している。地図スケッチ（６３０）は、非テキストグラフィカル要素または特徴（６３４）およびテキスト表示（６３６）を含む。非テキストグラフィカル特徴（６３４）は、地図上のストリートを表すラインと、湖岸線を表すライン（６４０）と、湖水を表すいくつかのぞんざいに書かれたライン（６４２）と、強調表示されたルートに関する始点および終点を表す矢印インジケータ（６４４）とを含む。グラフィカル特徴（６３４）に関して、それらのグラフィカル特徴のプロパティーを示すために色を使用することができる。たとえば、ぞんざいに書かれたライン（６４２）が地図スケッチ（６３０）上の水域を表すということを示すために、ぞんざいに書かれたライン（６４２）を青色に塗ることができる。加えて、ルートを強調表示するために、より太いライン（６４６）、および／または別々の色のラインなどを使用することができる。
【００３４】
[0051]  テキスト表示（６３６）は、ストリートの名前を含むことができ、それらの名前は、短縮された名前であることが可能であり、また、ストリート名の一部（たとえば、４２ｎｄ  Ｓｔｒｅｅｔを表す「４２ｎｄ」、Ｉｎｔｅｒｓｔａｔｅ  ４０５を表す「４０５」など）を含むだけであることも可能である。テキスト表示（６３６）は、ランドマークの名前、たとえば、事業拠点を表す企業の名前、建物の名前、自然の地理的特徴の名前（地図スケッチ（６３０）における「Ｌａｋｅ  ＷＡ」等）などを含むこともできる。加えて、ルートの「始点」および「終点」を示すためのテキスト表示（６３６）を、強調表示されたライン（６４６）によって示すことができるそのルートの始点および終点を指すグラフィカルな矢印（６４４）とともに使用することができる。あるいは、ルートの始点および終点は、×、○等を用いてなど、その他の方法で示すことができる。
【００３５】
[0052]  ディスプレイ（３２０）は、「スケッチから地図へ」の機能を呼び出すために選択することができるユーザインターフェースコントロール（６５０）を表示することもできる。ユーザインターフェースコントロール（６５０）を選択すると、スケッチ（６３０）が受け取られて分析されて、そのスケッチから地図サービスクエリーが作成されるという結果につながることが可能である。たとえば、（パターン認識技術を用いたテキスト認識およびグラフィカル特徴認識を使用することなどによって）スケッチ（６３０）のグラフィカル特徴（６３４）およびテキスト表示（６３６）を識別して、地図領域を探し出すために検索することができるストリート名、ランドマークなどを示すことができる。ユーザデバイス（３１０）のグローバルポジショニングシステムコンポーネントによって示されるものとしての、ユーザデバイス（３１０）の現在のロケーションなど、その他の情報を使用することもできる。スケッチ（６３０）の例においては、たとえば、地図クエリーは、「４０ｔｈ」という語を伴うストリートが、「１５６ｔｈ」という語を伴うストリートと交差するエリアを検索することができる。地図クエリーは、「４０ｔｈ」という語を伴うストリートとほぼ平行である「４２ｎｄ」という語を伴うストリートが、「１５６ｔｈ」という語を伴うストリートとほぼ平行である「９２ｎｄ」という語を伴うストリートと交差するエリアを検索することもできる。地図クエリーは、「９２ｎｄ」という語を伴うストリートと、「１５６ｔｈ」という語を伴うストリートとの間にある「４０５」という語を伴うストリートを検索することもできる。加えて、地図クエリーは、「９２ｎｄ」という語を伴うストリートと、「４２ｎｄ」という語を伴うストリートとの交差点の近くにある、名前、名前の一部、または「ＷＡ」という略称を伴う湖を検索することができる。地図クエリーは、そのような情報を、地図サービスによって認識されて利用されることになるクエリーフォーマット内に含めることによって、そのような情報を検索することができる。そのようなクエリーは、そのクエリーが、ランドマーク、たとえば、ストリート、水域、建物など、ならびにスケッチ上でのそれらの互いに対する相対的な位置を示すという形式を取ることができる。たとえば、それらの相対的な位置は、スケッチ上にオーバーレイされた座標系を使用して、座標の点から表すことができる。地図クエリーを実行して、そのクエリーに対する最も近いマッチを見つけ出すことができる。クエリーには、ユーザデバイス（３１０）のロケーションに近いロケーションからクエリーを開始すること、および／または（地図スケッチ（６３０）にマッチすることが可能である複数のロケーションが見つかった場合には）あいまいさを解消することなどによって、ユーザデバイス（３１０）の現在のロケーションに近いロケーションの方へバイアスをかけることができる。地図サービスは、地図スケッチ（６３０）との相関関係に関して複数の候補地図ロケーションをランク付けすることができ、最も高いランキングスコアを含む地図領域を選択することができる。たとえば、そのランキングは、複数のランキング特徴、たとえば、現在のロケーシ���ンに対する近接度に関する特徴、地図スケッチから認識されたマッチするテキストに関する特徴、地図スケッチからのマッチする形状に関する特徴などからのスコアを結合することを含むことができる。
【００３６】
[0053]  たとえば、地図スケッチ（６３０）については、この地図が、ワシントン州のレドモンドおよびベルビューの近くのエリアに密接に対応しているということが判明することが可能である。この特定は、ユーザデバイス（３１０）が既にレドモンドもしくはベルビューに位置している場合には、またはシアトルの近くの都市に位置している場合でさえ、助長される。
【００３７】
[0054]  次いで図７を参照すると、地図スケッチ（６３０）のパターンをあるロケーションのパターンとマッチさせたら、地図サービスは、地図（７３０）を生成することができる。地図（７３０）は、地図サービス（ローカル地図サービスまたはリモート地図サービスであることが可能である）から返すことが可能であり、地図（７３０）は、ディスプレイ（３２０）上に表示することができる。地図（７３０）は、地図スケッチ（６３０）において示されていた同じエリアを示すことができる。加えて、地図（７３０）は、地図スケッチ（６３０）における強調表示されたライン（６４６）に対応している、かつその強調表示されたライン（６４６）から導出されたルート（７４０）を示すことができる。地図（７３０）は、ルート（７４０）の始点を表す付記、およびルート（７４０）の終点を表す付記を含むこともできる。
【００３８】
[0055]  地図（７３０）は、ルート（７４０）から遠くへ離れた場所よりも、ルート（７４０）の近くの場所の詳細をより多く含むことができる。たとえば、地図（７３０）は、ルート（７４０）の始点の近くの「ＭＩＣＲＯＳＯＦＴ  ＣＡＭＰＵＳ」という事業拠点を示すことができ、ルート（７４０）の終点の近くの「ＹＡＲＲＯＷ  ＰＯＩＮＴ」という町を示すことができ、これらの表示は、たとえ同様の規模の事業拠点および町が、ルート（７４０）から遠くへ離れている場合には示されない可能性があるとしても、行うことができる。同様に、ルート（７４０）の始点および終点の近くには、道路を表すさらに詳細なラインが示されており、示されている道路はすべて、ルート（７４０）の近くの道路の少なくとも一部分を有している。地図（７３０）は、インタラクティブな地図であることが可能であり、それによって、地図に対してズームインまたはズームアウトを行うこと、地図全体にわたってパンすることなどのためのユーザ入力を提供することができる。
【００３９】
[0056]  地図（７３０）に加えて、ルート（７４０）に沿った道案内（７５０）のリストを生成することができる。図７において示されているように、道案内（７５０）のリストをディスプレイ（３２０）上に含めることなどによって、道案内（７５０）を提示することができる。このリスト表示の代替として、または追加として、自動化されたスピーチエンジンを使用して、またはその他の何らかの方法で道案内を発音することによって、道案内（７５０）のリストを聞こえるように提示することができる。
【００４０】
Ｃ．スケッチからのグラフの例
[0057]  次いで図８を参照しながら、スケッチからグラフを生成することの一例について論じる。ユーザデバイス（３１０）のディスプレイ（３２０）は、ユーザ入力を用いて入力されたスケッチ（８３０）を表示することができる。スケッチ（８３０）は、スケッチ（８３０）において示されている列グラフを表す軸および列などの非テキストグラフィカル要素または特徴（８３４）を含むことができる。スケッチ（８３０）は、テキストのスケッチされた表示（８３６）を含むこともできる。たとえば、図８のイラストにおいては、スケッチ（８３０）のテキスト表示（８３６）は、縦軸上の目盛の隣に、１００，０００ドルと解釈することができる縦軸ラベル「＄１００ｋ」を含む。スケッチ（８３０）のテキスト表示（８３６）は、スケッチ（８３０）において示されている５つのグラフ列のうちで最も左のグラフ列の下の「２００７」および最も右のグラフ列の下の「２０１１」を含む横軸ラベルを含むこともできる。スケッチ（８３０）は、「ＳＡＬＥＳ」という言葉のスケッチされた表示を含む、スケッチされた列グラフのメイン部分の横のグラフ凡例を、これもまた「ＳＡＬＥＳ」という言葉のスケッチされた表示を含む、スケッチ（８３０）の上部中央のタイトルに加えて含むこともできる。
【００４１】
[0058]  ディスプレイ（３２０）は、「スケッチからグラフへ」の機能を呼び出すために選択することができるユーザインターフェースコントロール（８４０）を表示することもできる。ユーザインターフェースコントロール（８４０）を選択すると、スケッチ（８３０）が分析されてグラフが生成されるという結果につながることが可能である。たとえば、その分析は、テキストの表示（８３６）の認識、ならびに非テキストグラフィカル特徴（８３４）のパターンマッチングを含むことができる。たとえば、パターンマッチングは、テキスト表示（８３６）および非テキストグラフィカル特徴（８３４）をマッチさせて、どんなタイプのグラフが意図されているかを特定することができる。加えて、既存の値から値を内挿および／または外挿することができる。たとえば、スケッチ（８３０）は、列グラフを表す一般的なパターンにマッチしているということを特定することができる。加えて、上部中央における「ＳＡＬＥＳ」は、グラフタイトルを表すパターンにマッチしているということ、ならびにメインのグラフの右にある四角形およびスケッチされた語「ＳＡＬＥＳ」は、グラフ凡例のパターンにマッチしているということを特定することができる。「Ｂｅｓｔ  Ｅｖｅｒ」というテキストは、最も右の列を指している付記のフォーマットにマッチしているということを特定することもできる。加えて、横軸の左にあるテキスト表示「２００７」、および横軸の右にある「２０１１」は、横軸ラベルにマッチすることが可能である。加えて、２００７と２０１１との間に値を内挿して、介在する横軸ラベル２００８、２００９、および２０１０を生み出すことができる。
【００４２】
[0059]  加えて、縦軸上の目盛の隣にある「＄１００ｋ」は、１００，０００ドルという縦軸値を表すパターンにマッチしていると特定することができる。その値を使用して、グラフ列のうちのそれぞれに関する新たな値を作成することができる。たとえば、それぞれの列が＄１００ｋの目盛の高さを上回っている度合い、または＄１００ｋの目盛の高さを下回っている度合いを特定することができる。それぞれの対応する列に関して、その方法で比例値を作成することができる。これらのパターンマッチングおよび計算技術は、特定された値を含むデータセットを生み出すことができる。そのデータセットを使用して、そのデータセット内の値にリンクされているグラフを生成することができる。たとえば、スケッチ（８３０）をパターンマッチングすることからのグラフのタイプ（この例においては、列グラフ）をグラフエンジンに指示することができ、データセットをグラフエンジンに提供して、グラフを作成することができる。
【００４３】
[0060]  たとえば、次いで図９を参照すると、スケッチ（８３０）からのあり得る表示の一例が示されている。デバイス（３１０）のディスプレイ（３２０）は、フォーマット付けされたグラフ（９３０）を表示することができ、このフォーマット付けされたグラフ（９３０）は、上述のように、縦軸値ラベル（９３２）、横軸値ラベル（９３４）、ならびに、「ＳＡＬＥＳ」というタイトル、「ＳＡＬＥＳ」と示している凡例を含むことができ、グラフ（９３０）を表す列（９３６）のパターンに対応するパターンサンプルと、最も右の列の上部を指している「Ｂｅｓｔ  Ｅｖｅｒ」というテキストを伴う付記とを有している。ディスプレイ（３２０）は、グラフの基礎をなすデータセット（９４０）を表示することもできる。たとえば、横軸ラベルを表すテーブル列と、対応するグラフ列の値を表す対応するテーブル列と、それらのグラフ列値の上にあるヘッダ「ＳＡＬＥＳ」とを有するテーブルの形式でデータセット（９４０）を表示することができる。
【００４４】
[0061]  グラフ（９３０）およびデータセット（９４０）の表示は、インタラクティブであることが可能である。したがって、データセット（９４０）内の値を変更するためのユーザ入力を提供することができ、その変更は、結果としてグラフ（９３０）上の対応する変更につながることが可能である。同様に、グラフ（９３０）上の変更は、結果としてデータセット（９４０）内の対応する変更につながることが可能である。たとえば、さらなる付記をグラフ（９３０）上にスケッチすることができ、スケッチされた付記を入力すると、フォーマット付けされた付記がグラフ（９３０）に自動的に加えられるという結果につながることが可能である。別の例として、ユーザ入力によって、グラフ列のうちの１つを上または下へドラッグすることができ、その変更は、結果としてデータセット（９４０）内の対応する値に対する対応する変更につながることが可能である。さらに別の例として、ユーザ入力に応答してデータセット（９４０）内のグラフ列値のうちの１つを変更することができ、その変更は、結果として、対応するグラフ列の高さに対する対応する変更につながることが可能である。
【００４５】
[0062]  同様の「スケッチからグラフへ」の技術を、その他のタイプのグラフ、たとえば、棒グラフ、折れ線グラフ、円グラフ、組織図、散布図、面グラフ、バブルチャートなどに関して実行することができる。
【００４６】
ＩＶ．スケッチベースのグラフィックス取り出し技術
[0063]  次いで、いくつかのスケッチベースのグラフィックス取り出し技術について論じる。これらの技術のそれぞれは、コンピューティング環境において実行することができる。たとえば、それぞれの技術は、少なくとも１つのプロセッサと、少なくとも１つのプロセッサによって実行されたときに本技術を少なくとも１つのプロセッサに実行させる命令が格納されているメモリ（メモリは、命令（たとえば、オブジェクトコード）を格納し、それらの命令をプロセッサが実行したときに、プロセッサは、本技術を実行する）とを含むコンピュータシステムにおいて実行することができる。同様に、１つまたは複数のコンピュータ可読ストレージメディアは、コンピュータ実行可能命令を具体化し、それらが少なくとも１つのプロセッサによって実行されたときに本技術を少なくとも１つのプロセッサに実行させることができる。以降で論じられている技術は、少なくとも部分的にはハードウェアロジックによって実行することができる。
【００４７】
[0064]  図１０を参照しながら、スケッチベースのグラフィックス取り出し技術について論じる。この技術は、部分的にまたは完全にフリーハンドであるスケッチなどのグラフィカルスケッチを受け取ること（１０１０）を含むことができる。そのスケッチは、テキストの１つまたは複数の表示を含むことができる。この技術は、スケッチからクエリーを自動的に生成すること（１０２０）を含むこともできる。生成すること（１０２０）は、スケッチにおいて表されているテキストを自動的に認識すること、およびそのテキストをクエリー内に自動的に表すことを含むことができる。図１０の技術は、クエリーを実行して、そのクエリーに応答した画像を識別すること（１０３０）を含むことができる。スケッチにおいて表されているテキストは、識別された画像の１つまたは複数の非テキスト特徴について記述することができる。その画像を返すことができる（１０４０）。本明細書において論じられているその他の技術と同様に、スケッチの受け取りに続くこの技術の行為のうちのすべてのまたは任意の組合せは、（何らかのタイプのスケッチベースのグラフィックス取り出し、たとえば、画像を取り出すこと、地図を生成すること、グラフを生成することなどにスケッチが使用されることになるということを示すユーザ入力（たとえば、ユーザインターフェースコントロールを選択すること）に加えてスケッチ入力を受け取ることによって行うことが可能である）スケッチを受け取ることに応答した自動的な行為によって行うことができる。したがって、グラフィックス（画像／グラフ／地図など）を生成する／取り出すためにスケッチが使用されることになるということを示すユーザ入力が提供されると、さらなるユーザ入力を伴わずにグラフィックスを自動的に生成することができるが、いくつかの状況においては（たとえば、あいまいさを解消するためにユーザ入力が要求される場合には）、そのようなさらなるユーザ入力を提供することができる。
【００４８】
[0065]  画像は、スケッチにおいて表されているテキストを含まない画像であることが可能である。スケッチは、画像の１つまたは複数のグラフィカル特徴の１つまたは複数のグラフィカル表示を含むこともできる。クエリーを自動的に生成することは、スケッチの１つまたは複数のグラフィカル要素によって表されているアイテムのタイプを自動的に識別することを含むことができ、アイテムのそのタイプの１つまたは複数のテキスト表示をクエリー内に含むことができる。アイテムのタイプを自動的に識別することは、グラフィカル要素に関してパターンマッチングを実行することを含むことができる。クエリーを自動的に生成することは、スケッチの１つまたは複数のグラフィカル要素に関してパターンマッチングを自動的に実行すること、およびテキストの１つまたは複数のスケッチされた表示に関してテキスト認識を自動的に実行することを含むことができる。
【００４９】
[0066]  画像は、写真、またはその他の何らかのタイプの画像、たとえば、線画、陰影付きの画像、もしくはその他の何らかのタイプの画像であることが可能である。スケッチは、１つの色（たとえば、１つの色の１つまたは複数のスケッチされたライン）を含むことができ、クエリーは、その色のテキスト表示を含むことができる。たとえば、スケッチは、あるエリア内に赤色のぞんざいに書かれたラインを含む場合があり、クエリーは、（画像に関連付けられているメタデータにおいて示すことができる、または画像を分析することによって識別することができる）ぞんざいに書かれたラインのエリア内の赤色を含む画像を検索することができる。
【００５０】
[0067]  クエリーを実行すること（１０３０）は、複数の画像を識別することができ、テキストは、それらの複数の画像のうちのそれぞれの１つまたは複数の非テキスト特徴について記述することができる。この方法は、それらの複数の画像を返すことを含むことができる。それらの画像は、ランキングシステムに従って、それぞれの画像がスケッチとどの程度よく相関しているかに応じてランク付けすることが可能である。返される複数の画像のうちの１つまたは複数を選択するユーザ入力を受け取ることができる。そのユーザ入力に応答して、この技術は、選択された画像をドキュメント内に挿入することを含むことができる。
【００５１】
[0068]  この技術は、デジタルドキュメントを表示することを含むことができる。スケッチを受け取ること（１０１０）は、（たとえば、ドキュメントが表示されているディスプレイエリアにおいてタッチベースの入力を受け取ることによって、）表示されたドキュメントにおいてスケッチを定義するユーザ入力を受け取ることを含むことができる。この技術は、返された画像をドキュメント内に入力することをさらに含むことができる。
【００５２】
[0069]  図１０の技術、および本明細書において論じられているその他の技術は、全体的に、または部分的にハードウェアロジックによって実行することができる。
【００５３】
[0070]  次いで図１１を参照しながら、別のスケッチベースのグラフィックス取り出し技術について論じる。この技術は、テキストの１つまたは複数のスケッチされた表示を含むグラフィカルスケッチを受け取ること（１１１０）を含むことができる。そのスケッチによって表されている画像を画像サービスが返すことを求める要求を画像サービスに送信することができる（１１２０）。その要求に応答した画像を画像サービスから受け取ることができる（１１３０）。その画像は、スケッチにおいて表されているテキストによって記述されている１つまたは複数の非テキスト特徴を含むことができる。加えて、図１１の技術は、画像を表示すること（１１４０）を含むことができる。
【００５４】
[0071]  スケッチを受け取ること（１１３０）は、表示されたデジタルドキュメントにおいてスケッチを定義するユーザ入力を受け取ることを含むことができる。加えて、画像を表示すること（１１４０）は、ドキュメントにおいて（たとえば、ワープロドキュメント、スプレッドシートドキュメント、スライドプレゼンテーションドキュメントなどにおいて）画像を表示することを含むことができる。
【００５５】
[0072]  画像サービスに対する要求は、スケッチのイメージ、および／またはスケッチから生成されたクエリーを含むことができる。画像サービスに対する要求は、画像サービスがクエリーを実行することおよび／またはスケッチを分析することを要求することができる。画像は、スケッチにおいて表されているテキストを含まない画像であることが可能であり、また画像は、テキストをまったく含まないことが可能である。スケッチは、画像の１つまたは複数のグラフィカル特徴の１つまたは複数のグラフィカル表示を含むことができる。画像サービスは、リモートサービスおよび／またはローカルサービスであることが可能である。
【００５６】
[0073]  次いで図１２を参照しながら、さらに別のスケッチベースのグラフィックス取り出し技術について論じる。この技術は、コンピュータディスプレイ上でのフリーハンドのグラフィカルスケッチを定義するユーザ入力を受け取ること（１２１０）を含むことができる。あるいは、スケッチは、部分的にフリーハンドであることも可能である。ユーザ入力は、スケッチを描くタッチ入力を含むことができ、スケッチは、１つまたは複数のスケッチされたグラフィカル表示、およびテキストの１つまたは複数のスケッチされた表示を含むことができる。スケッチからクエリーを自動的に生成することができる（１２２０）。生成すること（１２２０）は、テキストを自動的に認識すること、およびそのテキストをクエリー内に自動的に表すことを含むことができる。加えて、生成することは、１つまたは複数のグラフィカル表示をパターンマッチングすることを含むことができる。クエリーを実行して（１２３０）、そのクエリーに応答した画像を識別することができる。テキストは、画像の１つまたは複数の非テキスト特徴について記述することができ、画像は、テキストを含まないことが可能である。１つまたは複数のグラフィカル表示は、画像において示されている１つまたは複数のグラフィカル特徴の１つまたは複数のグラフィカル表示であることが可能である。クエリーに応答して画像を返すことができ（１２４０）、画像が返されたことに応答して、その画像をコンピュータディスプレイ上に表示することができる（１２５０）。
【００５７】
[0074]  次いで図１３を参照しながら、さらに別のスケッチベースのグラフィックス取り出し技術について論じる。この技術は、１つまたは複数のスケッチされたグラフィカル要素を含むスケッチを受け取ること（１３１０）を含むことができる。そのスケッチからサービスクエリーを自動的に生成することができる（１３２０）。サービスクエリーを地図サービスへ自動的に送信することができ（１３３０）、そのサービスクエリーに応答した地図を受け取ることができる（１３４０）。加えて、その地図を表示することができる（１３５０）。
【００５８】
[0075]  地図サービスは、リモートサービスおよび／またはローカルサービスであることが可能である。スケッチは、第１のロケーションの表示、および第２のロケーションの表示を含むことができる。図１３の技術は、地図サービスから道案内のリストを受け取ることをさらに含むことができる。それらの道案内は、第１のロケーションから第２のロケーションへの言葉ベースの道案内（テキストベースのまたはオーディオベースの道案内など）を含むことができる。この技術は、道案内を提示することをさらに含むことができる。
【００５９】
[0076]  スケッチは、テキストの１つまたは複数の表示を含むことができ、サービスクエリーも、テキストの１つまたは複数の表示を含むことができる。地図は、テキストにおいて記述されている１つまたは複数の特徴を含むことができる。テキストは、ランドマークについて記述することができる。サービスクエリーは、そのランドマークを地図内に含めてほしいという要求を含むことができる。地図は、そのランドマークの表示を含めることを、たとえ地図サービスからの地図が、その地図内にそのランドマークを含めてほしいという要求をサービスクエリーが含んでいなかったならばそのランドマークを含めないであろうとしても、行うことができる。
【００６０】
[0077]  １つまたは複数のスケッチされたグラフィカル要素は、地図上にグラフィカルに表される１つまたは複数の特徴に相当することができる。１つまたは複数のスケッチされたグラフィカル要素は、第１のロケーションから第２のロケーションへのルートのスケッチを含むことができ、地図は、そのルートを強調表示することができる。地図は、そのルートに近づくほど、より高いレベルの詳細を、およびそのルートから遠ざかるほど、より低いレベルの詳細を含むことができる。
【００６１】
[0078]  サービスクエリーは、スケッチを含むことができる。さらに、サービスクエリーは、スケッチに加えて情報を含むことができる。その情報は、スケッチを受け取ったデバイスの現在のロケーションに関する情報を含むことができる。
【００６２】
[0079]  サービスクエリーを自動的に生成すること（１３２０）は、スケッチを分析してサービスクエリーを作成することを含むことができる。サービスクエリーは、スケッチの１つまたは複数のグラフィカル要素を表す１つまたは複数のテキスト要素を含むことができる。
【００６３】
[0080]  次いで図１４を参照しながら、さらに別のスケッチベースのグラフィックス取り出し技術について論じる。この技術は、１つまたは複数のスケッチされたグラフィカル要素と、テキストの１つまたは複数のスケッチされた表示とを含むスケッチを受け取ること（１４１０）を含むことができる。スケッチされたグラフィカル要素およびテキストのスケッチされた表示のうちの１つまたは複数との地図領域のパターンマッチングを自動的に実行することができる（１４２０）。その地図領域の地図を自動的に生成すること（１４３０）および表示すること（１４４０）が可能である。
【００６４】
[0081]  その地図領域は、複数の潜在的な地図領域から選択される選択された地図領域であることが可能である。パターンマッチングを自動的に実行すること（１４２０）は、１つまたは複数のスケッチされたグラフィカル要素およびテキストの１つまたは複数のスケッチされた表示に対する相関関係に関して複数の地図領域を自動的にランク付けすることを含むことができる。選択される地図領域は、複数の地図領域のうちで自動的なランキングにおいて最も高いランクにある領域であることが可能である。
【００６５】
[0082]  本明細書において論じられているその他のスケッチと同様に、図１４の技術のスケッチは、完全にまたは部分的にフリーハンドのスケッチであることが可能である。たとえば、そのスケッチは、フリーハンドでスケッチされたいくつかの要素、およびフリーハンドでスケッチされていないその他の要素（打ち込まれたテキスト、および／または事前に定義されたグラフィカル要素など）を含むことができる。そのスケッチは、第１のロケーションから第２のロケーションへのルートを表すことができ、地図は、第１のロケーションから第２のロケーションへのルートを強調表示することができる。この技術は、ルートに沿って第１のロケーションから第２のロケーションへの道案内を自動的に生成することをさらに含むことができる。この技術は、道案内を提示することを含むこともできる。
【００６６】
[0083]  図１４の技術は、地図を求める要求に応答する際に使用するためにマッピングサービスによって保持されている地図データなどの地図データのデータベースに、スケッチからの情報を加えることを含むこともできる。地図（第１の地図と呼ぶことができる）を（１４３０で）生成した後に、（たとえば、マッピングサービスへのサービスクエリーの形式での）地図要求を受け取ることができる。スケッチも、最初の地図要求（これもまた、マッピングサービスへのサービスクエリーの形式であった可能性がある）の中に含まれていた可能性があり、その最初の地図要求に応答して、第１の地図が生成されていた可能性がある。第１の地図を（１４３０で）生成した後にこれらの地図要求に応答して、さらなる地図を生成することができ、その生成は、マッピングサービスによって実行することができる。これらのさらなる地図は、スケッチからの加えられた情報を含むことができる。
【００６７】
[0084]  次いで図１５を参照しながら、別のスケッチベースのグラフィックス取り出し技術について論じる。この技術は、１つまたは複数のスケッチされたグラフィカル要素と、テキストの１つまたは複数のスケッチされた表示とを含むフリーハンドのスケッチを受け取ること（１５１０）を含むことができる。そのスケッチは、第１のロケーションから第２のロケーションへのルートを表すことができる。この技術は、地図領域との１つまたは複数のスケッチされたグラフィカル要素およびテキストの１つまたは複数のスケッチされた表示のパターンマッチングを自動的に実行すること（１５２０）を含むこともできる。その地図領域は、複数の潜在的な地図領域から選択される選択された地図領域であることが可能である。パターンマッチングを自動的に実行することは、１つまたは複数のスケッチされたグラフィカル要素およびテキストの１つまたは複数のスケッチされた表示に対する相関関係に関して複数の地図領域を自動的にランク付けすることを含むことができる。選択される地図領域は、複数の地図領域のうちで最も高いランクにある地図領域であることが可能である。その地図領域の地図を自動的に生成することができる（１５３０）。その地図は、第１のロケーションから第２のロケーションへのルートを強調表示することができる。そのルートに沿った第１のロケーションから第２のロケーションへの言葉ベースの道案内を自動的に生成することができる（１５４０）。加えて、その地図領域の地図を表示することができ（１５５０）、第１のロケーションから第２のロケーションへの道案内を提示することができる（１５６０）。
【００６８】
[0085]  次いで図１６を参照しながら、さらに別のスケッチベースのグラフィックス取り出し技術について論じる。この技術は、グラフィカルなグラフ表示を含むスケッチを受け取ること（１６１０）を含むことができる。そのスケッチからデータセットを自動的に生成することができる（１６２０）。そのスケッチからグラフィカルなグラフを自動的に生成することもできる（１６３０）。グラフィカルなグラフは、スケッチを表すことができ、データセットは、グラフィカルなグラフにおいて表されているデータを含むことができる。
【００６９】
[0086]  データセットは、テーブルの形式であることが可能である。この技術は、グラフィカルなグラフおよびデータセットを単一のアプリケーション用のユーザインターフェース内に表示することを含むことができる。たとえば、その単一のアプリケーションは、スプレッドシートアプリケーションを含むことができる。スケッチは、少なくとも部分的にフリーハンドであることが可能である。スケッチからグラフィカルなグラフを生成すること（１６３０）は、スケッチによって表されているグラフのタイプを自動的に選択することを含むことができる。また、グラフのタイプを自動的に選択することは、スケッチの１つまたは複数のグラフィカル要素を使用して１つまたは複数のパターンマッチング技術を実行することを含むことができる。
【００７０】
[0087]  データセットを生成すること（１６２０）は、スケッチ内の１つまたは複数のテキスト表示において表されている１つまたは複数のデータ値から１つまたは複数の新たなデータ値を自動的に導出することを含むことができる。自動的に導出することは、内挿、外挿、およびそれらの組合せから構成されているグループから選択された導出計算を実行することを含むことができる。新たなデータ値を自動的に導出することは、スケッチの少なくとも１つのグラフィカル特徴を使用することができる。その少なくとも１つのグラフィカル特徴は、グラフィカル要素の位置、グラフィカル要素のサイズ、およびそれらの組合せから構成されているグループから選択することができる。１つまたは複数の新たなデータ値は、グラフの１つまたは複数のグラフィカル要素によって表すことができ、それらの新たなデータ値は、スケッチの１つまたは複数のグラフィカル要素を表すこともできる。
【００７１】
[0088]  グラフィカルなグラフを自動的に生成すること（１６３０）は、グラフィカルなグラフをデータセットから自動的に生成することを含むことができ、そのデータセットは、スケッチから生成される。スケッチは、１つまたは複数の付記を表すことができ、グラフも、１つまたは複数の付記を含むことができる。図１６の技術は、グラフに対する修正の表示をスケッチしているユーザ入力を受け取ること、およびグラフに対する修正の表示をスケッチしているユーザ入力に応答して、グラフに対する修正を行うことをさらに含むことができる。
【００７２】
[0089]  次いで図１７を参照しながら、さらに別のスケッチベースのグラフィックス取り出し技術について論じる。この技術は、少なくとも部分的にフリーハンドであるスケッチを受け取ること（１７１０）を含むことができ、そのスケッチは、グラフィカルなグラフ表示を含む。そのスケッチからデータセットを自動的に生成することができ（１７２０）、この生成すること（１７２０）は、スケッチにおけるテキスト表示によって表されていない１つまたは複数の新たなデータ値を導出することを含むことができる。加えて、データセットからグラフィカルなグラフを自動的に生成することができる（１７３０）。
【００７３】
[0090]  新たなデータ値を導出することは、スケッチにおける１つまたは複数のテキスト表示によって表されている１つまたは複数の既存のデータ値から新たなデータ値を導出することを含むことができる。１つまたは複数の新たなデータ値を導出することは、スケッチの１つまたは複数のグラフィカル要素によって表されている１つまたは複数のデータ値に関する１つまたは複数の想定を行うことを含むことができる。たとえば、折れ線グラフが値を含んでいない場合には、ライン上の１つのポイントの値に関して想定を行うこと（たとえば、その値を１という数に設定すること）が可能であり、そのポイントからその他の値を、スケッチにおけるライン上のその他のポイントの位置に基づいて外挿することができる。グラフィカルなグラフをデータセットから生成すること（１７３０）は、スケッチによって表されているグラフのタイプを自動的に選択することを含むことができる。グラフのタイプを自動的に選択することは、スケッチの１つまたは複数のグラフィカル要素を使用して１つまたは複数のパターンマッチング技術を実行することを含むことができる。
【００７４】
[0091]  次いで図１８を参照しながら、さらに別のスケッチベースのグラフィックス取り出し技術について論じる。この技術は、少なくとも部分的にフリーハンドであるスケッチを受け取ること（１８１０）を含むことができる。そのスケッチは、グラフィカルなグラフ表示を含むことができる。そのスケッチからデータセットを自動的に生成することができる（１８２０）。データセットを自動的に生成すること（１８２０）は、スケッチにおけるテキスト表示によって表されていない１つまたは複数の新たなデータ値を導出することを含むことができる。図１８の技術は、データセットおよびスケッチからインタラクティブなグラフィカルなグラフを自動的に生成すること（１８３０）を含むこともできる。グラフィカルなグラフを生成すること（１８３０）は、スケッチの１つまたは複数のグラフィカル要素を用いて１つまたは複数のパターンマッチング技術を使用して、スケッチによって表されているグラフのタイプを自動的に選択することを含むことができる。グラフは、１つまたは複数の新たなデータ値を表す１つまたは複数のグラフィカル要素を含むことができる。図１８の技術は、データセットを表示すること（１８３５）、およびグラフを表示すること（１８４０）をさらに含むことができる。ユーザ入力に応答して、データセット内の１つまたは複数の値を変更することができる（１８５０）。データセット内の１つまたは複数の変更された値を表すために、グラフの１つまたは複数の特徴を自動的に変更することができる（１８６０）。
【００７５】
[0092]  本主題は、構造的な特徴および／または方法論的な行為に特有の言葉で説明されているが、添付の特許請求の範囲において定義されている本主題は、上述の特定の特徴または行為に必ずしも限定されるものではないということを理解されたい。むしろ、上述の特定の特徴および行為は、特許請求の範囲を実施することの例示的な形態として開示されている。
【図１】
0006436909.tif 000002
【図２】
0006436909.tif 000003
【図３】
0006436909.tif 000004
【図４】
0006436909.tif 000005
【図５】
0006436909.tif 000006
【図６】
0006436909.tif 000007
【図７】
0006436909.tif 000008
【図８】
0006436909.tif 000009
【図９】
0006436909.tif 000010
【図１０】
0006436909.tif 000011
【図１１】
0006436909.tif 000012
【図１２】
0006436909.tif 000013
【図１３】
0006436909.tif 000014
【図１４】
0006436909.tif 000015
【図１５】
0006436909.tif 000016
【図１６】
0006436909.tif 000017
【図１７】
0006436909.tif 000018
【図１８】
0006436909.tif 000019