JPH07152919A - クラスタ採用グラフ - Google Patents

クラスタ採用グラフ

Info

Publication number
JPH07152919A
JPH07152919A JP6227128A JP22712894A JPH07152919A JP H07152919 A JPH07152919 A JP H07152919A JP 6227128 A JP6227128 A JP 6227128A JP 22712894 A JP22712894 A JP 22712894A JP H07152919 A JPH07152919 A JP H07152919A
Authority
JP
Japan
Prior art keywords
cluster
nodes
rank
graph
node
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.)
Withdrawn
Application number
JP6227128A
Other languages
English (en)
Inventor
Stephen C North
シー.ノース スチーヴン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
AT&T Corp
Original Assignee
American Telephone and Telegraph Co Inc
AT&T Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by American Telephone and Telegraph Co Inc, AT&T Corp filed Critical American Telephone and Telegraph Co Inc
Publication of JPH07152919A publication Critical patent/JPH07152919A/ja
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/206Drawing of charts or graphs

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)

Abstract

(57)【要約】 【目的】 クラスタを用いて有向グラフを自動的にレイ
アウトする複数の技法が開示される。 【構成】 この技法は、従来の技法によって生成された
ものよりも簡単に理解でき、より美しく、またよりコン
パクトなグラフの絵画的な表現を生成する。これらの技
法が有向グラフをレイアウトするための周知のDOTシ
ステムに加えられるが、これら技法は、グラフの節点を
ランク付けするための反復的技法、クラスタ内の節点が
順序付けされるときサブクラスタを骨格に崩壊するラン
ク内の節点を順序付けするための技法、及びランク付け
及び順序付けされた後に節点を位置決めするための技法
を含むが、この最後の技法は、節点に対するx座標を、
事実上、元のグラフが“そのサイドを中心として回転さ
れた”ものである補助グラフを生成し、この補助グラフ
内の節点にランクを割り当てることによって得る。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は情報のグラフ表示、より
詳細には、有向グラフのグラフ表示に関する。
【0002】
【従来の技術】有向グラフ(ダイグラフ)は集合の要素
間の階層或は非対称な関係を表現する一般的な方法であ
る。ダイグラフは、プロセス及び作業フロー、コンピュ
ータソフトウエアにおける制御フロー及びデータの依存
性、有限状態マシンの表現、及び他のアプリケーション
において自然に発生する。グラフのレイアウト或は製図
はそれらの構造を明らかにすることによってグラフを一
層理解し易いものにする。この理由のために、手書きの
レイアウトが文書化においてしばしば使用される。問題
は、手作業によるグラフのレイアウトは時間がかかり困
難なことである。このために、自動レイアウトプログラ
ムが発明されるようになった。ここでは、ユーザは、レ
イアウトジェネレータの入力に対する節点(node)及び
枝(edges) の仕様を作成する。この仕様はテキスト編
集プログラムを通じて入力することも、或はグラフ仕様
を他の形式のデータ、例えば、プログラムソースコード
から抽出するユティリティプログラムによって生成する
こともできる。この仕様は必ずしも幾何学的座標を含む
とは限らない。レイアウトシステムは、次に、この仕様
を読み、節点及び枝の座標を決定するアルゴリズムを実
行し、そして、グラフの製図の表現を含むグラフィック
ファイルを生成する。このファイルは表示のためにコン
ピュータ画面に伝送されたり、或は印刷のためにプリン
タに伝送されたり、或は将来の使用のために外部記憶デ
バイス上に保存される。
【0003】しばしば、複合システムのグラフ内の節点
はサブグラフ(subgraphs) に分類される。我々は、用
語“クラスタ(cluster) ”を節点の塊の輪郭を与える
ためにボックスを使用してレイアウト内に描かれた節点
誘導サブグラフを指すのに使用する。このボックスはそ
のクラスタ内に節点を含まないこともある。我々は、ク
ラスタへの節点のクラス分けはユーザーによって、外部
ユティリティによって、或は他の適当な技法によって遂
行されるものと想定する。典型的には、このクラス分け
は、アプリケーション依存情報、或はグラフの構文特性
に依存する。この分解が反復的である場合は、クラスタ
は入れ子にされる。例えば、ソフトウエアエンジニアリ
ングにおけるフォーマルメソッド(formal methods)か
らのプロセス分解ダイアグラムはこのような構造を示す
ことがある。これに関しては、例えば、Harry S.Deluga
chによって、Journal of Systems Software 19、19
92年発行、ページ207−224に掲載の論文『概念
グラフによる多重ビューソフトウエア要件の指定(Spec
ifying Multiple-Viewed Software Requirements with
Conceptual Graphs)』;Robert W.Krut,Jr.及びDavid
P.Woodによる論文『プロセスモデリングの改善の評価
(Evaluation of Process Modeling Improvements)』
、技術報告CMU/SEI−91−TR5、Software
Enginnering Institure、Carnegie-Mellon Universit
y、1991年4月発行を参照すること。
【0004】この領域での最も重要な以前の研究は、Su
giyama及びMisue の“複合グラフ(compound graph)”
レイアウト技法であるが、これに関しては、IEEE Trans
actions on Systems,Man,and Cybernetics SMC−1
2:4、1991年6月発行、ページ876−892に
掲載の論文『構造化された情報の視覚化:複合ダイグラ
フの自動製図(Visualization of Structural Informat
ion:Automatic Drawing of Compound Diraphs)』 を参
照すること。これは、入れ子にされたクラスタにてダイ
グラフを描くための発見的アルゴリズムの収集である。
この技法は、単純な或は従来の節点から節点への枝のレ
イアウトばかりでなく、“複合”枝、つまり、図11に
見られるような節点からクラスタ及びクラスタから節点
への枝のレイアウトをサポートする。Newbery 及びTich
y のEdgeシステムも率直な反復によって入れ子にされた
レイアウトを扱う。
【0005】これに関しては、Frances Newbery Paulis
h 及びWalter F.Tichyによって、Software: Practice a
nd Experience 、20:S1、1990年発行、ページ
1/63−S1/88に掲載の論文『EDGE: 拡張可能な
グラフエディタ(EDGE: An Extendible Graph Edito
r)』、及びこれもまたFrances Newbery Paulish によ
るPh.D学位論文『拡張可能なグラフエディタの設計(Th
e design of an extendible graph editor)』、Ph.D学
位論文、University of Karlsruhe 、1992年1月、
を参照すること。この研究からのグラフが図13に示さ
れる。Messinger らは、Compoze システム内に反復レイ
アウト技法を実現する。ここでは、主要な目的は性能を
向上させることであり、従って、クラスタは内部データ
構造であり、出力内には明示的には描かれない。これに
関しては、E.B.Messinger 、L.A.Rowe及びR.H.Henry に
よって、IEEE Transactions on Systems,Man and Cyber
netics, SMC−21:1991年発行、ページ1−1
2に掲載の論文『大きな有向グラフの自動レイアウトの
ための分割統治アルゴリズム(A Divide-and-Conquer A
lgorithm for the Automatic Layout of Large Directe
d Graphs)』を参照すること。彼等の研究からのもので
ある図12内においてはこれらの内部クラスタが目につ
く。Brown 及びGargiuloは我々とは幾分か異なる審美的
基準に従う入れ子にされたグラフレイアウトを作成する
技法について説明するが、彼等は、枝と置換し、これに
よってレイアウト内のクラスタを低減するために入れ子
にされたボックス表記法(nested box notation) を採
用する。これに関しては、P.Brown及びT.Gargiuloによ
って、Proc.IEEE Symposium on Assessment of Quality
Software Development Tools 、1992年5月発行、
ページ164−171に掲載の論文『有向グラフの対象
本位のレイアウト』を参照すること。
【0006】有向グラフのレイアウトと回路(VLSI
或は基板レベル)のレイアウトとの間には類似性が存在
するが、但し、根本的な差異がある。いずれのケースに
おいても、ユーザは要素及びそれらの相互関係を指定す
る。システムは次に要素の配置及び相互接続の経路を決
定する。差異は、レイアウトの品質を測定する目的関数
のタイプにある。グラフの視覚化の目的は、グラフデー
タを人が理解することを助けることにある。回路レイア
ウトの場合は、目的は、致命的な経路遅延、パワー消
費、レイアウト面積等を低減することによって回路性能
を最適化することにある。これらは、結果として非常に
異なるしレイアウトスタイルへと導く。グラフレイアウ
ト及び関連するダイアグラムの読み易さに関してのこれ
以上の議論については、P.Eades 及びR.Tamassiaによっ
て、Brown University Dept.of Computer Science,Tech
nical Report、CS-09-89、1989年発行に掲載の論文
『グラフを描くためのアルゴリズム:注釈付参考文献
(Algorithms for Drawing G、raphs:An Annotated Bib
liography)』 を参照すること。更新された版がPostSc
riptファイルとして入手できる(anoymous ftp to wilm
a.cs.brown.edu in pub/gdbiblio.ps.z.)。これに関し
ては、P.Eades 及びL.Xueminによって、Proc.IEEE Work
shop on Visual Language(VL'89)、1989年、ページ
13−17に掲載の論文『有向グラフをいかに描くか』
も参照すること。
【0007】
【発明が解決しようとする課題】上の議論から明らかな
ように、人によって読まれることを目的とする有向グラ
フのレイアウトは、読み易さ、審美的な美しさ、及び表
現のコンパクトさを考慮にいれるべきである。ここに開
示される発明の一つの目的は、従来の技術によって提供
されるものよりもより読み易く、より美しく、よりコン
パクトな有向グラフを自動的に生成することにある。
【0008】
【課題を解決するための手段】本発明のグラフを描く技
術は、局所的レイアウト決定と大域的レイアウト決定の
妥協点を探す。結果として、個々のクラスタの内部レイ
アウトは、これらが図面の残りの部分から離れて考慮さ
れた場合は適当であり、しかも、大域的なレイアウトも
また情報に富み、審美的にも美しいグラフが得られる。
我々の技法に従って作成されるグラフは、従って、Mess
inger によって指摘される:クラスタの大域的配置或は
それらの内部レイアウトのいずれかが、単純な反復の場
合のようにあまりにも早期に固定された場合は、結果と
して貧しいレイアウトとなるという問題を回避する。こ
こで開示される装置及び方法の他の目的及び長所は、当
業者においては、以下の図面及び詳細な説明から明白と
なるものである。
【0009】
【実施例】好ましい実施例の詳細な説明 以下の詳細な説明においては、最初に本発明が紹介さ
れ、この発明の周知のDOTレイアウトシステムとの関
係が説明され、次に本発明において採用される新規の技
法が詳細に説明される。
【0010】導入 我々の発明は図面(1、8、10、15、16、17)
に示されるように、入れ子にされたクラスタを用いて有
向グラフを描く方法に関する。入力ファイルは、従来の
節点及び枝のリストに加えて、クラスタの入れ子構造
(及びオプションとしての形状、色、スタイル、及びフ
ォント選択などのようなグラフ表示仕様)を指定する。
出力レイアウト内においては、クラスタはサブグラスを
描くのに要求されるように重複の内或は入れ子にされた
ボックスの形式にて描かれる。
【0011】以下の説明においては、我々は図1のグラ
フを基本的な例として使用する。101とマークされる
要素はグラフの節点である。要素103は枝であり(孤
とも呼ばれる)。105とマークされた一群の節点はラ
ンクである。要素111、113、及び115はクラス
タである。この例においては、クラスタ113はクラス
タ111の内側に入れ子にされる。図18は図1のレイ
アウトに対する対応する入力ファイルである。我々のこ
の好ましい実施例はDOTレイアウトシステムの修正で
ある。このシステムは 1.グラフ表現及びファイルI/Oルーチン 2.ランク割り当てアルゴリズム 3.ミニクロスアルゴリズム 4.最終座標割り当てアルゴリズム 5.スプライン挿間アルゴリズム 6.グラフィックコード発生器 から構成される。
【0012】我々はDOTレイアウトシステムのこれら
の要素については以前に様々なところで説明してきた。
これらに関しては、E.R.Gansner 、E.Koutsofios、S.C.
North 、及びK.P.Voによって、IEEE Transactions on S
oftware Engineering 、19:3、1993年3月発
行、ページ214−230に掲載の論文『有向グラフを
描くための技法(A Technique for Drawing Directed G
raphs)』 ;並びにS.C.North 及びK.P.Voによって、US
ENIX Winter Conference Proceedings(USENIX冬季会議
議事録)、1993年1月発行、ページ1−11に掲載
の論文『辞書及び抜粋グラフに対する改良されたライブ
ラリ(Improved Libraries for Dictionaries and Abst
ract Graphs)』 を参照すること。これら出版物はここ
に参考のために本発明の特許出願に編入される。以下の
説明においては、我々はDOTの要素2、3、4がクラ
スタレイアウトを扱うためにいかに修正されたかを説明
する。
【0013】データ構造 我々の技法においては、節点、枝、及びグラフ並びにサ
ブグラフを表すために以下のデータ構造が使用される。
全てのレイアウト次元はインチ当たり72ユニットの省
略時座標系を想定する。節点属性 width 節点形状のX座標次元 heigth 節点形状のY座標次元 rank 整数ランク割り当て(0は最小ランク、つま
り、レイアウトの頂上を示す。) order レイアウトの同一ランク内の節点に対して左
から右へのインデックス type REAL、VIRTUAL 、或はRANKLEDER (四節を参
照)枝属性 weigth レイアウト内の枝の相対コスト(省略時
1.0) minlen 最小長或は頭と尻との間のランク差(省
略時1) headport 頭節点センタに対する頭終点の座標 tailport 尻節点センタに対する尻終点の座標 to-virtual レイアウト内のこの枝を表す一時枝への
ポインタ to-original この枝がレイアウト内で表わす入力枝へ
のポインタ count この枝によって表される枝の数(省略時
1)
【0014】グラフ/サブグラフ属性 nodesep 隣接する節点及び/或はクラスタ境界間の最
小問題 minrank 任意の節点の最小ランク番号 maxrnak 任意の節点の最大ランク番号 vlist ランク及びオーダによって指標付けされる節
点の二次元配列
【0015】ランクの割り当て:図1、2及び3 我々は、このレイアウトが狙いを持つ矢印に対するトッ
プからボトムへの方向を持つものと想定する。トップ・
ツウ・ボトム製図(top-to-bottom drawing)の入力及
び出力座標に関して標準のグラフィック変換を遂行する
ことによって別の方位、例えば、左から右への方向を持
つようにすることも考えられる。おそらくはクラスタを
含むグラフG内の節点の整数ランク割り当ては、主手続
きrank(G) 及び再帰手続きcompute-relative_ranks(G)
によって計算される。この手続きは、任意の節点が入れ
子の任意のレベルにおいて最大でも一つのクラスタに属
することを想定する。要求される場合は、この条件が外
部予備処理ステップ(ここでは説明なし)によって強制
される。
【数1】
【0016】我々は、break_cycles(ライン2)及びne
rwork_simplex (ライン14)の説明は、これらルーチ
ンが既に説明されているために省略する。これに関して
は、E.R.Gansner 、S.C.North 、及びK.P.-Vo に199
0年8月に交付された『有向グラフを描くための方法
(A method for drawing directed graphs)』という名
称の合衆国特許第4,953,106号;及び前述のこ
こに本出願に参照のために編入されたGansner、Koutsof
ios、North、Voによる論文を参照すること。主要な考え
は、入力グラフ内の任意のサイクルが深さ優先探索にお
いて検出されたバック枝(back-edges)を逆転すること
によって破られることである。逆転された枝は、出力図
面内の矢の頭が元の方向を反映するように論理標識によ
ってマークされる。
【0017】ライン6−14内の手続き“compute_rela
tive_ranks”は、Gの節点に対するランク割り当てを決
定する。Gは主グラフ或はクラスタサブグラフであり得
る。我々は、G内の節点をそれらがGのサブクラスタ内
に含まれる場合はbound (拘束されている)と分類し、
そうでない場合は、free(自由である)と分類する。出
口において、三つの条件が満足される。第一に、Gの個
々の自由の節点は、そのランク割り当てにてラベル付け
される。第二に、Gの各拘束された節点は、それが属す
る最もレベルの低いクラスタとの関連でそのランク割り
当てにてラベル付けされる(個々の全ての節点は入れ子
の任意のレベルにおいて一つ以上のクラスタには属さな
いものと想定される。必要であればこの条件は外部予備
処理によって強制される。)第三に、Gの内側の個々の
全てのクラスタは、その節点のGの自由節点に対するラ
ンク割り当てオフセットにてラベル付けされる。このラ
ベル付けは節点の大域的ランク割り当てを決定すること
に注意する。我々はこの計算を全ての相対ランク割り当
てが知られる時点(ライン4)まで延期する。
【0018】compute_relative_ranksは反復(ライン7
−8)によってGのクラスタ内の節点の相対ランク割り
当てを発見することから開始する。この反復は葉クラス
タ(サブクラスタを含まないクラスタ)の所で終端す
る。相対ランク割り当てはGの外側の任意の節点或は枝
には依存しない。レイアウトへのこの効果は、クラスタ
がコンパクトになり、これらのレイアウトがそれらの内
部階層を強調することを助けることである。拘束された
節点の相対ランク割り当ては固定されているため、各ク
ラスタHはHと関連する新たな一時的或は“仮想”ノー
ドvH に崩壊される。Hの節点はGから一時的に除去さ
れ、補助リスト内に格納される。全てのクラスタがこの
方法によってランク付け及び崩壊された後に、このアル
ゴリズムの残り(ライン11−15)はG内の自由節点
及び崩壊されたクラスタをランク付けする。Gの枝が走
査され、拘束された終点を持つ枝が図3に示される構造
によって一時的に置き換えられる。この構造は、関数pr
oxy_edges によって生成される。
【0019】クラスタHのランクは、節点vH のポート
として扱われる。ここでHのi番目のランクは、vH
中央からオフセットされた座標(i、0)を持つポート
に翻訳される。ポートの扱いはその後、前述のGansner
、Koutsofios、North 、Voの方法に従い、その節点ポ
ートオフセットに従ってクラスタ内枝の最小長さが調節
される。図3においては、クラスタ301及び307は
仮想節点313及び315に崩壊される。クラスタ内枝
302は仮想節点317並びに仮想節点319及び32
1によって置換される。枝319及び321のminlengt
h (最小長)を計算するために、我々は、端点303及
び309の局所ランクを調べる。r=rank(node 309)−
rank(node 303)+1であるものとする。(定数1はこれ
らクラスタが置かれたときの尾から頭までの要求される
ランク差である。)一般的なケースにおいては、r>0
の場合は、minlen(edge 321)=r+mO及びminlen(edge
319) =mO にセットする。そうでない場合は、minlen
(edge 319)=−r+mO 及びminlen(edge 321)=mO
セットする。(典型的には、mO =0とされるが付属の
図面においては、ダイアグラム内の0−長枝を回避する
ためにmO =1とされる。)要求される枝方向を支持す
るために、weight(node 319)=321及びweight(edge
319)=wO にセットする。我々の実現においては、wO
=10とされる。Hの崩壊(ライン10)は、クラスタ
間枝は図示されるように置換されるために、有向枝のク
ラスタ間サイクルを生成することはできない(これは手
続きnetwork_simplex 内にエラーを発生される)。結果
として、クラスタ間枝が大域ランク番号が増加する方向
に常に方位されることがなくなるが、仮想枝重みの不均
衡が要求されるトップからボトムへの方位を強く支持す
る。
【0020】ライン16における“compute_relative_r
anks”からの出口の所で、(仮想節点によって表される
ように)自由な節点及びクラスタへのランクの割り当て
が完了する。次に、全ての節点の大域ランク割り当てが
ライン4から呼び出された手続き“compute_absolute_r
anks”を別個に横断することによって遂行される。ここ
では、クラスタH内の全ての自由な節点vが以下のよう
に調節される。 rank(v)=rank(vH)+rank(v)
【0021】従来の方法と比較してのこのランク割り当
て方法の長所は、クラスタが他のクラスタ及び自由節点
と垂直に重複することが許され、これでも、枝の意図さ
れたトップからダウンへの方向がおおむね追従されるこ
とである。これはクラスタがメタ節点に崩壊され、離散
された非重複ランク上に置かれる従来のアプローチより
も一層コンパクトなレイアウトを与える。従来の方法に
おいては、クラスタメタ節点のサイズが広く変動し、コ
ンパクト性が欠如するためにレイアウト面積の大きな損
失となり、また、枝が不必要に伸ばされ、レイアウトが
読み苦しくなる。
【0022】我々は、この技法が図1の一例としてのグ
ラフにいかにして適用されるかを説明する。図2(a)
及び2(b)はクラスタ113及び115の初期ランク
割り当てを示す。図2(c)はクラスタ111のランク
割り当てを示すが、ここでは、クラスタ113が崩壊さ
れ、近似構造によって置換されている。最後に、図2
(d)は主グラフのランク割り当てを示すが、ここで
は、111及び113が同様にして崩壊されている。
(図1に示されるような)111、113及び115内
の節点の大域ランク割り当ては、vH のオフセットを加
算することによって決定される。例えば、図2(d)内
のrank(v111)は1であり、節点dはクラスタ111内に
相対ランク3を持ち、従って、この大域ランク番号は1
+3=4となる。図7と図8、及び図9と10の比較
は、クラスタランク割り当てのこの方法が従来の方法と
比較して、いかによりコンパクトで情報に富んだレイア
ウトを与えるかを実証する。
【0023】ランク内の節点順序:図1、4 このフェーズへの入力はおそらくはクラスタを含むラン
ク付けされたグラフGである。入力ランク割り当ては、
2節のプログラム、或は任意の他の技法によって決定す
ることができる。出力は、ある与えられたランク内の節
点順序のラベル付けである(0は最も左位置)。この順
序付けは、クラスタを重複を持たない境界長方形にて描
くことを可能にする。必要な出力条件は以下の通りであ
る。つまり、C0 及びC1 がクラスタであり、いずれも
他方の先祖でなく、また、u0 ∈C0 、u1 ∈C1 であ
り、rank(u0)=rank(u1)及びorder(u0)<order(u1)であ
る場合は、v0 ∈C0 、v1 ∈C1 もまた存在せず、ra
nk(v0)=rank(v1)及びorder(v0)>order(v1)であるとい
う条件である。非形式的には、C0 はそれらが共通に持
つ全てのランク上でC1 の左に来る。
【0024】我々のアプローチはSugiyamaの反復発見的
アルゴリズムのDAGバージョンの修正である。我々
は、この発見的アルゴリズムmincrossと呼ぶが、これ
は、これが枝の交差を回避するように節点を位置するた
めである。この発見的アルゴリズムの重要な修正は、ク
ラスタレイアウトのために必要とされるが、これは、出
力の順序に関するクラスタ境界ボックス条件が異なるク
ラスタ内の節点が節点の順序付けの調節の際に相互混合
されないことを含蓄するためである。この条件を満足さ
せるためには、個々のクラスタレベル毎に操作し、サブ
クラスタを我々が骨格と呼ぶ仮想節点連鎖に崩壊するこ
とが便利である。これは、u0 、u1 、v0、v1 が全
て同一ランク上にあるときにこの出力条件を保証する。
また骨格がランク間で交差しないことを保証するため
に、我々は、骨格枝に非常に高いカウントを割り当て
る。我々の実現においては、32ビット整数算術が使用
できる場合はカウントは1000にセットされ、できな
い場合は、100にされる。この結果、骨格は、mincro
ssの際に相対位置を交換することができる。但し、実際
の使用においては、出力の順序内で交差することはな
い。これは、u0 、u1 、v0、v1 が二つの異なるラ
ンク上にある場合にこの出力条件を保証する。
【0025】
【数2】
【0026】注:キーポイントは、節点位置決め情報が
クラスタ内外の両方に流れることである。クラスタは、
包囲グラフ或は親クラスタ上でmincrossをランする前に
骨格に崩壊される。これらのクラスタの外側の節点の位
置の推定がそれらの内部節点の位置決めの前に知られ
る。これらの情報はクラスタの内部レイアウトをガイド
する。他方、クラスタHi 内の節点の内部順序が知られ
た後の場合は、これはHi の外側の順番に二様に影響を
与える。第一に、Hi の後に描かれた兄弟クラスタHj
内の節点の順番が接続節点が存在する場合Hi によって
影響される。第二に、Hi の親内の自由ノードの順番が
全てのHi が処理された後に更新される。これは、実施
において、Hi 内の節点、或は包囲グラフ内の自由ノー
ドを性急にフィックスすることに起因する多くのレイア
ウト変則を回避することを助ける。
【0027】build_initial_layout(G) :最初に、後方
を指す(rank(u) >rank(v) )任意の枝e=(u、v)
が代表枝(v、u)によって置換される。第二に、rank
(v)−rank(u) >1である任意の枝(u、v)が仮想節
点及び枝の経路によって置換される。len =rank(v) =
rank(u) である場合は、経路は、(u、virtual0、virtual
1、...virtuallen-1、v) であり、ここで、rank(virtual
i)=rank(u) + iである。第三に、GのvlistsがGの各
ランク内の節点の数をカウントすることによって割り当
てられる。最後に、自由節点及び(クラスタが崩壊され
たとき生成された仮想節点である)ランクリーダの初期
順序が幅優先探索を使用してセットされる。これはDA
Gにおいて以前から使用されている標準技法である。こ
れに関しては、E.R.Gansner 、S.C.North 、及びK.P.-V
o によって、Software: Practiceand Experience 、1
8:11、1988年発行、ページ1047−1062
に掲載の論文『DAG−有向グラフを描くプログラム
(DAG-A Program that DrawsDirected Graphs)』を参
照すること。
【0028】この好ましい実現においては、vlist 配列
のメモリはG及び全てのその入れ子にされたクラスタに
よって共有される。rank(v) 及びorder(v)は大域的ラベ
ルであると見なされる。従って、二つの節点u、vがあ
るクラスタのvlist 内で交換された場合、全てのvlists
内でこの更新を直ちに見ることができる。mincross(G、flag) :これはDAG発見的アルゴリズムの
修正版である。修正は以下の通りである。G上でこのni
ncross発見的アルゴリズムの主ループをランする前に、
Gのvlist 内の各節点のclust ポインタがセットされ
る。vがタイプREALの自由節点である場合は、clust は
nil にセットされる。vがタイプREALの拘束節点である
場合は、clust はそれが属するGのクラスタと関連す
る。vがRAKLEDERである場合は、clust はそれが代表す
る部分グラフにセットされる。vがVIRTUAL である時
は、clust はnil である。
【0029】その後、flag引数の値がミニクロスの振る
舞いを制御する。DAG及びDOTは両方ともミニクロ
スによって枝の交差を回避するGの節点の順調のための
探索プロセスにおいてuとvがグラフのvlist 内で交換
できるか否かをテストするために呼び出される述語関数
left2right(u、v)を持つ。我々は、left2right をflag
も因数として受理するように修正する。flagはGの部分
グラフが骨格に崩壊された場合はTRUE(真)であり、こ
れらは他の節点と相対的に位置を変えることを許される
ことに注意する。そうでない場合は、flagはFALSE
(偽)であり、Gの部分グラフが拡張されており、Gの
自由節点のみが移動できることを示す。従って、flagが
FALSE の場合は、u、vは、そのいずれかのclust ポイ
ンタがセットされている場合は交換することができな
い。VIRTUAL 節点のnil への設定によって、いかにして
仮想枝がクラスタ境界を横断してルートに移動すること
を許されるかに注意すること。
【0030】collapse_cluster(H) :Hの接点及び枝は
一時的に骨格によって置換される。Hの内側の二つの端
点を持つ任意の枝はこうして隠される。H内にちょうど
一つの端点を持つ枝e=(u、v)は以下のように再処
理される。vがG内において自由である場合は、mapclu
ster(G、v) =vに定義し、rankleader(v) である。既に
経路(mapcluster(G、u) 、mapcluster(G、v)) が存在し
ない場合は、経路Pがeにセットされたto-original ポ
インタを用いて構成され、eのto-virtualポインタはP
内の最初の枝にセットされる。そうでない場合は、経路
Pが既に存在し、eの多重枝、或はmapclusterの同一値
を持つ他の端点(u′、v′)上の枝のいずれかによっ
て表される。このケースにおいては、eは、weight(e)
及びcount(e)によってPの仮想枝に沿ってweight及びco
unt の値を増分することによってP内に併合される。
【0031】expand_cluster(H) :現在骨格によって表
されているHがその自由節点及び部分クラスタの骨格に
よって置換される。この構成は、Hの節点及び枝を以下
のように取り付けることを伴い。Hの内側のクラスタが
崩壊される。Hの内側の長い枝が仮想節点連鎖に変換さ
れる。次に、Hのこれら節点の初期順序がbuild_initia
l_layoutを使用してHの外側の節点への全ての枝を無視
して計算される。この初期レイアウトは任意の他のグラ
フと共有しない一時的なvlist 配列に構成される。各ラ
ンク内の最も左の節点にはorder =0が割り当てられ
る。構成の後に、このレイアウトは、以下のように、H
の大域的に共有されるvlist 内に併合される。Hの各ラ
ンクrに対して、個々の節点vに大域order(v)=order
(v)+order(rankleader(v) )が割り当てられる。Hの
外側及びその右側への節点も順序替えを行なわなければ
ならない。Nr をH内のランクr内の節点の最高順序で
あるものとする。order(v)>order(rankleader(r) )で
あるような全ての節点vに対して、order(v)=order(v)
+Nr −1にセットする。残りの操作は、一つの端点を
H内に、そして他の端点をHの外側に持つ枝e=(u、
v)を取り付けることである。これらの枝の各々は、co
llapse_cluster内に割り当てられた経路P=(mapclust
er(G、u) 、mapcluster(G、v)) を持たなければならな
い。fをPの最初の枝であるものとする。count(f)=co
unt(e)の場合は、pのこれらの端点が(u、v)に移動
される。count(f)>count(e)の場合は、(u、v)間の
新たな経路P′がPの節点に隣接して生成され、Pの枝
は、それらのcount 及びweight値からcount(e)及びweig
ht(e) を減分することによって調節される。この新たな
経路は新たな仮想節点及び枝から構成され、P内の個々
の仮想節点vp に対して、我々は、order(vp')=order
(vp) +1を持つ新たな仮想節点vp'を生成する。ま
た、order(w)>order(vp) の全ての節点wに対して、or
der(w)=order(w)+1にセットする。
【0032】図1の例に従がう、bulid_initial_layout
によって決定された初期構成が図4(a)に示される
が、ここでは、クラスタ111及び115が骨格401
及び403に崩壊されている。このグラフに関してミニ
クロスがランされ、トップレベルのクラスタが膨張され
る。図4(b)に示されるように、401の405への
膨張は(クラスタ113に対応する)骨格407の生成
を伴う。401上でミニクロスをランした後に、骨格4
05が膨張され(図1の全グラフが与えられる)、クラ
スタ113の内容がミニクロスによって処理される。最
後に、再帰呼からミニクロス手続きに戻ったとき、自由
節点、例えば、sの位置が枝の交差が低減されるように
このmincross発見的手続きによって更新される。
【0033】ノード位置:図5及び6 このフェーズは、既に設定されているrank(v) 及びorde
r(v)の制約の下で、節点に対する(x、y)レイアウト
座標を計算する。vlist 配列はミニクロスフェーズから
得られていると想定することが好都合であるが、但し、
order(v)を決定するために別のアルゴリズムが使用され
た場合は、このvlist は各グラフの節点リストを走査す
ることによって構成することもできる。このため、節点
座標を計算するための以下のアルゴリズムは、前のステ
ップとは独立なものである。節点のY座標は、DOTの
標準実現の場合のようにセットされるが、但し、ランク
i とRi+1 の間の分離が(nlev)(nodesep(G))によ
って増加される点が異なる。nlevはri とri+1 との間
に水平境界ボックス枝を持つ入れ子にされたクラスタの
深さの最大差である。この調節は、クラスタ境界ボック
スの水平サイドに対する空間を隣接するランクの間に引
き、この全ての回りにnodesep(G)のマージンを与えるこ
とを許す。議論の残りの部分は、X座標に集中する。仮
想及び実節点は両方とも割り当てられた座標を持つ。仮
想節点はレイアウト内に直接は現われないが、Gansner
、Koutsofios、North 、Voの前述の文献によって説明
されるように、これらの座標は、スプライン挿間をガイ
ドする。この参考文献はまた、フェーズ1においても既
に使用された標準のネットワークシンプレックス技法に
よって解決することができる制限された線型プログラム
を形式化することによって、クラスタを含まないグラフ
内の節点座標を割り当てる技法についても説明する。
【0034】この目的関数は:
【数3】 であり、これは前に説明したように、節点及びクラスタ
の左から右への配置の制約を持つ。非形式的には、これ
らの制約はランク内の節点の順序、並びにクラスタの順
序及び入れ子構造化の順序を強制する。
【0035】以下は前述のGansner 、Koutsofios、Nort
h 、Voの文献において説明される技法の修正である。こ
れは、ランクがY座標に対応するように、1/72イン
チの単位にて、“グラフをそのサイドを中心に回転す
る”操作であると考えることができる。幾つかの点で、
この技法は、従来の技術において説明される発見的アル
ゴリズムよりも優れている。つまり、これは、厳密な目
的関数に対して最適なレイアウトを発見し、実現が簡単
であり、また制約枝として符号化できる有益な延長に対
して従順である。但し、これは、これを入力グラフGに
関して遂行することは、これらの枝が(これらがトップ
からボトムへの配置を含蓄するが)節点の左から右への
順序は含蓄しないために適当でない。従って、ランクの
割り当てがランク割り当て問題を解決することによって
X座標を発見する目的のためにGから構成された補助グ
ラフG′上で計算される。この構成は、Gの節点、枝、
及びクラスタの線型走査によって遂行される。G′のこ
れら節点は、(長い枝を表わすための仮想節点を含む)
Gの節点並びに追加の仮想節点:つまり、G内の(長い
枝を表わす仮想枝を含む)各枝に対する一つ節点及び各
クラスタ(左及び右境界ボックスのX座標)に対する二
つの節点である。G′のこれら枝は節点及びクラスタの
左から右への順序を制約する枝と、Gの枝のレイアウト
コスト(layoutcost) を表わす枝とに分割することが
できる。G′の構成はGの節点、枝、及びクラスタの線
型走査によって遂行される。G′のこれら節点(変数)
及び枝(制約)が以下にリストされる:
【0036】節点 V(G)内のvに対して:x E(G)内のeに対して:x クラスタ(G)内のcに対して:xcleft、xcright
【0037】 同一のランク上の隣接する節点を分離するために V(G)内のv、wに対して、ここで、rank(v) =rank
(w) 及びorder(v)=order(w)−1: xv →xw [weight=0、minlen=width(w)/2+width
(v)/2+nodesep(G)] クラスタ内の節点封じ込めを強制するために クラスタ(G)内のC0に対して vがクラスタ(C0)内の任意のC1に属さないような
V(C0)内のvに対して xcleft →xv [weight=0、minlen=Nodesep] xv→xcrigth[weight=0、minlen=Nodesep]
【0038】クラスタの入れ子化を強制するために クラスタ(G)内のC0、C1に対して、ここでC0=
親(C1) xc0left→xc1left[weight=0、minlen=Nodesep] xc1right →xc0rigth [weight=0、minlen=Nodese
p] 隣接するクラスタの分離を強制するために クラスタ(G)内のC0、C1に対して、ここで親(C
0)=親(C1) V(C0)内にvがそしてV(C1)内にwが存在する
場合は ここで、rank(v) =rank(w) そしてorder(v)=Order(w)
−1: xc0right →xc1left[weight=0、minlen=Nodese
p] クラスタをコンパクトにするために クラスタ(G)内のCに対して xcleft →xcrigth[weight=W、minlen=Nodesep] 重み付けされた枝のレイアウトコストを測定するために E(G)内のe=(v、w)に対して xe →xv 、xe →xw [weight=weight(e) 、minlen
=0]
【0039】枝がv或はwのポート(オフセット座標)
に接続されるとき、minlen(最小長)が調節されること
に注意する(前述のGansner 、Koutsofios、North 、Vo
の文献を参照すること)。我々の実現におけるWの値は
50である。
【0040】我々の主要な例に対するこれら制約の構造
が図5及び6に図解される。図5は左から右への順序を
制御する枝を示す。501とマークされた要素は、レイ
アウトの元の節点である。503とマークされた要素は
クラスタ境界ボックス座標に対する仮想節点である。5
05とマークされた要素はクラスタ境界ボックス座標5
03との関連で節点501を制約する仮想枝である。5
07とマークされた要素はクラスタの入れ子構造化を強
制する枝である。509とマークされた要素は、隣接す
るクラスタの左から右への順序を強制する枝である。5
11とマークされた要素は節点501の左から右への順
序付けを強制する要素である。
【0041】図6はそれらの端点のX座標変位によって
入力枝を伸ばすレイアウトコストを符号化する枝を示
す。このダイアグラムは各入力枝を一つの仮想節点60
1と二つの枝603にて置換するための構成を示す。各
枝603は一つの仮想節点601と入力節点605の一
つを接続する。network_simplex に提供される制約グラ
フは図5及び6に示される節点及び枝の合併である。こ
のグラフは非輪状である(全ての枝が左から右に向くこ
とができる)。前述のように、補助グラフに対して決定
されたランクが、次に、元のグラフの節点及びクラスタ
境界ボックスに対するX座標割り当てとして読み出され
る。最終的な観察として、枝スプラインが終点節点を含
まないクラスタの境界ボックスが回避されるようにルー
トされた場合、より良いレイアウトが結果として得られ
ることがわかる。ある与えられた節点に隣接するホワイ
ト空間の広がりを発見するDOT内のルーチンがこの実
現においてはリターンされる領域を任意の隣接するクラ
スタ境界ボックスを横断しないように制限するように修
正されている。
【0042】結論 前述の詳細な説明は、当業者に対して、本発明において
従来の技術によって提供されるものよりも美的感覚的に
一層心地よく、読み易く、一層コンパクトな有向グラフ
を生成するために採用される技法を開示する。ここに開
示されたこれら技法の実現は発明者に現時点において知
られている最良のものではあるが、当業者においては、
実現における多くのバリエーションが可能であることが
直ちに明らかになるものである。さらに、ここに開示さ
れた複数の技法を一括的に採用することが特に有効であ
るが、これらをばらばらに採用することも可能である。
上に説明の諸々の事情のために、前述の詳細な説明は、
あらゆる点において解説のための一例であり、限定を意
図するものではないことを理解されるべきである。従っ
て、ここに開示される本発明の範囲は、この詳細な説明
からではなく、むしろ特許請求の範囲を法律によって許
される全幅にて解釈することによって決定されるべきで
ある。
【図面の簡単な説明】
【図1】本発明の技法によって描かれたグラフの一例で
ある。
【図2】図1のグラフにおいてランクの割り当てがいか
に行なわれているかを示す図である。
【図3】本発明の技法に従ってグラフが描かれるときク
ラスタ間枝がいかに扱われるかを示す図である。
【図4】ミニクロスによって図1のグラフがいかに処理
されるかを示す図である。
【図5】図1のグラフの節点がそれらのランク内でいか
に順序付けられるかを示す図である。
【図6】節点枝の位置がいかに決定されるを示す図であ
る。
【図7】従来の技術に従って描かれた二部グラフを示す
図である。
【図8】本発明の技法を使用して描かれた図7のグラフ
を示す図である。
【図9】従来の技術に従って描かれたプロセスグラフを
示す図である。
【図10】本発明の技法を使用して描かれた図9のグラ
フを示す図である。
【図11】従来の技法を使用して描かれたグラフを示す
図である。
【図12】従来の技法を使用して描かれたもう一つのグ
ラフを示す図である。
【図13】従来の技法を使用して描かれたさらにもう一
つのグラフを示す図である。
【図14】人手によってレイアウトされたグラフを示す
図である。
【図15】従来の技法を使用してのグラフの自動レイア
ウトを示す図である。
【図16】本発明の技法に従ってレイアウトされた手続
き呼のグラフを示す図である。
【図17】もう一つの本発明の技法に従ってレイアウト
された手続き呼のグラフを示す図である。
【図18】図1のグラフに対する入力リストを示す図で
ある。図面内の参照番号は二つの部分を持つ。つまり、
二つの下位数字は図面内の項目の番号であり;残りの数
字はその項目が初めて現われる図面の番号である。従っ
て、参照番号201を持つ項目は、図2内に最初に現わ
れる。
【符号の説明】
101 節点 103 枝 111、113、115 クラスタ

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 有向グラフを自動的に描くためにコンピ
    ュータシステムを使用する方法であって、この有向グラ
    フ及びこの中に含まれるクラスタが中に含まれるクラス
    タに属さない自由節点とこれに属する拘束節点から構成
    され、この方法がこれら節点にランクを割り当てるステ
    ップを含み、 ランク割り当ての改良されたステップが:この有向グラ
    フ及びこの中に含まれるクラスタに関して中に含まれる
    各クラスタに相対ランクを割り当てるステップ、 中に含まれる各クラスタを仮想節点に崩壊するステッ
    プ、及びこれら自由節点及び仮想節点に相対ランクを割
    り当てるステップ、を含む複数のステップを反復的に遂
    行するステップ;及び前記の反復ステップが完了した時
    点で、全ての節点に絶対ランクを割り当てるステップを
    含み、ここで、あるクラスタ内の自由節点のランクがそ
    のクラスタ内に崩壊された仮想節点の絶対ランク及びそ
    のクラスタ内の自由節点の相対ランクによって決定され
    ることを特徴とする方法。
  2. 【請求項2】 クラスタにグループ化されたサブグラフ
    を含む節点の有向グラフを自動的に描くためにコンピュ
    ータシステムを使用するための方法であって、この方法
    がこれら節点にランクを割り当てるステップを含み、 ランク割り当ての改良されたステップが:各節点或はク
    ラスタにその節点或はクラスタを直接に含むグラフ或は
    クラスタに対して相対的な相対ランクを割り当てるステ
    ップ;及び各節点或はクラスタにその節点或はクラスタ
    を直接に含むグラフ或はクラスタの絶対ランクから決定
    される絶対ランク及びその節点或はクラスタの相対ラン
    クを割り当てるステップを含むことを特徴とする方法。
  3. 【請求項3】 クラスタにグループ化されたサブグラフ
    を含む節点の有向グラフを自動的に描くためにコンピュ
    ータシステムを使用する方法であって、この方法がある
    ランク内の節点を順序付けるステップを含み、 このランク内の節点の順序付けの改良されたステップ
    が:そのランク内に直接に含まれる各クラスタをクラス
    タ全体の一つの表現に崩壊するステップ;及びこの表現
    を節点として扱うことによってランク内の節点の順序付
    けを行うステップを含むことを特徴とする方法。
JP6227128A 1993-09-24 1994-09-22 クラスタ採用グラフ Withdrawn JPH07152919A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/126,935 US5450535A (en) 1993-09-24 1993-09-24 Graphs employing clusters
US126935 1993-09-24

Publications (1)

Publication Number Publication Date
JPH07152919A true JPH07152919A (ja) 1995-06-16

Family

ID=22427449

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6227128A Withdrawn JPH07152919A (ja) 1993-09-24 1994-09-22 クラスタ採用グラフ

Country Status (5)

Country Link
US (1) US5450535A (ja)
EP (1) EP0645738A3 (ja)
JP (1) JPH07152919A (ja)
KR (1) KR950009489A (ja)
CA (1) CA2130418A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07210570A (ja) * 1994-01-25 1995-08-11 Fuji Xerox Co Ltd 有向グラフ編集処理装置
JP2010044617A (ja) * 2008-08-13 2010-02-25 Fuji Xerox Co Ltd 表示情報生成装置、及びプログラム
JP2010262646A (ja) * 2009-04-30 2010-11-18 Internatl Business Mach Corp <Ibm> 動的グラフ用アニメーション・プランニング方法及び装置
CN114090838A (zh) * 2022-01-18 2022-02-25 杭州欧若数网科技有限公司 大数据可视化展示的方法、系统、电子装置和存储介质

Families Citing this family (96)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5596703A (en) * 1993-10-22 1997-01-21 Lucent Technologies Inc. Graphical display of relationships
JP3350223B2 (ja) * 1994-07-13 2002-11-25 富士通株式会社 グラフ自動レイアウト方法及び装置
JPH0854998A (ja) * 1994-07-28 1996-02-27 Xerox Corp コンピュータ制御ディスプレイシステム
CA2129190C (en) * 1994-07-29 1999-08-17 David J. Taylor Method and apparatus for constructing displays of partially ordered data
US5634113A (en) * 1994-12-13 1997-05-27 Unisys Corporation Method for generating a preferred processing order and for detecting cycles in a directed graph used to represent system component connectivity
US5608854A (en) * 1995-04-25 1997-03-04 Motorola, Inc. Method and apparatus for displaying information in a communication system
US5971596A (en) * 1995-06-16 1999-10-26 Kabushiki Kaisha Toshiba Constraint condition evaluation method and constraint condition evaluation system
US5943062A (en) * 1996-02-13 1999-08-24 Micrografx, Inc. System and method for automatically routing a line in a graphics chart
US5796621A (en) * 1996-07-31 1998-08-18 International Business Machines Corporation Circuit delay abstraction tool
US6091424A (en) * 1996-11-01 2000-07-18 Tom Sawyer Software Labeling graphical features of drawings
US7269587B1 (en) 1997-01-10 2007-09-11 The Board Of Trustees Of The Leland Stanford Junior University Scoring documents in a linked database
US6285999B1 (en) 1997-01-10 2001-09-04 The Board Of Trustees Of The Leland Stanford Junior University Method for node ranking in a linked database
US7363291B1 (en) 2002-03-29 2008-04-22 Google Inc. Methods and apparatus for increasing efficiency of electronic document delivery to users
FR2763775B1 (fr) * 1997-05-23 1999-08-13 France Telecom Procede de visualisation de chemins au sein d'une representation graphique d'un reseau
US6122443A (en) * 1997-07-28 2000-09-19 Kabushiki Kaisha Toshiba Wire length minimization apparatus and method
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
WO1999023571A1 (en) * 1997-11-03 1999-05-14 Inca Technology, Inc. Automatically configuring network-name-services
US6285367B1 (en) * 1998-05-26 2001-09-04 International Business Machines Corporation Method and apparatus for displaying and navigating a graph
US6100901A (en) * 1998-06-22 2000-08-08 International Business Machines Corporation Method and apparatus for cluster exploration and visualization
CA2625653C (en) * 1999-04-21 2011-08-02 Spss, Inc. Computer method and apparatus for creating visible graphics by using a graph algebra
US6853375B2 (en) * 2000-05-10 2005-02-08 Cognos Incorporated Method for preemptive screen rendering
JP2002073333A (ja) * 2000-08-25 2002-03-12 Hitachi Ltd 手続き呼び出し先のデータ依存の解析表示方法
US7131060B1 (en) * 2000-09-29 2006-10-31 Raytheon Company System and method for automatic placement of labels for interactive graphics applications
US6781599B2 (en) * 2001-01-04 2004-08-24 At&T System and method for visualizing massive multi-digraphs
AU2002334954B2 (en) * 2001-10-11 2008-07-31 Omniture, Inc. System, method, and computer program product for processing and visualization of information
US7271804B2 (en) * 2002-02-25 2007-09-18 Attenex Corporation System and method for arranging concept clusters in thematic relationships in a two-dimensional visual display area
GB0206285D0 (en) * 2002-03-16 2002-05-01 Ibm Apparatus method and computer program for providing a GUI representation of relationships between a set of resources of a data processing system
US7191175B2 (en) 2004-02-13 2007-03-13 Attenex Corporation System and method for arranging concept clusters in thematic neighborhood relationships in a two-dimensional visual display space
US7464076B2 (en) * 2004-05-15 2008-12-09 International Business Machines Corporation System and method and computer program product for ranking logical directories
US8224964B1 (en) 2004-06-30 2012-07-17 Google Inc. System and method of accessing a document efficiently through multi-tier web caching
US8676922B1 (en) 2004-06-30 2014-03-18 Google Inc. Automatic proxy setting modification
US7437364B1 (en) 2004-06-30 2008-10-14 Google Inc. System and method of accessing a document efficiently through multi-tier web caching
US20060074910A1 (en) * 2004-09-17 2006-04-06 Become, Inc. Systems and methods of retrieving topic specific information
US7668822B2 (en) * 2004-12-23 2010-02-23 Become, Inc. Method for assigning quality scores to documents in a linked database
JP2008525896A (ja) * 2004-12-23 2008-07-17 ビカム, インコーポレイテッド リンクされた文書の集合に相対的品質スコアを割り当てるための方法
US7284219B1 (en) * 2005-02-17 2007-10-16 Xilinx, Inc. Representation of a relaxation of a constraint by graph replication
US7797628B2 (en) * 2005-05-16 2010-09-14 Planview, Inc. Method of using a directed graph and a system for use with the method
US7495673B1 (en) * 2005-06-04 2009-02-24 Shankar S Srinivasan Resource tepee
US20060290697A1 (en) * 2005-06-24 2006-12-28 Tom Sawyer Software System for arranging a plurality of relational nodes into graphical layout form
US7423646B2 (en) * 2005-11-08 2008-09-09 Microsoft Corporation Smart shape insert
JP2007140843A (ja) * 2005-11-17 2007-06-07 Fuji Xerox Co Ltd リンク関係表示装置、リンク関係表示装置の制御方法及びプログラム
JP4920986B2 (ja) * 2006-02-07 2012-04-18 株式会社日立製作所 グラフ構造を利用した類似概念抽出システム及び類似概念抽出方法
FR2904499B1 (fr) * 2006-07-27 2009-01-09 Commissariat Energie Atomique Procede de decodage a passage de messages avec ordonnancement selon une fiabilite de voisinage.
JP4865526B2 (ja) * 2006-12-18 2012-02-01 株式会社日立製作所 データマイニングシステム、データマイニング方法及びデータ検索システム
US8099491B2 (en) * 2007-01-31 2012-01-17 Adobe Systems Incorporated Intelligent node positioning in a site analysis report
US8812957B2 (en) * 2007-01-31 2014-08-19 Adobe Systems Incorporated Relevance slider in a site analysis report
US8812651B1 (en) 2007-02-15 2014-08-19 Google Inc. Systems and methods for client cache awareness
US8065275B2 (en) * 2007-02-15 2011-11-22 Google Inc. Systems and methods for cache optimization
US20080256034A1 (en) * 2007-04-10 2008-10-16 Chi-Chao Chang System and method for understanding relationships between keywords and advertisements
US8890870B2 (en) * 2008-06-27 2014-11-18 Applied Minds, Llc System and method for visualizing relationships between objects
US8788497B2 (en) * 2008-09-15 2014-07-22 Microsoft Corporation Automated criterion-based grouping and presenting
US8831271B2 (en) * 2008-10-07 2014-09-09 Ochanomizu University Subgraph detection device, subgraph detection method, program, data structure of data, and information recording medium
US8250069B2 (en) * 2008-10-14 2012-08-21 University Of Washington Green's function formulations for pagerank algorithm using helmholtz wave equation representations of internet interactions
CN101819540B (zh) * 2009-02-27 2013-03-20 国际商业机器公司 在集群中调度任务的方法和系统
US8497863B2 (en) * 2009-06-04 2013-07-30 Microsoft Corporation Graph scalability
US8572084B2 (en) 2009-07-28 2013-10-29 Fti Consulting, Inc. System and method for displaying relationships between electronically stored information to provide classification suggestions via nearest neighbor
CA3026879A1 (en) 2009-08-24 2011-03-10 Nuix North America, Inc. Generating a reference set for use during document review
US8933937B2 (en) * 2010-01-22 2015-01-13 Microsoft Corporation Visualizing a layered graph using edge bundling
US8935129B1 (en) 2010-06-04 2015-01-13 Bentley Systems, Incorporated System and method for simplifying a graph'S topology and persevering the graph'S semantics
US8543944B2 (en) 2010-06-14 2013-09-24 Microsoft Corporation Fast edge routing for interactive diagramming
US9443334B2 (en) 2011-05-05 2016-09-13 Microsoft Technology Licensing, Llc Routing edges with ordered bundles
US8898165B2 (en) 2012-07-02 2014-11-25 International Business Machines Corporation Identification of null sets in a context-based electronic document search
US8903813B2 (en) 2012-07-02 2014-12-02 International Business Machines Corporation Context-based electronic document search using a synthetic event
US9460200B2 (en) 2012-07-02 2016-10-04 International Business Machines Corporation Activity recommendation based on a context-based electronic files search
US9262499B2 (en) 2012-08-08 2016-02-16 International Business Machines Corporation Context-based graphical database
US8959119B2 (en) 2012-08-27 2015-02-17 International Business Machines Corporation Context-based graph-relational intersect derived database
US9619580B2 (en) 2012-09-11 2017-04-11 International Business Machines Corporation Generation of synthetic context objects
US9251237B2 (en) 2012-09-11 2016-02-02 International Business Machines Corporation User-specific synthetic context object matching
US8620958B1 (en) 2012-09-11 2013-12-31 International Business Machines Corporation Dimensionally constrained synthetic context objects database
US9223846B2 (en) 2012-09-18 2015-12-29 International Business Machines Corporation Context-based navigation through a database
US9741138B2 (en) * 2012-10-10 2017-08-22 International Business Machines Corporation Node cluster relationships in a graph database
US8931109B2 (en) 2012-11-19 2015-01-06 International Business Machines Corporation Context-based security screening for accessing data
US8983981B2 (en) 2013-01-02 2015-03-17 International Business Machines Corporation Conformed dimensional and context-based data gravity wells
US8914413B2 (en) 2013-01-02 2014-12-16 International Business Machines Corporation Context-based data gravity wells
US9229932B2 (en) 2013-01-02 2016-01-05 International Business Machines Corporation Conformed dimensional data gravity wells
US9836551B2 (en) * 2013-01-08 2017-12-05 International Business Machines Corporation GUI for viewing and manipulating connected tag clouds
US8856946B2 (en) 2013-01-31 2014-10-07 International Business Machines Corporation Security filter for context-based data gravity wells
US9053102B2 (en) 2013-01-31 2015-06-09 International Business Machines Corporation Generation of synthetic context frameworks for dimensionally constrained hierarchical synthetic context-based objects
US9069752B2 (en) 2013-01-31 2015-06-30 International Business Machines Corporation Measuring and displaying facets in context-based conformed dimensional data gravity wells
US9292506B2 (en) 2013-02-28 2016-03-22 International Business Machines Corporation Dynamic generation of demonstrative aids for a meeting
US10152526B2 (en) 2013-04-11 2018-12-11 International Business Machines Corporation Generation of synthetic context objects using bounded context objects
US9348794B2 (en) 2013-05-17 2016-05-24 International Business Machines Corporation Population of context-based data gravity wells
US9195608B2 (en) 2013-05-17 2015-11-24 International Business Machines Corporation Stored data analysis
JP6168475B2 (ja) * 2014-04-10 2017-07-26 新日鉄住金ソリューションズ株式会社 グラフ生成装置、グラフ生成方法及びグラフ生成プログラム
DE112015003587T5 (de) * 2014-09-02 2017-05-11 Ab Initio Technology Llc Spezifizieren von komponenten in graphbasierten programmen
US9612807B2 (en) * 2014-09-18 2017-04-04 Facebook, Inc. Code placement using a dynamic call graph
US20160342396A1 (en) * 2015-05-20 2016-11-24 Ab lnitio Technology LLC Visual program specification and compilation of graph-based computation
AU2017274558B2 (en) 2016-06-02 2021-11-11 Nuix North America Inc. Analyzing clusters of coded documents
US10387453B1 (en) * 2016-06-29 2019-08-20 EMC IP Holding Company LLC Database views for graphs using dynamic subgraphs
US11507629B2 (en) 2016-10-28 2022-11-22 Parexel International, Llc Dataset networking and database modeling
US20180314729A9 (en) 2016-10-28 2018-11-01 Roam Analytics, Inc. Semantic parsing engine
US11030248B2 (en) 2018-04-18 2021-06-08 Palantir Technologies Inc. Resource dependency system and graphical user interface
WO2020185900A1 (en) 2019-03-11 2020-09-17 Roam Analytics, Inc. Methods, apparatus and systems for annotation of text documents
US11625451B2 (en) * 2019-08-30 2023-04-11 Fujitsu Limited Local search with global view for large scale combinatorial optimization
US11003645B1 (en) * 2019-10-04 2021-05-11 Palantir Technologies Inc. Column lineage for resource dependency system and graphical user interface
CN112953759B (zh) * 2021-01-27 2023-10-03 上海七牛信息技术有限公司 节点最优资源覆盖分析调整方法、装置及计算机设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4953106A (en) * 1989-05-23 1990-08-28 At&T Bell Laboratories Technique for drawing directed graphs

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07210570A (ja) * 1994-01-25 1995-08-11 Fuji Xerox Co Ltd 有向グラフ編集処理装置
JP2010044617A (ja) * 2008-08-13 2010-02-25 Fuji Xerox Co Ltd 表示情報生成装置、及びプログラム
JP2010262646A (ja) * 2009-04-30 2010-11-18 Internatl Business Mach Corp <Ibm> 動的グラフ用アニメーション・プランニング方法及び装置
CN114090838A (zh) * 2022-01-18 2022-02-25 杭州欧若数网科技有限公司 大数据可视化展示的方法、系统、电子装置和存储介质

Also Published As

Publication number Publication date
KR950009489A (ko) 1995-04-24
CA2130418A1 (en) 1995-03-25
EP0645738A2 (en) 1995-03-29
EP0645738A3 (en) 1996-05-29
US5450535A (en) 1995-09-12

Similar Documents

Publication Publication Date Title
JPH07152919A (ja) クラスタ採用グラフ
Sander Graph layout through the VCG tool: Extended abstract and system demonstration
Helman et al. Visualizing vector field topology in fluid flows
US5822593A (en) High-level loop fusion
Dickerson et al. Confluent drawings: Visualizing non-planar diagrams in a planar way
von Landesberger et al. Visual analysis of large graphs.
Bertolazzi et al. How to draw a series-parallel digraph
Eades et al. Straight-line drawing algorithms for hierarchical graphs and clustered graphs
Sander VCG-visualization of compiler graphs
Eades et al. Drawing clustered graphs on an orthogonal grid
JPH04257928A (ja) 並列計算機におけるプロセッサ割り当て方法、及び装置
Brandenburg Nice drawings of graphs are computationally hard
Munzner et al. Constellation: A visualization tool for linguistic queries from MindNet
Asente et al. Dynamic planar map illustration
Waddle Graph layout for displaying data structures
Brandenburg Layout graph grammars: The placement approach
Shieh et al. Directed graphs drawing by clan-based decomposition
McCreary et al. Using graph parsing for automatic graph drawing
JPH11147344A (ja) 描画処理装置および方法
Baburin Using graph based representations in reengineering
Giot et al. Fast graph drawing algorithm revealing networks cores
Eades et al. Orthogonal grid drawing of clustered graphs
JPH07319676A (ja) メッセージフロー図生成方式
Cyre et al. Generating validation feedback for automatic interpretation of informal requirements
Lageweg Designing an automatic schematic generator for a netlist description

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20020115