JP3790679B2 - グラフデータ視覚化装置、グラフィックス作成方法、プログラム及び記憶媒体 - Google Patents
グラフデータ視覚化装置、グラフィックス作成方法、プログラム及び記憶媒体 Download PDFInfo
- Publication number
- JP3790679B2 JP3790679B2 JP2001109109A JP2001109109A JP3790679B2 JP 3790679 B2 JP3790679 B2 JP 3790679B2 JP 2001109109 A JP2001109109 A JP 2001109109A JP 2001109109 A JP2001109109 A JP 2001109109A JP 3790679 B2 JP3790679 B2 JP 3790679B2
- Authority
- JP
- Japan
- Prior art keywords
- node
- arc
- nodes
- display space
- graph data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/206—Drawing of charts or graphs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/22—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Processing Or Creating Images (AREA)
- Image Generation (AREA)
Description
【発明の属する技術分野】
本発明は、ノードとノード間をつなぐアークとで構成されるグラフデータを視覚化するグラフィックス表示技術に関する。
【0002】
【従来の技術】
組織全体を構成する要素の関係を示すグラフデータに関して、当該要素を示すノードとノード間をつなぐアークとで表すことにより視覚化することができる。このグラフデータを視覚化するグラフィックス表示は、ウェブページのリンク構造の表示、金融・通信・交通・社会組織などのネットワークの表示、化学・生物などのデータをグラフ化したものの表示、テキストデータや画像データを関連性で連結してできるグラフの表示、いくつかの関連あるモジュールの組み合わせで構成されるシステムの振舞いを表したグラフの表示(例えば並列計算機のプロセス)などのように、種々の用途が考えられる。そのため、コンピュータを用いたグラフデータのグラフィックス表示技術は、非常に幅広い分野で必要とされている。
【0003】
このグラフィックス表示技術における最も大きな問題は、「読み手に誤解を与えないように、グラフのノード及びアークをディスプレイ空間に自動配置する」ことである。これを実現するためには、次の条件を最大限に満足することが好ましい。
[条件1]
近隣ノードが一定以上の距離を保ち、ノードどうしの重なりを避ける。
[条件2]
アークの長さの総和をできるだけ短くして、アークで連結されたノードをお互いに近い位置に配置する。
[条件3]
アークが端点以外の場所で別のノードと重ならないようにする。
図21に、これらの条件を図示する。
【0004】
従来、これらの条件をできるだけ満足するグラフ配置を得るための有用な手法として、分子間力モデルやバネモデルを用いた手法が知られている。すなわち、グラフのノードに分子間力モデル、グラフのアークにバネモデルを用いて、運動方程式を解くことによって各々のノードの適切な位置を算出する手法である。
図21に示すように、[条件1]は、ノードが重なって表示されることによる誤読を避けるための条件である。ノードに適用された分子間力モデルは、近隣ノードどうしが重なるのを防ぐための斥力として働く。
また、図21に示すように、[条件2]は、アークで連結されたノードが近くに配置されることで、ノードどうしの関連性を視覚的に理解しやすくするための条件である。アークに適用されたバネモデルは、アークの長さを短くするための引力として働く。
また、図21に示すように、[条件3]は、アークと重なったノードがアークの端点であるかのように誤読することを避けるための条件である。この条件を満足する手法としては、分子間力モデルとバネモデルとは別に、アークからノードへの斥力を適用して、アークとノードとの間に所定の距離を持たせる手法がある。
図22は、グラフのノード間に分子間力を適用し、アークにバネモデルを適用した様子を示す図である。図示のように、ノード間の分子間力モデルはノードどうしの斥力として働いており、アークのバネモデルはアークの縮もうとする力(ノードどうしの引力)として働いている。
【0005】
【発明が解決しようとする課題】
上述したグラフデータのグラフィックス表示技術に対して、多くのアプリケーションが求めている要件は、「最適でなくてもいいから、誤読を防ぐことのできる最低限以上の配置結果を、高速に求める」ことである。
具体的な例を挙げれば、パーソナルコンピュータのディスプレイ装置に表示されたウィンドウの中に整然と配置できる規模(数十〜数百のノード数)のグラフに対して、数秒程度の計算時間でグラフの配置結果を得られ、得られた配置結果において「ノードどうしの重なり」や「ノードとアークの重なり」が発生しないことが要求される。
【0006】
この「結果における品質」と「高速な処理」というトレードオフ的な要件に対して、上述した分子間力モデルやバネモデルなどの力学モデルを用いた従来のグラフデータの表示手法は、表示結果においてはある程度の品質を満足するものの、十分に高速な処理を行うことができなかった。
この従来の手法による計算時間は、ノード数をNとすると最悪の場合でO(N2)となる。ここで、O(N2)は、N2の定数倍以内の時間で計算が可能であることを意味する。このため、従来の手法では、ノード数の増加に対して急激に計算時間が大きくなっていた。
【0007】
特に、アークとノードの重なりを解消するために、アークからノードへの斥力を適用して、アークとノードとの間に所定の距離を持たせる手法を用いることは、計算時間が大幅に増加するため現実的ではなかった。
【0008】
また、良好な配置結果を得るには、ノードの初期配置に大きく依存するが、従来の手法では、適切な初期配置を決める方法がなかった。
図23は、好ましくないノードの初期配置の一例を示す図である。
図23に示す例において、ノードAとノードDはアークで結ばれており、このアークには長さを短くするための引力が働く。したがって、このグラフは、アークADの引力によって図23(B)あるいは図23(C)のように変形することが望ましい。しかし、ノードAはノードB及びノードCから受ける斥力によって動くことができず、図23(A)の状態から変形できない場合がしばしば生じる。
このように、従来のグラフィックス表示の手法によれば、ノードの適切でない初期位置が原因で、[条件1][条件2]を満たせないノード配置結果が出力される場合が多かった。
【0009】
そこで、本発明は、グラフデータのグラフィックス表示における処理速度の向上を図り、ノードの配置結果における品質と高速な処理という要求を高度に両立させることを目的とする。
【0010】
また、本発明は、より高品質なノードの配置結果を得ることができるグラフデータのグラフィックス表示技術を提供することを目的とする。
【0011】
【課題を解決するための手段】
上記の目的を達成する本発明は、次のように構成されたことを特徴とするグラフデータ視覚化装置を提供する。このグラフデータ視覚化装置は、グラフデータに基づいてノードとこのノード間を接続するアークとを含むグラフィックス・イメージを生成する処理部と、この処理部にて生成されたグラフィックス・イメージを表示する表示部とを備え、この処理部は、この表示部に表示されるディスプレイ空間に、ノードを順次追加しながら配置し、ノードが追加配置されるたびに、追加されたこのノードとディスプレイ空間に既に配置されているノードとの間に所定の力学モデルを適用して各ノードの位置を修正することを特徴とする。
【0012】
ここで、この処理部は、ディスプレイ空間に追加されたノードと、この追加されたノードに隣接されたアークに接続しているノード及びこの追加されたノードから一定以内の距離に位置するノードとの間にこの力学モデルを適用して各ノードの位置を修正することを特徴とする。すなわち、この力学モデルを追加されたノードを含む局所的な領域にのみ適用してノードの位置の修正を行う。
【0013】
また、上記と同様の処理部と表示部とを備えたグラフデータ視覚化装置において、この処理部は、表示部に表示されるディスプレイ空間に、隣接するアークの数の多いノードから順に追加しながら配置することを特徴とする。
ここで、この処理部は、このディスプレイ空間に先に配置するノードほど、当該ディスプレイ空間の中心に近い位置に配置することを特徴とする。
【0014】
さらに、上記と同様の処理部と表示部とを備えたグラフデータ視覚化装置において、この処理部は、ディスプレイ空間に形成されたグラフィックス・イメージにおいて、所定のノードに対して一定以内の距離に位置するアークを曲線化してこのノードから遠ざけることを特徴とする。
【0015】
ここで、この処理部は、具体的には、この所定のノードに対して一定以内の距離に位置するアークを分割し、このアークの分割点を前記ノードから遠ざけ、この分割点の間の線分列を一定の曲率の曲線に変換する。
また、この処理部は、このアークを分割して得られる線分を、この線分と平行な近隣のアークに対して一定以上の距離を保持させる。
さらに、この処理部は、このアークを一定の長さの線分列に分割する。
【0016】
また、本発明は、視覚的な形態で出力されるグラフィックス・イメージをコンピュータにて生成するグラフィックス作成方法において、このグラフィックス・イメージを生成する描画領域にノードを順次追加しながら配置するステップと、ノードが追加配置されるたびに、追加された当該ノードとディスプレイ空間に既に配置されているノードとの間に所定の力学モデルに基づく運動方程式を解くことにより各ノードの位置を更新するステップとを含むことを特徴とする。
ここで、この描画領域にノードを配置するステップは、追加されたノード及び当該ノードの近傍のノードに対して局所的に前記力学モデルを適用し運動方程式を解くことによりノードの位置を更新するステップを含む。
【0017】
また、本発明は、視覚的な形態で出力されるグラフィックス・イメージをコンピュータにて生成するグラフィックス作成方法において、このグラフィックス・イメージを生成する描画領域へのノードの配置順を、隣接するアークの数の多いノードが先になるように決定し、決定された配置順に従い、この描画領域の中心から周辺へ向かってノードを配置することを特徴とする。
【0018】
さらに、本発明は、視覚的な形態で出力されるグラフィックス・イメージをコンピュータにて生成するグラフィックス作成方法において、このグラフィックス・イメージを生成する描画領域にノードを配置し、各ノード間にアークを張るステップと、ノード及びアークを配置した後に、端部のノード以外の所定のノードに近接しているアークを、この所定のノードを迂回するように変形するステップとを含むことを特徴とする。
すなわち、このグラフィックス作成方法においては、描画領域にノードを配置する処理と、アークを変形してノードとアークとの重なりのない見やすい画像に整形する処理とが別工程となっている。
【0019】
ここで、この描画領域にノード及びアークを配置するステップは、このグラフィックス・イメージを生成する描画領域へのノードの配置順を決定するステップと、決定された配置順に従ってノードを順次配置し、配置されたノードに対してアークを張るステップとを含む構成とすることができる。
また、このアークを変形するステップは、所定のノードに対して一定以内の距離に位置するアークを分割するステップと、アークの分割点を所定のノードから遠ざけるステップと、この分割点の間の線分列を一定の曲率の曲線に変換するステップとを含む構成とすることができる。
【0020】
さらにまた、本発明は、上述したグラフィックス作成方法における各ステップに対応する処理をコンピュータに実行させるプログラムとして提供することができる。
また、本発明は、コンピュータを制御して、ノードとこのノード間を接続するアークとを含むグラフィックス・イメージを生成するプログラムであって、このグラフィックス・イメージを生成する描画領域へのノードの配置順を、隣接するアークの数の多いノードが先になるように決定する機能と、決定された配置順に従い、この描画領域の中心から周辺へ向かってノードを配置する機能とをこのコンピュータに実現させるプログラムとして提供することができる。
さらに、本発明は、コンピュータを制御して、ノードと当該ノード間を接続するアークとを含むグラフィックス・イメージを生成するプログラムであって、このグラフィックス・イメージを生成する描画領域にノードを配置し、配置されたノード間にアークを張るノード配置手段と、この描画領域にノード及びアークが配置された後に、所定のノードに対して一定以内の距離に位置するアークを曲線化してこのノードを迂回するアーク曲線化手段として、このコンピュータを動作させるプログラムとして提供することができる。
さらにまた、本発明は、これらのプログラムを、磁気ディスクや光ディスク、半導体メモリなどの記憶媒体に格納して配布したり、ネットワークを介してプログラムを配信するプログラム伝送装置に格納したりすることによって、提供することができる。
【0021】
【発明の実施の形態】
以下、添付図面に示す実施の形態に基づいて、この発明を詳細に説明する。
本実施の形態は、コンピュータシステムを用いて、組織全体を構成する要素の関係を示すグラフデータを、当該要素を示すノードとノード間をつなぐアークとで表すことにより視覚化するグラフィックス表示処理を行う。
図1は、本実施の形態によるグラフデータのグラフィックス表示を行うグラフデータ視覚化装置としてのコンピュータシステムの構成を示す図である。
図1を参照すると、コンピュータシステム10は、グラフィックス表示処理をプログラム制御により実行する処理装置(CPU)11と、処理装置11を制御するプログラムを格納した主メモリ12と、処理装置11により生成されたグラフデータのグラフィックス・イメージ(以下、単にグラフィックスと記述する)を表示するディスプレイ装置13と、処理対象であるグラフデータを格納した記憶装置14とを備える。
なお、図1には、本実施の形態を実現するための構成のみを図示してある。実際には、図示の構成の他に、各種の命令やデータを入力するためのキーボードやマウスなどの入力装置、音声出力機構や各種の周辺機器、ネットワークに対するインタフェースなどが設けられていることは言うまでもない。
【0022】
図2は、本実施の形態によるグラフデータのグラフィックス表示を実行するグラフィックス作成システムの構成を説明する図である。
図2を参照すると、本実施の形態によるグラフィックス作成システムは、グラフデータに基づいてノードの配置順を決定するノード配置順決定部21と、ノードを配置する位置を決定するノード配置部22と、所定のアークを曲線化するアーク曲線化部23とを備える。
【0023】
図2に示した各構成要素は、図1の主メモリ12に保持されているコンピュータプログラムにより制御された処理装置11にて実現される仮想的なソフトウェアブロックである。処理装置11を制御する当該コンピュータプログラムは、CD−ROMやフロッピーディスクなどの記憶媒体に格納して配布したり、ネットワークを介して伝送したりすることにより提供される。そして、当該コンピュータプログラムは、主メモリ12にロードされて処理装置11を制御し、図1に示したコンピュータシステム10において図2に示した各構成要素の機能を実現する。
【0024】
図3は、本実施の形態のグラフィックス作成システムによるグラフィックス作成処理の全体的な流れを示すフローチャートである。
図3に示すように、本実施の形態は、まず、処理対象であるグラフデータを入力し(ステップ301)、ノード配置順決定部21により、ノードの配置順を決定する(ステップ302)。
そして、決定された配置順に従って、ノード配置部22により、ノードを1個ずつ配置してゆく(ステップ303、304)。そして、ノードを1個配置するごとに、そのノードの追加によって既に配置されているノードの位置がどのように変化するかを算出し、グラフに反映させる(ステップ305)。
全てのノードの配置が終わると、アーク曲線化部23により、アークとノードとが重なっている箇所があるかどうかを調べ、アークとノードの重なりがない場合にはそのまま処理を終了する(ステップ306)。一方、アークとノードの重なりがある場合は、ノードと重なっているアークを曲線化してノードとの重なりを解消した後、処理を終了する(ステップ307)。
【0025】
次に、図2の構成要素ごとに、各機能及び動作を詳細に説明する。
ノード配置順決定部21は、処理対象であるグラフデータを入力し、このグラフデータに基づいてノードの配置順を決定する。
なお、上述したようにグラフデータは記憶装置14に格納されているので、ノード配置順決定部21として動作する処理装置11が記憶装置14から処理対象であるグラフデータを読み出すことにより入力する。ただし、フロッピーディスクやCD−ROMなどの記憶媒体にグラフデータを格納しておき、ドライブ装置を介して処理対象となるグラフデータを読み込むようにしても良い。また、ネットワークを介して他のコンピュータシステムから処理対象のグラフデータを転送して入力することも可能である。
【0026】
図4は、ノード配置順決定部21によるノードの配置順を決定する動作を説明するフローチャートである。
図4に示すように、ノード配置順決定部21は、まずグラフデータを入力し(ステップ401)、ノードを隣接するアークの数(以下、隣接アーク数)に応じて分類する(ステップ402)。
そして、次の処理を各ノードについて順次実行する。
まず、最も隣接アーク数の少ない残存ノードを選び、当該ノードをグラフデータから削除すると共に、リストに登録する(ステップ403、404)。そして、削除したノードに隣接するアークを全て削除し、そのアークに隣接するノードにおける隣接アーク数を1減らす(ステップ405)。
グラフデータ中の各ノードに関してステップ404、405の処理を行い、全てのノードがリストに登録されたならば、ノード配置順決定部21は、当該リストにおけるノードの登録順を最後から先頭へ遡る順番(登録順の逆の順番)を、ノードの配置順と定義する(ステップ403、406)。
【0027】
グラフデータを図示する場合、一般的に、多くのノードに接続されている中心的なノードは、ディスプレイ空間の中心部に配置されることが望ましい、ということが経験的にわかっている。例えば、図5(A)と図5(B)は等価なグラフであるが、図5(A)のように隣接アークの多いノードが空間の中心部に配置されるほうが、交差するアークが少なく、ノード間の関係を直感的に把握しやすい。そこで、図4を参照して上述したように、本実施の形態は、隣接アーク数の多いノードから順にノードを配置するように順番を決める。そして、先に配置されたノードが中心付近に配置され、後に配置されるノードほど周辺の領域に配置されるようにする。
【0028】
図4に示した動作のステップ405において、リストアップしたノードに隣接するアークを全て削除し、そのアークに隣接するノードにおける隣接アーク数を1減らすという処理を行った。これは、単純に隣接アーク数だけから配置順を決めることが好ましくないケースがあり得ることから、これに対処するために設けられた処理である。
図6は、ステップ405の処理を行う効果を説明する図である。
図6(A)に示すように、単純に隣接アーク数の多少のみに基づいて配置順を決めた場合、8〜12番目のノードはすべて隣接アーク数が2であるため、この5個のノード間の配置順は一意ではない。このため、隣接する末端ノードが連続に配置されるとは限らない。
これに対し、ステップ405の処理を行うことにより、グラフの末端部のノードが隣接順に連続して配置されるように配置順を決定することができる(図6(B)の場合、10、11番目、及び12、13、14番目のノードが一列に並ぶ)。これにより、末端部のノードが一列に並んだ良好な配置結果を得やすいこととなる。
【0029】
ところで、図4に示したノード削除処理では、ノードだけでなくアークも削除しているので、本来なら一続きに連結されているグラフを非連結な複数の部分グラフに分離することがある。例えば、図7(A)のようなグラフを、ノードに割り振られた数字の順番で削除すると、グラフは途中で図7(B)のような非連結な部分グラフに分離される。
このような状況を避けたい場合は、ノードを削除するかわりに当該ノードを隣接ノードにマージし、マージ前のノードの隣接アークもマージ後のノードに継承する、という考え方を導入すれば良い。図7(C)(D)は、ノードをマージした例である。ここで、マージ先以外のノードに連結しているアークの隣接ノードを、マージするノードからマージ先のノードに組み替えることにより、グラフの分離を避けることができる。例えば、図7(D)では、3番ノードと4番ノードを結ぶアークを、3番ノードから8番ノードに組み替えることで、グラフの分離を避けている。このマージ処理を進める過程で、アークの組み替えの履歴を保存し、ノードの配置処理の際には、マージ処理の履歴を逆向きに再生すれば、グラフを分離させずに処理することができる。
【0030】
ノード配置部22は、ノード配置順決定部21により決定されたノードの配置順にしたがって、各ノードを順次配置し、必要なアークを張って、グラフデータのグラフィックスを作成する。本実施の形態では、ノードを1個ずつ配置しながら、既に配置されている他のノードとの位置関係を調整する。したがって、新たに1個のノードを配置した場合、そのノードの配置の影響として、既に配置されている他のノードの変位を力学的なモデルに基づいて算出し、グラフィックスに反映させてゆく。
【0031】
本実施の形態では、各ノードの配置位置を算出するために、従来技術でも用いられている分子間力モデルやバネモデルといった力学モデルを用いた計算を局所的に適用する。以下、この手法について詳細に説明する。
ノード配置部22は、まず、これからディスプレイ空間に配置するノードをN0とする。N0の初期位置は、既にディスプレイ空間に配置されていてノードN0とアークで連結されているノードNaの近傍で、かつノードNaよりもディスプレイ空間の中心から遠い場所とする。
【0032】
続いて、ノード配置部22は、ノードNaに対してバネモデルを適用し、引力または斥力をノードN0及びノードNaに作用させる。このとき、ノードN0及びノードNaに作用させる力Faは、次の数1式により算出する。図8は、数1式の関数を図示したものである。
【数1】
数1式において、対象となる2個のノードの「大きさの総和」に対する「中心点間の距離」の比をdとする。また、k、d0、d1は定数であり、d0<d1であるとする。この式は、バネが安定な長さに向かうための力の算出式に類似しているが、一定以上の距離(d≧d1)のときに力の大きさが一定であるという点で異なる。
この力は、アークの長さを安定距離に近い長さに保ち、不必要に長いアークが生成されるのを避けるために作用する。
【0033】
また同時に、ノード配置部22は、既にディスプレイ空間に配置されていてノードN0とアークで連結されていないノードNbに対して分子間力モデルを適用し、斥力をノードN0及びノードNbに作用させる。このとき、ノードN0及びノードNbに作用させる力Fbは、次の数2式により算出する。図9は、数2式の関数を図示したものである。
【数2】
数2式において、kは定数とする。この式は、分子間力モデルの代表的な式であるファン・デル・ワールス力を3次関数で近似したものと類似しているが、d≧1のときに力の大きさがゼロであるという点で異なる。
この力は、アークで連結されていないノード間の距離を一定以上に保ち、ノードの重なりを避けるために作用する。
なお、ファン・デル・ワールス力を3次関数で近似した力としては、例えば下記の文献1に記載されたバブルメッシュ法で適用した分子間力がある。
文献1:嶋田, 物理モデルによる自動メッシュ分割,シミュレーション, Vol.12, No.1, pp.11-20, 1993.
【0034】
以上の2種類の力をノード間に対して算出した後に、ノード配置部22は、運動方程式を用いてノードの変位を求める。この場合、例えばRunge−Kutta法などの微分方程式解法を用いて反復的にノードの変位を求めることにより、各ノードの安定な位置を求めることができる。
ここで、ノードを1個追加配置したときに、そのノードとの直接の相互間力によって変位するノードは、
1.追加配置したノードとアークで結ばれているノード
2.追加配置したノードとアークで結ばれていないが、十分近い距離にあるノード
のいずれかのみである。
追加配置したノードの間接的な作用は、その周辺のノードの変位をもたらすが、追加配置したノードから離れるほど影響は小さくなる。したがって、一定の変位量以下を無視することにより、変位中と判定されるノードの範囲を限定することができる。この範囲は、グラフ全体の規模には依存しないので、1つのノードを追加配置する際の計算量はO(1)であり、全ノードの配置の計算量はO(N)となる。
従来のグラフデータのグラフィックス表示技術における力学モデルの計算時間は、最悪の場合でO(N2)程度であるから、本実施の形態による力学モデルの局所的な適用により、大幅な高速化を達成できることとなる。
【0035】
図10は、ノード配置部22において、ノードが1個追加配置された場合に、そのノードとの相互間力によって変位するノードの位置を算出する処理を説明するフローチャートである。
図10に示すように、新たにノードN0をディスプレイ空間に配置すると(ステップ1001)、ノード配置部22は、この追加配置したノードN0に「変位中」のフラグを立てる(ステップ1002)。
【0036】
次に、ノード配置部22は、既にディスプレイ空間に配置されているノードの中で、ノードN0とアークで連結されているm個のノードに対して、バネモデルによる力を算出する。また、既にディスプレイ空間に配置されているノードの中で、ノードN0とアークで連結されておらず、かつノードN0から一定の距離以内にあるk個のノードのみに対して分子間力モデルによる力を算出する(ステップ1003、1004)。
【0037】
対象となる全てのノード(m個のノード及びk個のノード)に対してバネモデルによる力の算出と分子間力モデルによる力の算出とが終了したならば、次に、ノード配置部22は、ノードN0及び(k+m)個の対象ノードのみに対して、運動方程式によって変位を算出する(ステップ1005)。そしてさらに、一定以上の変位が生じたノードに対して「変位中」のフラグを立てる(ステップ1006)。
【0038】
ステップ1006により「変位中」のフラグが立てられたノードが存在するならば、次に、ノード配置部22は、この「変位中」のフラグが立てられたノードを対象として、アークで連結されているノード及び十分近い距離にあるノードとの相互間力を求め、変位を求める(ステップ1007、1003〜1005)。以上の処理を、ステップ1006において「変位中」のフラグが立てられるノードがなくなるまで反復する。
なお、ステップ1003乃至ステップ1006の処理を、「変位中」のフラグが立てられるノードがなくなるまで繰り返すのではなく、一定回数繰り返したところで打ち切り、処理を終了するように設定することもできる。
【0039】
図11は、ノード配置部22によるノードの配置及びこれに基づくノードの変位の様子を説明する図である。
図11(A)は、既にいくつかのノードがレイアウトされている状態である。また、図11(B)は、図11(A)の状態のグラフィックスに1個のノードN0が追加され、ノードN0に「変位中」のフラグが立てられた状態である(図10、ステップ1001、1002参照)。このとき、ノードN0と、アークで結ばれたノードまたはノードN0とアークで結ばれていないが十分近い距離にあるノードとの間の力が算出される(図10、ステップ1003、1004参照)。
【0040】
次に、算出された力に基づいて各ノードの変位が算出され、グラフィックスに反映される(図10、ステップ1005参照)。そして、移動量が大きいノードについて、改めて「変位中」のフラグが立てられる。図11(C)は、図11(B)の状態に対して、ノードN0の追加によりノードが変位した状態を示す。図11(C)における着色されたノードは、移動量が大きく、「変位中」のフラグが立てられたノードである。
【0041】
この後、「変位中」のフラグが立てられたノードに対して、同様に力を算出し、ノードを変位させ、移動量の大きいノードについて「変位中」のフラグを立てるという操作が繰り返し実行される。
図11(D)は、図11(C)に示された「変位中」のフラグが立てられたノードに関して、アークで結ばれたノードまたは近隣のノードとの間の力が算出された様子を示す。また、図11(E)は、図11(D)の状態において算出された力に基づいて各ノードの変位が算出され、グラフィックスに反映された状態を示す。図11(E)における着色されたノードは、移動量が大きく、「変位中」のフラグが立てられたノードである。また、図11(F)は、図11(E)に示された「変位中」のフラグが立てられたノードに関して、アークで結ばれたノードまたは近隣のノードとの間の力が算出された様子を示す。
【0042】
アーク曲線化部23は、ノード配置部22により作成されたグラフィックスにおいて、アークとノードが重なっている場所があるかどうかを調べる。そして、ノードと重なっているアークを曲線化し、ノードを迂回して重なりを解消する。以下、この処理の手順を詳細に説明する。
【0043】
図12は、アーク曲線化部23によるアークを曲線化する処理を説明するフローチャートである。
図12に示すように、アーク曲線化部23は、ノード配置部22によりノードの配置がなされたグラフデータを入力すると(ステップ1201)、グラフを構成するアークに対して、ノードとの重なりがあるかどうか判定する(ステップ1202、1203)。そして、ノードと重なるアークがある場合、そのアークを細かい線***に分割する(ステップ1204)。
【0044】
図13は、アークの分割点の位置を算出する処理を説明する図である。
アーク曲線化部23は、2つのノードNa、Nbを連結する直線アークNaNbを処理対象とし、まず、直線アークNaNbに対して一定の距離以内の極めて近い位置にノードが存在するか探す。そのような近い位置に最低1個のノードNiがある場合には、直線アークNaNbを(n+1)本に分割する(図13(A)参照)。
続いて、ノードNiに連結されたアークと、直線アークNaNbの交差数を判定する。直線アークNaNbが、ノードNiを回り込むように曲線化されたほうがアークどうしの交差数が減るのであれば、ノードNiを回り込むように分割点の初期位置を算出する(図13(B)参照)。
【0045】
全てのアークをチェックし、ノードとの重なりのあるアークを全て細かく分割したならば、次に、アーク曲線化部23は、当該アークの分割点に力学モデルを適用して作用する力を算出する(ステップ1205)。
本実施の形態では、アークにおけるn個の分割点に対して、以下の4種類の力を作用させる。
(A)アークを分割して生成される分割点と近隣ノードとの距離を一定以上に保つための分子間力モデル。
(B)アークを分割して生成される線分列とそれに平行な近隣アークとの距離を一定以上に保つためのバネモデル
(C)アークを分割して生成される線分列の各々の長さを一定にするバネモデル
(D)アークを分割して生成される線分列の曲率を一定にするバネモデル
図14は、これらの力の作用を図示した概念図である。
【0046】
ここで、(A)の力については、分割点と近隣ノードとの間の距離の関数を用いて、引力または斥力を算出する。(B)の力については、分割点と近隣アークとの間の距離の関数を用いて、引力または斥力を算出する。(C)の力については、分割点と隣接分割点の間の距離の関数を用いて、引力または斥力を算出する。また、(D)の力については、例えば、下記の文献2に開示されているバネモデルを用いて、引力または斥力を算出する。
文献2:山田敦, 嶋田憲司, 古畑智武, Ko-Hsiu Hou, 離散的なバネモデルを用いた滑らかな曲線、曲面生成手法, 情報処理学会グラフィックスとCAD/Visual Computing 合同シンポジウム '99, pp.43-48, 1999.
この(D)の「曲率を一定にする力」によって、アークは滑らかなカーブを描く曲線を形成することとなる。このため、アークを線分列に分割したとき「折れてみえる部位」をノードと誤読することを防止することができる。
【0047】
以上のようにして、ステップ1204で分割された各アークの分割点Pi(i=1…n)に対して、ステップ1205において作用する力を算出した後に、運動方程式を用いて分割点Piの変位を求める(ステップ1206)。この場合、Runge−Kutta法などの微分方程式解法を用いて反復的に分割点の変位を求めることにより、分割点の安定な位置を求めることができる。
【0048】
図15乃至図19に、本実施の形態を実際に種々のグラフデータに適用してグラフィックス表示を実行した場合の実行例を示す。
図15は、ノードを1個ずつ追加してゆき、10個のノードを配置するグラフデータのグラフィックス表示の経過を示す。図示のように、本実施の形態では、1個ずつノードを追加しながら、その都度、既に配置されているノードとの間で力を作用させて位置を修正してゆく。このため、図15(I)に示すように、最終的に、各ノード間の関係を把握しやすいバランスの取れたグラフィックス表示を行うことができる。
【0049】
図16は、70個のノードを持つグラフデータのグラフィックス表示を行う過程を6コマ表示したものである。この場合も、ノードを追加するたびに各ノードの位置を修正してゆくので、図16(F)に示すように、各ノード間の関係を把握しやすいバランスの取れたグラフィックス表示を行うことができる。
【0050】
図17は、図16と同様のグラフデータに関して、従来手法による配置結果と本実施の形態による配置結果とを比較したものである。ここで、従来手法とは、力学モデル(バネモデル及び分子間力モデル)を適用しつつ、全てのノードを最初から配置して運動方程式を反復的に解く手法である。
従来手法による配置結果を示す図17(A)と本実施の形態による配置結果を示す図17(B)とを比較すると、双方ともノードの重なりやアークの交差が少なく、比較的良好な配置結果を得ることができた。しかし、従来手法の処理に要した計算時間は73秒であり、本実施の形態の処理に要した計算時間は19秒であった。したがって、本実施の形態の方が大幅に高速であることがわかる。
【0051】
図18は、100個のノードを持ち、格子状のトポロジーを持つグラフデータに関して、従来手法による配置結果と本発明による配置結果とを比較したものである。
従来手法による配置結果を示す図18(A)を参照すると、ノードの初期位置が適切に設定できなかったため、格子状のトポロジーが視覚的に把握しにくい配置結果となっている。これに対し、本実施の形態による配置結果を示す図18(B)を参照すると、格子状のトポロジーが視覚的に把握しやすい配置結果を得ることができた。
また、従来手法の処理に要した時間は149秒であり、本実施の形態の処理に要した計算時間は31秒であった。したがって、この例においても、本実施の形態の方が大幅に高速であることがわかる。
【0052】
図19は、アークを曲線化することによりグラフデータの構造を一層把握しやすくした様子を示す。
全てのアークを直線で描画した図19(A)を参照すると、画像中右方の2、3のノード付近でアークが重なったり交差したりしており、ノード間の関係が把握しにくくなっている。これに対し、ノードの近くを通るアークを曲線化してこのノードを迂回させた図19(B)を参照すると、アークとノードとの間隔が適度に保持され、アークとノードとが重なることを回避している。さらに、画像の左下部分に見られるように、アークの回り込みによって、アークどうしの交差を減少している部位もある。これらの効果により、ノード間の関係の把握が容易となり、グラフデータの誤読を避けることができる。
【0053】
図20は、本実施の形態を具体的なグラフデータのグラフィックス表示に適用した例を示す図である。
図20に示す適用例では、ウェブページのリンク構造を視覚化している。具体的には、「表紙ページ」から「会社概要」、「採用情報」、「製品一覧」といったページ、さらにその下位に位置付けられたページなどからなる会社紹介のウェブサイトにおいて、個々のウェブページをノードとして、個々のリンクをアークとして、ウェブページ間のリンク構造をグラフ化して視覚化している。
なお、本実施の形態によるグラフデータのグラフィックス表示技術は、図20に示したようなウェブページのリンク構造の他にも、次に示すような分野において利用し、組織構造を視覚化するのに好適である。
1.計算機システムのネットワークをグラフ化し、トラフィック量の管理や故障検知に用いる。
2.金融、交通、通信などのネットワークをグラフ化し、トランザクション量の理解や将来予測に用いる。
3.自治体や会社人事など、階層構造をもつ組織のネットワークをグラフ化し、人的リソースの最適化を図る。
4.テキストデータ群や画像データ群に対して、個々のデータをノードとし、それを関連性でリンクつけしてグラフ化し、データ全体の構成や傾向を理解する。
5.遺伝子データ中のシーケンスパターンをノードとし、それを関連性でリンクつけしてグラフ化し、特徴や法則を見つける。
6.ソフトウェアのプログラミング環境中で、関数やクラスをノードとし、それらの呼び出し関係などでリンクつけして、プロジェクト単位でサブグラフを構成し、ソフトウェアの開発状況を理解する。
【0054】
【発明の効果】
以上説明したように、本発明によれば、グラフデータのグラフィックス表示における処理速度の向上を図り、ノードの配置結果における品質と高速な処理という要求を高度に両立させることができる。
【0055】
また、本発明によれば、より高品質なノードの配置結果を得ることができるグラフデータのグラフィックス表示技術を提供することができる。
【図面の簡単な説明】
【図1】 本実施の形態によるグラフデータのグラフィックス表示技術を実現するコンピュータシステムの構成を示す図である。
【図2】 本実施の形態によるグラフデータのグラフィックス表示を実行するグラフィックス作成システムの構成を説明する図である。
【図3】 本実施の形態のグラフィックス作成システムによるグラフィックス作成処理の全体的な流れを示すフローチャートである。
【図4】 本実施の形態のノード配置順決定部によるノードの配置順を決定する動作を説明するフローチャートである。
【図5】 グラフデータのグラフィックス表示において、隣接アークの多いノードを空間の中心部に配置する方が良好な結果を得られることを説明する図である。
【図6】 図4のステップ405の処理を行う効果を説明する図である。
【図7】 グラフデータのグラフィックス表示を行う過程で無用なグラフの分離を避ける手法を説明する図である。
【図8】 本実施の形態にて用いられるバネモデルの関数を示す図である。
【図9】 本実施の形態にて用いられる分子間力モデルの関数を示す図である。
【図10】 本実施の形態のノード配置部による処理を説明するフローチャートである。
【図11】 本実施の形態のノード配置部によるノードの配置及びこれに基づくノードの変位の様子を説明する図である。
【図12】 本実施の形態のアーク曲線化部によるアークを曲線化する処理を説明するフローチャートである。
【図13】 本実施の形態におけるアークの分割点の位置を算出する処理を説明する図である。
【図14】 図13に示すアークの分割点に対して作用させる力の概念を示す図である。
【図15】 本実施の形態を実際に種々のグラフデータに適用してグラフィックス表示を実行した場合の実行例を示す図であり、10個のノードを配置するグラフデータのグラフィックス表示の経過を示す図である。
【図16】 本実施の形態を実際に種々のグラフデータに適用してグラフィックス表示を実行した場合の実行例を示す図であり、70個のノードを持つグラフデータのグラフィックス表示を行う過程を6コマ表示した図である。
【図17】 本実施の形態を実際に種々のグラフデータに適用してグラフィックス表示を実行した場合の実行例を示す図であり、従来手法による配置結果と本実施の形態による配置結果との比較例を示す図である。
【図18】 本実施の形態を実際に種々のグラフデータに適用してグラフィックス表示を実行した場合の実行例を示す図であり、従来手法による配置結果と本実施の形態による配置結果との他の比較例を示す図である。
【図19】 本実施の形態を実際に種々のグラフデータに適用してグラフィックス表示を実行した場合の実行例を示す図であり、アークを曲線化することによりグラフデータの構造を一層把握しやすくした様子を示す図である。
【図20】 本実施の形態を具体的なグラフデータのグラフィックス表示に適用した例を示す図である。
【図21】 グラフデータのグラフィックス表示を行う上で要求される条件を説明する図である。
【図22】 グラフのノード間に分子間力を適用し、アークにバネモデルを適用した様子を示す図である。
【図23】 グラフデータのグラフィックス表示を行う上で好ましくないノードの初期配置の一例を示す図である。
【符号の説明】
10…コンピュータシステム、11…処理装置(CPU)、12…主メモリ、13…ディスプレイ装置、14…記憶装置、21…ノード配置順決定部、22…ノード配置部、23…アーク曲線化部
Claims (20)
- グラフデータに基づいてノードと当該ノード間を接続するアークとを含むグラフィックス・イメージを生成する処理部と、
前記処理部にて生成されたグラフィックス・イメージを表示する表示部とを備え、
前記処理部は、
前記表示部に表示されるディスプレイ空間に、ノードを順次追加しながら配置し、
ノードが追加配置されるたびに、追加された当該ノードと前記ディスプレイ空間に既に配置されているノードであって追加された当該ノードの近傍のノードとの間に所定の力学モデルを適用して各ノードの位置を修正することを特徴とするグラフデータ視覚化装置。 - 前記処理部は、前記ディスプレイ空間に追加されたノードと、当該追加されたノードに隣接されたアークに接続しているノード及び当該追加されたノードから一定以内の距離に位置するノードとの間に、前記力学モデルを適用して各ノードの位置を修正することを特徴とする請求項1に記載のグラフデータ視覚化装置。
- 前記処理部は、前記表示部に表示されるディスプレイ空間に、隣接するアークの数の多いノードから順に追加しながら配置することを特徴とする請求項1に記載のグラフデータ視覚化装置。
- 前記処理部は、前記ディスプレイ空間に先に配置するノードほど、当該ディスプレイ空間の中心に近い位置に配置することを特徴とする請求項3に記載のグラフデータ視覚化装置。
- 前記処理部は、前記表示部に表示されるディスプレイ空間に形成された前記グラフィックス・イメージにおいて、所定のノードに対して一定以内の距離に位置するアークを曲線化して当該ノードから遠ざける処理をさらに実行することを特徴とする請求項1に記載のグラフデータ視覚化装置。
- 前記処理部は、
前記ノードに対して一定以内の距離に位置するアークを分割し、
前記アークの分割点を前記ノードから遠ざけ、
前記分割点の間の線分列を一定の曲率の曲線に変換することを特徴とする請求項5に記載のグラフデータ視覚化装置。 - 前記処理部は、前記アークを分割して得られる線分を、当該線分と平行な近隣のアークに対して一定以上の距離を保持させることを特徴とする請求項6に記載のグラフデータ視覚化装置。
- 前記処理部は、前記アークを一定の長さの線分列に分割することを特徴とする請求項6に記載のグラフデータ視覚化装置。
- 視覚的な形態で出力されるグラフィックス・イメージをコンピュータにて生成するグラフィックス作成方法において、
前記コンピュータが、ディスプレイ装置に表示されるディスプレイ空間に、ノードを順次追加しながら配置するステップと、
前記コンピュータが、ノードが追加配置されるたびに、追加された当該ノードと前記ディスプレイ空間に既に配置されているノードであって追加された当該ノードの近傍のノードとの間に所定の力学モデルに基づく運動方程式を解くことにより各ノードの位置を更新するステップと
を含むことを特徴とするグラフィックス作成方法。 - 前記ノードの位置を更新するステップでは、前記ディスプレイ空間に追加されたノードと、当該追加されたノードに隣接されたアークに接続しているノード及び当該追加されたノードから一定以内の距離に位置するノードとの間に、局所的に前記力学モデルを適用し運動方程式を解くことによりノードの位置を更新することを特徴とする請求項9に記載のグラフィックス作成方法。
- 前記ノードを配置するステップは、
前記ディスプレイ空間へのノードの配置順を、隣接するアークの数の多いノードが先になるように決定するステップと、
決定された配置順に従い、前記ディスプレイ空間の中心から周辺へ向かってノードを配置するステップと
を含むことを特徴とする請求項9に記載のグラフィックス作成方法。 - 前記コンピュータが、前記ノードを配置するステップで前記ディスプレイ空間に配置されたノード間にアークを張り、端部のノード以外の所定のノードに近接しているアークを、当該所定のノードを迂回するように変形するステップをさらに含むことを特徴とする請求項9に記載のグラフィックス作成方法。
- 前記アークを変形するステップは、
前記ノードに対して一定以内の距離に位置するアークを分割するステップと、
前記アークの分割点を前記所定のノードから遠ざけるステップと、
前記分割点の間の線分列を一定の曲率の曲線に変換するステップと
を含むことを特徴とする請求項12に記載のグラフィックス作成方法。 - コンピュータを制御して、ノードと当該ノード間を接続するアークとを含むグラフィックス・イメージを生成するプログラムであって、
ディスプレイ装置に表示されるディスプレイ空間に、ノードを順次追加しながら配置する処理と、
ノードが追加配置されるたびに、追加された当該ノードと前記ディスプレイ空間に既に配置されているノードであって追加された当該ノードの近傍のノードとの間に所定の力学モデルを適用して各ノードの位置を更新する処理と
を前記コンピュータに実行させることを特徴とするプログラム。 - 前記ノードの位置を更新する処理では、前記ディスプレイ空間に追加されたノードと、当該追加されたノードに隣接されたアークに接続しているノード及び当該追加されたノードから一定以内の距離に位置するノードとの間に、局所的に前記力学モデルを適用してノードの位置を更新することを特徴とする請求項14に記載のプログラム。
- 前記ノードを配置する処理は、
前記ディスプレイ空間へのノードの配置順を、隣接するアークの数の多いノードが先になるように決定する処理と、
決定された配置順に従い、前記ディスプレイ空間の中心から周辺へ向かってノードを配置する処理と
を含むことを特徴とする請求項14に記載のプログラム。 - 前記ノードを配置する処理で前記ディスプレイ空間に配置されたノード間にアークを張り、所定のノードに対して一定以内の距離に位置するアークを曲線化して当該ノードを迂回するように変形する処理を、前記コンピュータにさらに実行させることを特徴とする請求項14に記載のプログラム。
- コンピュータを制御して、ノードと当該ノード間を接続するアークとを含むグラフィックス・イメージを生成するプログラムを格納した記憶媒体であって、
前記プログラムは、
ディスプレイ装置に表示されるディスプレイ空間に、ノードを順次追加しながら配置する処理と、
ノードが追加配置されるたびに、追加された当該ノードと前記ディスプレイ空間に既に配置されているノードであって追加された当該ノードの近傍のノードとの間に所定の力学モデルを適用して各ノードの位置を更新する処理と
を前記コンピュータに実行させることを特徴とする記憶媒体。 - 前記ノードを配置する処理は、
前記ディスプレイ空間へのノードの配置順を、隣接するアークの数の多いノードが先になるように決定する処理と、
決定された配置順に従い、前記ディスプレイ空間の中心から周辺へ向かってノードを配置する処理と
を含むことを特徴とする請求項18に記載の記憶媒体。 - 前記ノードを配置する処理で前記ディスプレイ空間に配置されたノード間にアークを張り、所定のノードに対して一定以内の距離に位置するアークを曲線化して当該ノードを迂回するように変形する処理を、前記コンピュータにさらに実行させることを特徴とする請求項18に記載の記憶媒体。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001109109A JP3790679B2 (ja) | 2001-04-06 | 2001-04-06 | グラフデータ視覚化装置、グラフィックス作成方法、プログラム及び記憶媒体 |
US10/114,729 US7486292B2 (en) | 2001-04-06 | 2002-04-02 | Graph data visualization and graphics preparation |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001109109A JP3790679B2 (ja) | 2001-04-06 | 2001-04-06 | グラフデータ視覚化装置、グラフィックス作成方法、プログラム及び記憶媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002312803A JP2002312803A (ja) | 2002-10-25 |
JP3790679B2 true JP3790679B2 (ja) | 2006-06-28 |
Family
ID=18961115
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001109109A Expired - Fee Related JP3790679B2 (ja) | 2001-04-06 | 2001-04-06 | グラフデータ視覚化装置、グラフィックス作成方法、プログラム及び記憶媒体 |
Country Status (2)
Country | Link |
---|---|
US (1) | US7486292B2 (ja) |
JP (1) | JP3790679B2 (ja) |
Families Citing this family (46)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8120618B2 (en) * | 2002-06-11 | 2012-02-21 | Hewlett-Packard Development Company, L.P. | System and method for visualization of objects using energy minimization of customized potential functions |
WO2004107210A1 (ja) * | 2003-05-28 | 2004-12-09 | Celestar Lexico-Sciences, Inc. | パスウェイ情報表示装置 |
EP1510940A1 (en) | 2003-08-29 | 2005-03-02 | Sap Ag | A method of providing a visualisation graph on a computer and a computer for providing a visualisation graph |
EP1510938B1 (en) * | 2003-08-29 | 2014-06-18 | Sap Ag | A method of providing a visualisation graph on a computer and a computer for providing a visualisation graph |
EP1510939A1 (en) * | 2003-08-29 | 2005-03-02 | Sap Ag | A method of providing a visualisation graph on a computer and a computer for providing a visualisation graph |
EP1510941A1 (en) * | 2003-08-29 | 2005-03-02 | Sap Ag | A method of providing a visualisation graph on a computer and a computer for providing a visualisation graph |
US7503070B1 (en) * | 2003-09-19 | 2009-03-10 | Marshall Van Alstyne | Methods and systems for enabling analysis of communication content while preserving confidentiality |
JP4849301B2 (ja) * | 2005-07-27 | 2012-01-11 | ソニー株式会社 | 情報処理装置および方法、並びにプログラム |
JP4566928B2 (ja) * | 2006-03-01 | 2010-10-20 | 三菱電機株式会社 | グラフ図形配置方法、プログラム及び装置 |
JP2007233821A (ja) * | 2006-03-02 | 2007-09-13 | Fujitsu Ltd | 図形編集プログラム,図形編集装置及び図形編集プログラムを記録したコンピュータ読取可能な記憶媒体 |
US8902231B2 (en) * | 2006-10-20 | 2014-12-02 | Alcatel Lucent | Method and apparatus for displaying graphical representations of graph layouts |
US8176169B2 (en) * | 2007-09-07 | 2012-05-08 | Emc Corporation | Method for network visualization |
US20090198562A1 (en) * | 2008-01-31 | 2009-08-06 | Guenter Wiesinger | Generating social graph using market data |
US20090319948A1 (en) * | 2008-06-20 | 2009-12-24 | Smartdraw.Com | Automated editing of graphics charts |
US8411085B2 (en) * | 2008-06-27 | 2013-04-02 | Microsoft Corporation | Constructing view compositions for domain-specific environments |
US20090322739A1 (en) * | 2008-06-27 | 2009-12-31 | Microsoft Corporation | Visual Interactions with Analytics |
US8620635B2 (en) * | 2008-06-27 | 2013-12-31 | Microsoft Corporation | Composition of analytics models |
US8762161B2 (en) * | 2008-10-06 | 2014-06-24 | Nice Systems Ltd. | Method and apparatus for visualization of interaction categorization |
US8654126B2 (en) * | 2008-12-11 | 2014-02-18 | At&T Intellectual Property I, L.P. | Methods, systems, and products for graphing data to reduce overlap |
US8314793B2 (en) * | 2008-12-24 | 2012-11-20 | Microsoft Corporation | Implied analytical reasoning and computation |
US9330503B2 (en) | 2009-06-19 | 2016-05-03 | Microsoft Technology Licensing, Llc | Presaging and surfacing interactivity within data visualizations |
US8493406B2 (en) * | 2009-06-19 | 2013-07-23 | Microsoft Corporation | Creating new charts and data visualizations |
US8788574B2 (en) * | 2009-06-19 | 2014-07-22 | Microsoft Corporation | Data-driven visualization of pseudo-infinite scenes |
US20100325564A1 (en) * | 2009-06-19 | 2010-12-23 | Microsoft Corporation | Charts in virtual environments |
US8692826B2 (en) * | 2009-06-19 | 2014-04-08 | Brian C. Beckman | Solver-based visualization framework |
US8866818B2 (en) | 2009-06-19 | 2014-10-21 | Microsoft Corporation | Composing shapes and data series in geometries |
US8531451B2 (en) * | 2009-06-19 | 2013-09-10 | Microsoft Corporation | Data-driven visualization transformation |
US8352397B2 (en) * | 2009-09-10 | 2013-01-08 | Microsoft Corporation | Dependency graph in data-driven model |
JP5423293B2 (ja) * | 2009-09-30 | 2014-02-19 | 富士通株式会社 | グラフ表示プログラムおよびグラフ表示方法 |
JP5387366B2 (ja) * | 2009-11-26 | 2014-01-15 | ソニー株式会社 | 情報処理装置、情報処理方法およびプログラム |
US9043296B2 (en) | 2010-07-30 | 2015-05-26 | Microsoft Technology Licensing, Llc | System of providing suggestions based on accessible and contextual information |
JP5564579B2 (ja) * | 2011-01-14 | 2014-07-30 | 株式会社日立製作所 | フローチャート描画装置、フローチャート描画方法およびプログラム |
US9098941B2 (en) * | 2012-01-23 | 2015-08-04 | Ayasdi, Inc. | Systems and methods for graphical layout |
JP5700841B2 (ja) * | 2012-02-08 | 2015-04-15 | 日本電信電話株式会社 | グラフデータ可視化表示装置及び方法及びプログラム |
US8832582B2 (en) | 2012-03-15 | 2014-09-09 | Microsoft Corporation | Interactive control of the curvature of links |
JP5903394B2 (ja) * | 2012-12-25 | 2016-04-13 | 日本電信電話株式会社 | グラフ視覚化表示装置及び方法及びプログラム |
JP2014191757A (ja) * | 2013-03-28 | 2014-10-06 | Fujitsu Ltd | 情報処理方法、装置及びプログラム |
US9734166B2 (en) * | 2013-08-26 | 2017-08-15 | International Business Machines Corporation | Association of visual labels and event context in image data |
US10142353B2 (en) | 2015-06-05 | 2018-11-27 | Cisco Technology, Inc. | System for monitoring and managing datacenters |
US10536357B2 (en) | 2015-06-05 | 2020-01-14 | Cisco Technology, Inc. | Late data detection in data center |
US9858248B2 (en) * | 2016-03-29 | 2018-01-02 | International Business Machines Corporation | Hotspot navigation within documents |
JP6624648B2 (ja) * | 2017-03-16 | 2019-12-25 | 株式会社アルム | 情報処理装置、情報処理方法、および情報処理プログラム |
US11310121B2 (en) * | 2017-08-22 | 2022-04-19 | Moovila, Inc. | Systems and methods for electron flow rendering and visualization correction |
US11087048B2 (en) * | 2018-11-16 | 2021-08-10 | Two Six Labs, LLC | Dynamic updating of a force approximation data model |
US11714928B2 (en) * | 2020-02-27 | 2023-08-01 | Maxon Computer Gmbh | Systems and methods for a self-adjusting node workspace |
JP7402140B2 (ja) | 2020-09-23 | 2023-12-20 | 株式会社日立製作所 | 登録装置、登録方法、および登録プログラム |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2752762B2 (ja) * | 1990-02-02 | 1998-05-18 | 日本電気ソフトウェア株式会社 | ノードマッチング処理方式 |
FR2675606B1 (fr) * | 1991-04-22 | 1993-07-16 | France Telecom | Procede de decompilation pour la realisation de graphes au moyen d'un ordinateur. |
JPH06176162A (ja) * | 1992-12-02 | 1994-06-24 | Fujitsu Ltd | ネットワーク図形半自動編集装置 |
JP3346130B2 (ja) * | 1995-11-09 | 2002-11-18 | 三菱電機株式会社 | グラフ図形配置法およびその装置 |
JP3435956B2 (ja) * | 1996-01-29 | 2003-08-11 | 富士ゼロックス株式会社 | グラフイメージ表示装置及びグラフイメージ表示方法 |
US6774899B1 (en) * | 1997-09-18 | 2004-08-10 | Mitsubishi Electric Research Laboratories, Inc. | Drawing graphs using user selectable visual oragnization features and/or other user controlled constraints |
JP3484096B2 (ja) * | 1999-03-03 | 2004-01-06 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 有向グラフの論理的ズーム装置における論理的ズーム方法 |
JP2001034773A (ja) * | 1999-07-21 | 2001-02-09 | Nec Corp | グラフ図形表示方式 |
-
2001
- 2001-04-06 JP JP2001109109A patent/JP3790679B2/ja not_active Expired - Fee Related
-
2002
- 2002-04-02 US US10/114,729 patent/US7486292B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2002312803A (ja) | 2002-10-25 |
US7486292B2 (en) | 2009-02-03 |
US20020196292A1 (en) | 2002-12-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3790679B2 (ja) | グラフデータ視覚化装置、グラフィックス作成方法、プログラム及び記憶媒体 | |
CN103250031B (zh) | 路线选择***、路线选择方法和路线选择程序 | |
JP2020024711A (ja) | データ系統の要約 | |
JP7098793B2 (ja) | 因果関係表示システム及び方法 | |
JP2010176347A (ja) | 最短経路探索方法及び装置 | |
CN1755623A (zh) | 在应用程序内创建和布局图形的方法、***和计算机可读介质 | |
JP2007042108A (ja) | 電子テーブルの列を隠すためのコンピュータ実行方法、システム及びプログラム | |
US10635284B2 (en) | Interactive control of the curvature of links | |
JPH11134315A (ja) | 配置最適化問題処理方法及び配置最適化問題処理装置並びに配置最適化問題処理プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
JP5700841B2 (ja) | グラフデータ可視化表示装置及び方法及びプログラム | |
Olszewski et al. | Visualizing the template of a chaotic attractor | |
Konecny et al. | Systematic categorization and evaluation of CbO-based algorithms in FCA | |
JP2023523109A (ja) | 量子操作実行方法及び装置、量子操作の制御波形の生成方法及び装置、量子操作チップ、並びにコンピュータ装置及びプログラム | |
Mulderij et al. | A polynomial size model with implicit swap gate counting for exact qubit reordering | |
JP5903394B2 (ja) | グラフ視覚化表示装置及び方法及びプログラム | |
Liu et al. | Two novel MILP models with different flexibilities for solving integrated process planning and scheduling problems | |
CN114764554A (zh) | 波导总线及用于自动生成波导总线的布局的方法、*** | |
JP5824412B2 (ja) | グラフデータ視覚化装置及び方法及びプログラム | |
JP2022019432A (ja) | 割り当て装置、割り当て方法、及びプログラム | |
JP2016130962A (ja) | データ退避制御方法、データ退避制御プログラム、及びデータ退避制御装置 | |
JP7375931B2 (ja) | 表示制御装置および表示制御方法 | |
AlFailakawi et al. | Depth optimization for topological quantum circuits | |
US12051137B1 (en) | Channel-based framework for hierarchical drawings | |
JP7180524B2 (ja) | プログラム編集装置、プログラム編集方法、および、プログラム編集プログラム | |
US20240212242A1 (en) | Digital Representation of Intertwined Vector Objects |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050607 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050831 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20051206 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060227 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20060322 |
|
RD14 | Notification of resignation of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7434 Effective date: 20060322 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060403 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090407 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100407 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110407 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |