(57)【要約】【課題】  グラフ表示されるデータセットの値の範囲の変化に、その値を表す座標軸の範囲を動的に変化させて応答する、グラフによるデータ提示を提供すること。【解決手段】  時間とともに値の範囲が変化するにつれて（拡大または縮小）、座標軸の範囲およびその端点も動的に変化し、表示データは再描画される。範囲が変化するにつれて、目盛りの細かさも動的に調整されて、グラフ上の説明および／またはグラフ上に描かれる基準線に影響を及ぼすが、目盛りの細かさは必要な場合にのみ変化し、説明および基準線によって、利用者はグラフの目盛りの動的変化が理解できる。【選択図】図３
2004334183.tif 000002
【特許請求の範囲】
【請求項１】
データをグラフ上に動的に提示するための方法であって、
少なくとも２本の軸を用いてプロットされたデータの第１のセットのグラフ表現を表示するステップであって、前記少なくとも２本の軸のうちの少なくとも第１の軸の第１の範囲は、該第１の軸上にプロットされる前記データの値の範囲と対応するステップと、
第１のデータ更新を受信するステップと、
前記第１のデータ更新を用いて前記グラフ表現を第１回目に更新するステップであって、前記第１の軸上にプロットされるデータ値の範囲に対応するように更新された前記グラフ表現中で前記第１の軸を第２の範囲に変更するステップを含むことを特徴とする方法。
【請求項２】
グラフ表現を表示する前記ステップは、前記第１の軸の目盛りを示すために前記第１の軸上に少なくとも１つのスケールマークを表示することを含み、前記少なくとも１つのスケールマークの各々は、前記第１の軸上に対応する基準値を表すことを特徴とする請求項１に記載の方法。
【請求項３】
第２のデータ更新を受信するステップと、
前記第２のデータ更新を用いて前記グラフ表現を第２回目に更新するステップであって、前記第１の軸を用いて表示されるデータ値の範囲に対応するように更新された前記グラフ表現中で前記第１の軸を第３の範囲に変更し、前記対応する基準値を更新することによって前記少なくとも１つのスケールマークを更新するステップをさらに含むことを特徴とする請求項２に記載の方法。
【請求項４】
前記グラフ表現を第１回目に更新する前記ステップは、前記対応する基準値を更新することによって前記少なくとも１つのスケールマークを更新することを含むことを特徴とする請求項２に記載の方法。
【請求項５】
前記少なくとも１つのスケールマークは、少なくとも１本のグリッド線を含むことを特徴とする請求項２に記載の方法。
【請求項６】
前記少なくとも１つのスケールマークは、少なくとも１つのハッシュマークを含むことを特徴とする請求項２に記載の方法。
【請求項７】
前記第１のデータ更新の前記受信の前に第２のデータ更新を受信するステップと、
前記第１の軸に関する前記第１の範囲を用いてプロットされる前記第２のデータ更新を用いて前記グラフ表現を更新するステップを含むことを特徴とする請求項１に記載の方法。
【請求項８】
データをグラフ上に動的に提示するためのシステムであって、
データの第１のセットと第１のデータ更新を保存するためのデータストレージと、
少なくとも２本の軸を用いてプロットされる前記データの第１のセットのグラフ表現を表示し、かつ、前記少なくとも２本の軸を用いてプロットされる前記第１のデータ更新を用いた第１の更新されたグラフ表現を表示するためのグラフ表現ディスプレイであって、前記少なくとも２本の軸のうちの少なくとも第１の軸の第１の範囲は該第１の軸を用いてプロットされる前記データの値の範囲と対応し、かつ、前記第１の軸に関して第２の範囲が用いられ、前記第２の範囲は前記第１の軸を用いて前記第１の更新されたグラフ表現中に表示されるデータ値の範囲に対応するグラフ表現ディスプレイを含むことを特徴とするシステム。
【請求項９】
前記グラフ表現ディスプレイは前記第１の軸上に少なくとも１つのスケールマークを表示して前記第１の軸の目盛りを示し、前記少なくとも１つのスケールマークの各々は、前記第１の軸上に対応する基準値を表すことを特徴とする請求項８に記載のシステム。
【請求項１０】
前記データストレージが第２のデータ更新をさらに保存するとともに、前記グラフ表現ディスプレイが前記少なくとも２本の軸を用いてプロットされる前記第２のデータ更新を用いた第２の更新されたグラフ表現を表示しており、前記第１の軸を用いて前記第２の更新されたグラフ表現中に表示されるデータ値の範囲に対応する第３の範囲が前記第１の軸に関して用いられ、かつ、少なくとも１つのスケールマークの前記表示が、前記対応する基準値を更新することによって更新されることを特徴とする請求項９に記載のシステム。
【請求項１１】
少なくとも１つのスケールマークの前記表示は、前記対応する基準値を更新することによって前記少なくとも１つのスケールマークを更新することを特徴とする請求項９に記載のシステム。
【請求項１２】
前記少なくとも１つのスケールマークは、少なくとも１本のグリッド線を含むことを特徴とする請求項９に記載のシステム。
【請求項１３】
前記少なくとも１つのスケールマークは、少なくとも１つのハッシュマークを含むことを特徴とする請求項９に記載のシステム。
【請求項１４】
データをグラフ上に動的に提示するためのコンピュータ可読媒体であって、
少なくとも２本の軸を用いてプロットされたデータの第１のセットのグラフ表現を表示するステップであって、前記少なくとも２本の軸のうちの少なくとも第１の軸の第１の範囲は、該第１の軸上にプロットされる前記データの値の範囲と対応するステップと、第１のデータ更新を受信するステップと、前記第１のデータ更新を用いて前記グラフ表現を第１回目に更新するステップであって、前記第１の軸上にプロットされるデータ値の範囲に対応するように更新された前記グラフ表現中で前記第１の軸を第２の範囲に変更するステップを含む動作を実行するための命令を含むことを特徴とするコンピュータ可読媒体。
【請求項１５】
グラフ表現を表示する前記ステップは、前記第１の軸の目盛りを示すために前記第１の軸上に少なくとも１つのスケールマークを表示することを含み、前記少なくとも１つのスケールマークの各々は、前記第１の軸上に対応する基準値を表すことを特徴とする請求項１４に記載のコンピュータ可読媒体。
【請求項１６】
前記動作は、
第２のデータ更新を受信するステップと、前記第２のデータ更新を用いて前記グラフ表現を第２回目に更新するステップであって、前記第１の軸を用いて表示されるデータ値の範囲に対応するように更新された前記グラフ表現中で前記第１の軸を第３の範囲に変更し、前記対応する基準値を更新することによって前記少なくとも１つのスケールマークを更新するステップをさらに含むことを特徴とする請求項１５に記載のコンピュータ可読媒体。
【請求項１７】
前記グラフ表現を第１回目に更新する前記ステップは、前記対応する基準値を更新することによって前記少なくとも１つのスケールマークを更新することを含むことを特徴とする請求項１５に記載のコンピュータ可読媒体。
【請求項１８】
前記少なくとも１つのスケールマークは、少なくとも１本のグリッド線を含むことを特徴とする請求項１５に記載のコンピュータ可読媒体。
【請求項１９】
前記少なくとも１つのスケールマークは、少なくとも１つのハッシュマークを含むことを特徴とする請求項１５に記載のコンピュータ可読媒体。
【請求項２０】
前記動作はさらに、
前記第１のデータ更新の前記受信の前に第２のデータ更新を受信するステップと、
前記第１の軸に関する前記第１の範囲を用いる前記第２のデータ更新を用いて前記グラフ表現を更新するステップと
を含むことを特徴とする請求項１４に記載のコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はデータのグラフ表示に関する。より詳細には、本発明は、時間とともに更新されるデータの表示に関する。
【背景技術】
【０００２】
ユーザに対してデータを表示するのに、グラフがしばしば使用される。例えば、変数の順序付けられた対で構成されるデータを示すのに、２次元グラフを使用することができる。各座標軸は、変数がとり得る値の範囲を表す。
【０００３】
各座標軸上に表示する範囲を選択する際に、グラフが抱える問題の１つと出会う。例えば、グラフ表示される値のとり得る範囲に０から８００にわたるＸの値が含まれる場合、Ｘ軸の範囲は０から８００とするべきである。
【０００４】
しかし、実際にグラフ上に出現する値が高々０から５０の範囲にある場合、Ｘ軸の範囲を０から８００まで表すグラフはあまり読みやすくはない。データ値の現在の範囲の一端にデータが継続的に追加され続けるような状況で、こうしたことが起り得る。例えば、データが時間とともに継続的に計算され続け、さらにＸ軸が時間を表す場合、データは最初だけは当初の範囲に収まるだろうが、時間が経てば、いずれはその範囲を超え出るであろう。したがって、Ｘ軸の範囲は０から８００でなければならないが、現在のデータはＸ軸上の高々０から５０の範囲に収まるといったことも起きてくる。そのようなグラフでデータを動的に利用者に提示した場合、最初はグラフの一部分だけにデータが見られる。
【０００５】
この問題の１つの解決策は、Ｘ軸に対数目盛りを使用することである。そうすれば、範囲内の小さい方のデータの詳細がより見やすくなり、しかもグラフにはデータの全範囲を収めることができる。
【０００６】
しかし、座標軸にこの対数目盛りを使用する方法には、いくつかの問題がある。第１に、利用者が対数目盛りの使用に慣れていないかもしれず、グラフの理解に影響が出ることがあり得る。第２に、グラフの大きい方のデータの詳細は圧縮されるので、この種のグラフの有用性が損なわれる。第３に、表示すべきデータの最終的範囲がどうなるのか分らない場合、最後のデータを全表示領域内に表示できない（そのため、表示できたであろう詳細が失われる）ことがあり、または最後のデータが表示範囲からオーバフローする（そのため、そのデータが表示されない）ことがあり得る。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
したがって、表示可能領域に提示されるデータを最も詳細な形で示し、また表示データの範囲の絶えざる変化に対応しながら、提示の時間とともに範囲を変化させるデータをグラフによって提示するための方法が必要とされている。
【課題を解決するための手段】
【０００８】
グラフ上でとり得る値の範囲がグラフ表示される実際の値の範囲に対応した、グラフによるデータの提示が行われる。時間とともに値の範囲が変化するにつれて（グラフ表示されるデータに対してデータが足し引きされて、範囲が拡大、縮小するにつれて）、グラフ上に表示できる値の範囲も変化する。グラフ表示されるデータに対してデータが足し引きされたときに、グラフを動的に再描画することもできる。
【０００９】
本発明の一実施形態では、範囲が変化するにつれて目盛りの細かさも動的に調整され、グラフ上の説明（legend）および／またはグラフ上に描かれる基準線に影響を及ぼす。
【００１０】
本発明の一実施形態では、現在描画されているデータの範囲を含み、データが追加されたときにはその範囲も含むように、グラフは継続的に再描画され続けるが、目盛りの細かさは一定時間毎に変更されるにすぎない。したがって、データがディスプレイ上で増加し続けていても、基準線は再計算されないまま、グラフの理解を助ける。
【００１１】
上述の要約、ならびに以下に記載の本発明の好ましい実施形態の詳細な説明は、添付の図面と併せ読むことによってより深い理解が得られるであろう。本発明を説明するため、図面には本発明の例示的な作図が示されているが、本発明は開示された具体的な方法および手段に限定されるものではない。
【発明を実施するための最良の形態】
【００１２】
概要
グラフ上でとり得る値の範囲がグラフ表示される実際の値の範囲に対応した、グラフによるデータの提示が行われる。時間とともに値の範囲が変化するにつれて（グラフ表示されるデータに対してデータが足し引きされて、範囲が拡大、縮小するにつれて）、グラフ上に表示できる値の範囲も変化する。グラフ表示されるデータに対してデータが足し引きされたときに、グラフを動的に再描画することもできる。
【００１３】
本発明の一実施形態では、範囲が変化するにつれて、目盛りの細かさも動的に調整されて、グラフ上の説明および／またはグラフ上に描かれる基準線に影響を及ぼす。
【００１４】
例示的なコンピューティング装置
図１および以下の説明は、本発明を実施することができる適切なコンピューティング環境の簡潔な一般的説明を提供することを意図している。しかし、ハンドヘルド、ポータブル、および他のコンピューティング装置、およびあらゆる種類のコンピューティングオブジェクトが、上述したような本発明に関して使用し得るものとして企図されていることを理解されたい。したがって、以下では汎用コンピュータに関して説明が行われるが、それは単なる一例に過ぎず、ネットワーク／バス相互運用性および対話性を有するシンクライアント（thin client）など、その他のコンピューティング装置によっても、本発明を実施することができる。したがって、本発明は、ごく僅かのまたは最小限のクライアント資源しか関与しないネットワーク化されたホストサービス環境、例えば、クライアント装置が、器械内に置かれたオブジェクトなど、ネットワーク／バスへのインタフェースとしてしか機能しないネットワーク環境でも実施することができ、またはその他のコンピューティング装置およびオブジェクトでも同様に実施することができる。実質的にデータを保存でき、データを取り出せる環境であればどこでも、本発明に従った操作にとって望ましいか、または適切な環境となる。
【００１５】
必須ではないが、本発明は、装置またはオブジェクト用サービスの開発者が使用できるようにオペレーティングシステムを仲介して実施でき、かつ／または本発明に従って動作するアプリケーションソフトウェア内に含めることができる。ソフトウェアは、クライアントワークステーション、サーバ、またはその他の装置など１つまたは複数のコンピュータによって実行される、プログラムモジュールなどのコンピュータ実行可能命令の一般的文脈において記述することができる。一般にプログラムモジュールには、特定のタスクを実行し、または特定の抽象データ型を実施するルーチン、プログラム、オブジェクト、コンポーネント、データ構造、その他が含まれる。一般にプログラムモジュールの機能は、様々な実施形態における必要に応じて結合させることができ、または分散させることができる。さらに、本発明はその他のコンピュータ構成によっても実施できることが、当業者には理解されよう。本発明との使用に適したその他の周知のコンピューティングシステム、環境、および／または構成には、パーソナルコンピュータ（ＰＣ）、現金自動預け払い機、サーバコンピュータ、ハンドヘルドまたはラップトップ装置、マルチプロセッサシステム、マイクロプロセッサベースシステム（microprocessor-based system）、プログラム可能家庭用電化製品、ネットワークＰＣ、器械、照明類、環境制御要素（environmental control element）、ミニコンピュータ、メインフレームコンピュータ、その他が含まれる。本発明は、通信ネットワーク／バスまたは他のデータ伝送媒体を介して接続されたリモート処理装置によってタスクが実行される分散コンピューティング環境でも実施することができる。分散コンピューティング環境では、メモリ記憶装置を含むローカルおよびリモートコンピュータ記憶媒体の両方にプログラムモジュールを配置することができ、クライアントノードが役割を交代してサーバノードとして振舞うこともできる。
【００１６】
したがって、図１には、本発明を実施することができる適切なコンピューティングシステム環境１００の一例が示されているが、上で明らかにされたように、コンピューティングシステム環境１００は、適切なコンピューティング環境の単なる一例に過ぎず、本発明の使用または機能の範囲について何らかの限定を示唆しようとするものではない。コンピューティング環境１００は、例示的な動作環境１００に示されたコンポーネントのどれか１つまたはその組合せに対し、どのような依存性または必要性も持たないと解釈される。
【００１７】
図１を参照すると、本発明を実施するための例示的なシステムは、コンピュータシステム１１０の形態をとる汎用コンピューティング装置を含む。コンピュータシステム１１０のコンポーネントには、プロセッシングユニット１２０、システムメモリ１３０、およびシステムメモリを含む様々なシステムコンポーネントをプロセッシングユニット１２０に結合するシステムバス１２１が含まれるが、これらに限定されるものではない。システムバス１２１は、様々なバスアーキテクチャのいずれかを使用する、メモリバスまたはメモリコントローラ、周辺バス、ローカルバスを含む、複数のタイプのバス構造のうちの任意のバス構造とすることができる。例えば、こうしたアーキテクチャには、ＩＳＡ（業界標準アーキテクチャ）バス、ＭＣＡ（マイクロチャネルアーキテクチャ）バス、ＥＩＳＡ（拡張業界標準アーキテクチャ）バス、ＶＥＳＡ（ビデオ電子規格協会）ローカルバス、および（メザニンバス（Mezzanine bus）としても知られる）ＰＣＩ（周辺コンポーネント相互接続）バスが含まれるが、これらに限定されるものではない。
【００１８】
コンピュータシステム１１０は一般に、様々なコンピュータ可読媒体を含む。コンピュータ可読媒体は、コンピュータシステム１１０によってアクセス可能な任意の利用可能媒体とすることができ、揮発性および不揮発性媒体、着脱可能および着脱不能媒体を含む。例えば、コンピュータ可読媒体は、コンピュータ記憶媒体および通信媒体を含むが、これらに限定されるものではない。コンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、またはその他のデータといった情報を記憶するための任意の方法または技法によって実施される、揮発性および不揮発性媒体、着脱可能および着脱不能媒体を含む。コンピュータ記憶媒体には、ＲＡＭ（ランダムアクセスメモリ）、ＲＯＭ（読み取り専用メモリ）、ＥＥＰＲＯＭ（電気的消去およびプログラム可能読み取り専用メモリ）、フラッシュメモリ、またはその他のメモリ技術、ＣＤＲＯＭ（コンパクトディスク読み取り専用メモリ）、ＤＶＤ（デジタル多用途ディスク）、またはその他の光ディスクストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ、またはその他の磁気記憶装置、あるいは所望の情報を記憶するのに使用でき、コンピュータシステム１１０によってアクセス可能なその他の任意の媒体が含まれるが、これらに限定されるものではない。通信媒体は一般に、搬送波やその他の伝送メカニズムなどの変調データ信号中に、コンピュータ可読命令、データ構造、プログラムモジュール、またはその他のデータを有形化し、任意の情報送達媒体を含む。「変調データ信号」という語は、信号中に情報を符号化するための方式によって設定または変更された１つまたは複数の信号特性を持つ信号を意味する。例えば、通信媒体には、有線ネットワークまたはダイレクト有線接続などの有線媒体、および音響、ＲＦ、赤外線、またはその他の無線媒体が含まれるが、これらに限定されるものではない。上記の媒体の任意の組合せも、コンピュータ可読媒体の範囲に含まれるものとする。
【００１９】
システムメモリ１３０は、ＲＯＭ（読み取り専用メモリ）１３１やＲＡＭ（ランダムアクセスメモリ）１３２などの、揮発性および／または不揮発性メモリの形態をとるコンピュータ記憶媒体を含む。ＢＩＯＳ（基本入出力システム）１３３は、起動処理中などにコンピュータシステム１１０内の要素間の情報伝送を助ける基本ルーチンを含み、一般にＲＯＭ１３１に記憶される。ＲＡＭ１３２は一般に、プロセッシングユニット１２０が直ちにアクセス可能なかつ／または現在それを用いて動作している、データおよび／またはプログラムモジュールを含む。例えば、図１には、オペレーティングシステム１３４、アプリケーションプログラム１３５、その他のプログラムモジュール１３６、およびプログラムデータ１３７が示されているが、これらに限定されるものではない。
【００２０】
コンピュータシステム１１０はまた、その他の着脱可能／着脱不能、揮発性／不揮発性コンピュータ記憶媒体を含む。図１には、着脱不能な不揮発性磁気媒体に対して読み書きを行うハードディスクドライブ１４１、着脱可能な不揮発性磁気ディスク１５２に対して読み書きを行う磁気ディスクドライブ１５１、ＣＤＲＯＭやその他の光媒体など着脱可能な不揮発性光ディスク１５６に対して読み書きを行う光ディスクドライブ１５５が、例としてのみ示されている。例示的な動作環境で使用することができるその他の着脱可能／着脱不能、揮発性／不揮発性コンピュータ記憶媒体には、磁気テープカセット、フラッシュメモリカード、デジタル多用途ディスク、デジタルビデオテープ、ソリッドステートＲＡＭ、ソリッドステートＲＯＭ、その他が含まれるが、これらに限定されるものではない。ハードディスクドライブ１４１は一般に、インタフェース１４０などの着脱不能メモリインタフェースを介してシステムバス１２１に接続され、磁気ディスクドライブ１５１および光ディスクドライブ１５５は一般に、インタフェース１５０などの着脱可能メモリインタフェースを介してシステムバス１２１に接続される。
【００２１】
上述の図１に示すドライブおよびそれに関連するコンピュータ記憶媒体は、コンピュータシステム１１０のためのコンピュータ可読命令、データ構造、プログラムモジュール、およびその他のデータの記憶を可能とする。図１には、例えば、オペレーティングシステム１４４、アプリケーションプログラム１４５、その他のプログラムモジュール１４６、およびプログラムデータ１４７を記憶するハードディスクドライブ１４１が示されている。これらのコンポーネントは、オペレーティングシステム１３４、アプリケーションプログラム１３５、その他のプログラムモジュール１３６、およびプログラムデータ１３７と同じであることもでき、異なることもできる。図１では、オペレーティングシステム１４４、アプリケーションプログラム１４５、その他のプログラムモジュール１４６、およびプログラムデータ１４７には異なる番号が振られており、少なくともそれらが異なる複製物であることを示している。ユーザは、キーボード１６２や、一般にマウス、トラックボール、またはタッチパッドと呼ばれるポインティングデバイス１６１などの入力装置を介して、コマンドおよび情報をコンピュータシステム１１０に入力することができる。その他の入力装置（図示せず）には、マイクロホン、ジョイスティック、ゲームパッド、衛星放送用パラボラアンテナ、スキャナ、その他が含まれる。上記およびその他の入力装置はしばしば、システムバス１２１に結合されたユーザ入力インタフェース１６０を介してプロセッシングユニット１２０に接続されるが、パラレルポート、ゲームポート、またはＵＳＢ（汎用シリアルバス）など、その他のインタフェースおよびバス構造によって接続することもできる。ノースブリッジなどのグラフィックスインタフェース１８２をシステムバス１２１に接続することもできる。ノースブリッジは、ＣＰＵすなわちホストプロセッシングユニット１２０と通信を行い、ＡＧＰ（加速化グラフィックスポート）通信に必要な役割を担うチップセットである。１つまたは複数のＧＰＵ（グラフィックスプロセッシングユニット）１８４がグラフィックスインタフェース１８２と通信を行うことができる。これに関連して、ＧＰＵ１８４は一般に、レジスタ記憶などのオンチップメモリ記憶を含み、またビデオメモリ１８６と通信を行う。しかし、ＧＰＵ１８４はコプロセッサの単なる一例に過ぎず、したがって、コンピュータシステム１１０には様々なコプロセッサ装置が含まれてよい。モニタ１９１またはその他のタイプのディスプレイ装置も、ビデオインタフェース１９０などのインタフェースを介してシステムバス１２１に接続され、ビデオインタフェースはビデオメモリ１８６と通信を行う。モニタ１９１の他に、コンピュータシステムは、出力周辺インタフェース１９５を介して接続できる、スピーカ１９７やプリンタ１９６などのその他の周辺出力装置も含むことができる。
【００２２】
コンピュータシステム１１０は、リモートコンピュータ１８０などの１つまたは複数のリモートコンピュータへの論理接続を使用して、ネットワークまたは分散環境で動作することができる。リモートコンピュータ１８０は、パーソナルコンピュータ、サーバ、ルータ、ネットワークＰＣ、ピア装置、またはその他の共通ネットワークノードとすることができ、一般にコンピュータシステム１１０に関して上述した、多くのまたはすべての要素を含むことができるが、図１にはメモリ記憶装置１８１だけが示されている。図１に示す論理接続は、ＬＡＮ（ローカルエリアネットワーク）１７１およびＷＡＮ（ワイドエリアネットワーク）１７３を含むが、その他のネットワーク／バスを含むこともできる。こうしたネットワーク環境は、家庭やオフィスで、また企業規模のコンピュータネットワーク、イントラネット、インターネットで一般的である。
【００２３】
ＬＡＮネットワーク環境で使用される場合、コンピュータシステム１１０は、ネットワークインタフェースまたはアダプタ１７０を介してＬＡＮ１７１に接続される。ＷＡＮネットワーク環境で使用される場合、コンピュータシステム１１０は一般に、インターネットなどのＷＡＮ１７３を介して通信を確立するためのモデム１７２またはその他の手段を含む。内蔵でも外付けでもよいモデム１７２は、ユーザ入力インタフェース１６０またはその他の適切な機構を介してシステムバス１２１に接続することができる。ネットワーク環境では、コンピュータシステム１１０に関して示したプログラムモジュールまたはその部分は、リモートメモリ記憶装置に記憶することができる。例えば、図１には、メモリ記憶装置１８１上に存在する、リモートアプリケーションプログラム１８５が示されているが、それに限定されるものではない。図示のネットワーク接続は例示的なものであり、コンピュータ間の通信リンクを確立するその他の手段も使用できることが理解されよう。
【００２４】
プログレッシブスケールグラフ
継続的に更新されるデータ、例えば、継続的に更新されるデータの集まりを表示するため、プログレッシブスケールグラフ（progressive scale graph）が提供される。本発明の例示的な一実施形態では、データセットに属するデータを表示するグラフは、ＸおよびＹの２本の座標軸から構成される。図２の例示的なグラフに示されるように、Ｘ軸２００の範囲は０から６０までであり、Ｙ軸２１０の範囲は０から１００までである。その他の実施形態では、グラフに追加の座標軸を持たせることができる。座標軸はグラフ上にグラフィカルに描画することができ、または代替的な実施形態では、データをグラフ化する際にだけ座標軸を使用して、グラフ上には示さないこともできる。図２の例示的なグラフは、２本の座標軸を含むだけだが、本発明に従って、任意の次元数のグラフを使用することができ、本発明に従って、任意のグラフの１本または複数本の座標軸に本発明の方法を使用することができる。
【００２５】
グラフの範囲および目盛りを示すために、スケールマーク（scale marks）を使用することができる。こうしたスケールマークとして、座標軸上または軸近くに表示された数値、ハッシュマーク、またはグリッド線などを挙げることができる。図２（ａ）の例示的なグラフも、グリッド線２２０を含んでいる。これらのグリッド線は、グラフの範囲および目盛りを表示するのに使用される。
【００２６】
図３に示す本発明の一実施形態には、データをグラフ上に動的に提示するための方法が示されている。第１のステップ３００で、少なくとも２本の座標軸を用いてプロットされた１組のデータのグラフ表現（graphical representation）が表示される。少なくとも１本の座標軸の範囲は、１組のデータのデータ値の範囲に対応する。本発明の一実施形態では、この範囲に含まれる最小点および最大点は、１組のデータのデータ値の範囲に正確に対応する。別の実施形態では、当該範囲の最小点はその軸上の最小データ値よりも小さく設定され、最大点はその軸上の最大データ値よりも大きく設定される。当該範囲はこの場合、１組のデータのデータ値の範囲に近似的に対応するが、２つの範囲は対応してさえいればよく、正確に一致する必要はない。例えば、Ｘ軸上にプロットされる次元の値の範囲が１００から２００である場合、これに対応する１００から２００の範囲を持ったＸ軸が表示される。もう一方の例では、１００から２００の範囲のデータ値をより見やすく分りやすくするために、Ｘ軸の範囲は９０から２１０とされる。
【００２７】
第２のステップ３１０は、データ更新（data update）の受信に関与する。データ更新は、データが更新または収集されたときに、リアルタイムで受信することができる。一連のデータ更新を使用してデータの推移（progression）を示している場合、そのデータ更新は、時間の増分に対応する保存データ、またはその推移でのデータの増分に対応する保存データとすることができる。
【００２８】
次に第３のステップ３２０で、グラフ表現が更新される。初期の１組のデータのデータ値の範囲に対応する座標軸の範囲が変更される。その座標軸の新しい範囲は、データ更新を用いてその軸上にプロットされたデータ値の範囲に対応する。したがって、先の例を進めて、更新されたデータが１００から２２０にわたる場合、Ｘ軸の範囲はこの新しい範囲に対応する。座標軸の範囲とその軸上にプロットされるデータ値の範囲が直接に対応する場合、当該範囲は１００から２２０である。本発明の一実施形態では、データ更新の受信と新しい表示のサイクルは、追加のデータ更新がある毎に繰り返される。
【００２９】
座標軸上に表示する範囲は拡大することができ、または縮小することができる。データ更新がそれまでグラフ表示されていたデータセットとは大きく異なる範囲を必要とする場合、範囲が再計算されることもある。例えば、データ更新が、座標軸上に表示するデータの範囲を全範囲のわずか１０％に縮小した場合、そのデータ更新を表示する際には、座標軸の範囲も同じようにするのが望ましいであろう。
【００３０】
本発明の一実施形態では、データ更新はステップ３２０でグラフ表示されるすべてのデータを表す第２のデータセットとする。別の実施形態では、データ更新は増加変更分だけを含む。したがって、第１のデータセットを表示しているときに、そのデータに対する増加変更分であるデータ更新を受信した場合、ステップ３２０で生成される新しい表示は第１と第２のデータセットを合併したものとなる。このデータに対する増加変更分は、第１のデータセットからいくつかのデータを削除することもでき、その場合、第１のデータセットの部分集合が、ステップ３２０で生成される新しい表示としてグラフ表示される。
【００３１】
このようにして、表示されたグラフの読みやすさが改善される。グラフが更新されたデータをプログレッシブに表示している場合、現在Ｘ軸上にどこまでの範囲が表示されているかに関わらず、望ましくはそのデータは表示領域のすべてまたは大部分にわたる。
【００３２】
再び図２（ａ）を参照すると、グラフィカルに表現されたグラフが線２３０でデータを表している。線２３０によって表されるデータは、Ｘ軸２００の範囲が０から６０までである。例示的な更新されたデータのグラフ表現が、図２（ｂ）に示されている。この更新されたグラフ表現では、Ｙ軸２１０は更新前と同じであるが、Ｘ軸２０２は更新されており、線２３２によってグラフィカルに表されるデータに合わせて、範囲が０から１２０までになっている。さらなる更新の結果が、図２（ｃ）〜図２（ｅ）に示されている。これらの各例では、Ｘ軸の範囲が変更されるのに合わせて、データを表す線とグリッド線が再描画される。しかし、これが続けば、グリッド線は互いにいくらでも接近するであろう。グリッド線の可視グリッドの間隔が狭まって見ずらくなる程度までグラフが縮小されると、本発明の一実施形態に従って、グリッド線の間隔が変更される。縮尺率がさらに増え続ける。この様子が、図２（ｆ）に示す別の更新されたグラフ表現によって示されている。この図では、グリッド線２２０はＸ軸について８０単位間隔（spaced 80 units apart）で描かれている。図２（ｇ）には、さらに更新されたグラフ表現が示されており、このグラフ表現はＸ軸について１６０単位間隔のグリッド線２２５を含む。したがって、本発明の一実施形態では、１つまたは複数の更新の間はグリッド線の間隔を一定に維持し、ある更新の際にときどきグリッド線の間隔を更新することによって、どの更新でも理解しやすさと読みやすさが共に向上する。したがって、図２（ａ）〜図２（ｇ）に見られるように、データがプログレッシブに更新されるのに合わせて、データの全範囲を示すことができるようにグラフもプログレッシブに更新される。
【００３３】
グラフ上にデータを提示するのに線２３０などの線を使用することができるが、本発明は、グラフ上へのこのようなデータ提示方法に限定されるものではない。少なくとも２本の軸を持つグラフ上にデータをプロットするその他の方法、例えば、データを点の集まりとして、面として、またはその他の手段により示す方法も、本発明の方法およびシステムと共に使用することができる。
【００３４】
図４に示すように、本発明の一実施形態では、本発明に従った動的データ提示のためのシステム４００はデータストレージ４１０を含む。このデータストレージはデータセットを保存し、またデータセットに対する少なくとも１つの更新を保存するのに使用される。データセットおよび更新は、データ処理プログラムから、または本発明の一実施形態によるシステムと共に動作可能な他のアプリケーションまたはハードウェアから受信できる。データセットに対して複数の更新があることもある。またグラフ表現ディスプレイ（graphical representation display）４２０も含まれる。このグラフ表現ディスプレイ４２０は、少なくとも２本の座標軸を含むグラフ上に第１のデータセットのグラフ表現を表示するのに使用される。２本の座標軸の一方の範囲は、その軸に関するデータセットの値の範囲に対応するように設定される。グラフ表現ディスプレイ４２０は、第１のデータ更新を用いて更新された、第１の軸の範囲が更新されたデータセットに対応するグラフ表現も表示する。上述したように、データ更新は、第１のデータセットに対する追加、削除、変更を構成し、またはプロットされるデータの完全な第２セットを構成することもできる。
【００３５】
結論
上述したように、様々なコンピューティング装置およびネットワークアーキテクチャに関して本発明を説明してきたが、根底の概念は、データのグラフ表示を実施するのが望ましいどのようなコンピューティング装置およびシステムにも適用することができる。したがって、本発明の方法およびシステムは、多種多様なアプリケーションおよび装置に適用することができる。例示的なプログラミング言語、名前、および例は本明細書では様々な選択肢のうちの代表例として選ばれており、これらのプログラミング言語、名前、および例は限定を意図したものではない。本発明によって達成されるのと同様の、類似の、または等価のシステムおよび方法を達成するオブジェクトコードを提供する多数の方法が存在することは当業者には理解されよう。
【００３６】
本明細書で説明した様々な技法は、ハードウェアまたはソフトウェアによって、または適当な場合はその両方の組合せによって実施することができる。したがって、本発明の方法および機器、またはそれらのある側面もしくは部分は、フロッピディスク、ＣＤ−ＲＯＭ、ハードドライブ、またはその他のマシン可読記憶媒体などの有形媒体中に有形化された、プログラムコード（すなわち、命令）の形態をとることができ、プログラムコードがコンピュータなどのマシンにロードされ、マシンによって実行されたとき、そのマシンは本発明を実施するための機器となる。プログラム可能コンピュータ上でプログラムコードを実行する場合、コンピューティング装置は一般に、プロセッサ、プロセッサ可読な記憶媒体（揮発性および不揮発性メモリおよび／または記憶素子を含む）、少なくとも１つの入力装置、および少なくとも１つの出力装置を含む。本発明の信号処理サービスを、例えば、データ処理ＡＰＩその他を使用することによって利用することができる１つまたは複数のプログラムは、コンピュータと情報交換を行うため、好ましくは、高水準手続き型またはオブジェクト指向プログラミング言語によって実装される。しかし、プログラムは、必要に応じて、アセンブリ言語またはマシン語によって実装することもできる。いずれの場合も、言語はコンパイル型またはインタプリタ型言語とすることができ、ハードウェア実装と組み合わせることができる。
【００３７】
好ましい実施形態に関して本発明を説明してきたが、その他の類似の実施形態が使用できること、または記載の実施形態に変更および追加を施して、本発明から逸脱することなく本発明と同じ機能を実行することができることを理解されたい。さらに、無線ネットワーク装置の数が増大し続けている現状に特に鑑みて、ハンドヘルド装置用オペレーティングシステムおよび他のアプリケーション専用オペレーティングシステムを含む様々なコンピュータプラットフォームが企図されていることを強調しておくべきであろう。したがって、本発明はどれか１つの実施形態に限定されるべきものではなく、添付の特許請求の範囲にそった広がりと範囲の中で解釈されるべきものである。
【図面の簡単な説明】
【００３８】
【図１】本発明を実施することができる例示的な限定を意図しないコンピューティングシステムを示すブロック図である。
【図２（ａ）】本発明の一実施形態による例示的な一連の表示を示す図である。
【図２（ｂ）】本発明の一実施形態による例示的な一連の表示を示す図である。
【図２（ｃ）】本発明の一実施形態による例示的な一連の表示を示す図である。
【図２（ｄ）】本発明の一実施形態による例示的な一連の表示を示す図である。
【図２（ｅ）】本発明の一実施形態による例示的な一連の表示を示す図である。
【図２（ｆ）】本発明の一実施形態による例示的な一連の表示を示す図である。
【図２（ｇ）】本発明の一実施形態による例示的な一連の表示を示す図である。
【図３】本発明の一実施形態による連想ハッシュ・パーティショニング（associative hash partitioning）を実施する方法を示すフローチャートである。
【図４】本発明の一実施形態によるデータベースシステムを示すブロック図である。
【符号の説明】
【００３９】
１００  コンピューティングシステム環境
１１０  コンピュータシステム
１２０  プロセッシングユニット
１２１  システムバス
１３０  システムメモリ
１３１  ＲＯＭ（読み取り専用メモリ）
１３２  ＲＡＭ（ランダムアクセスメモリ）
１３３  ＢＩＯＳ（基本入出力システム）
１３４、１４４  オペレーティングシステム
１３５、１４５  アプリケーションプログラム
１３６、１４６  その他のプログラムモジュール
１３７、１４７  プログラムデータ
１４０  着脱不能メモリインタフェース
１４１  ハードディスクドライブ
１５０  着脱可能メモリインタフェース
１５１  磁気ディスクドライブ
１５２  着脱可能な不揮発性磁気ディスク
１５６  着脱可能な不揮発性光ディスク
１５５  光ディスクドライブ
１６０  ユーザ入力インタフェース
１６１  ポインティングデバイス
１６２  キーボード
１７０  ネットワークインタフェース
１７１  ＬＡＮ（ローカルエリアネットワーク）
１７２  モデム
１７３  ＷＡＮ（ワイドエリアネットワーク）
１８０  リモートコンピュータ
１８１  メモリ記憶装置
１８２  グラフィックスインタフェース
１８４  ＧＰＵ（グラフィックスプロセッシングユニット）
１８５  リモートアプリケーションプログラム
１９０  ビデオインタフェース
１９１  モニタ
１９５  出力周辺インタフェース
１９６  プリンタ
１９７  スピーカ
２００、２０２  Ｘ軸
２１０  Ｙ軸
２２０、２２５  グリッド線
２３０、２３２  線
４００  システム
４１０  データストレージ
４２０  グラフ表現ディスプレイ
【図１】
2004334183.tif 000003
【図２（ａ）】
2004334183.tif 000004
【図２（ｂ）】
2004334183.tif 000005
【図２（ｃ）】
2004334183.tif 000006
【図２（ｄ）】
2004334183.tif 000007
【図２（ｅ）】
2004334183.tif 000008
【図２（ｆ）】
2004334183.tif 000009
【図２（ｇ）】
2004334183.tif 000010
【図３】
2004334183.tif 000011
【図４】
2004334183.tif 000012
【外国語明細書】
2004334183000001.pdf