JPH11144071A - グラフ描画装置、グラフ描画方法、グラフ描画インターフェース - Google Patents

グラフ描画装置、グラフ描画方法、グラフ描画インターフェース

Info

Publication number
JPH11144071A
JPH11144071A JP10246662A JP24666298A JPH11144071A JP H11144071 A JPH11144071 A JP H11144071A JP 10246662 A JP10246662 A JP 10246662A JP 24666298 A JP24666298 A JP 24666298A JP H11144071 A JPH11144071 A JP H11144071A
Authority
JP
Japan
Prior art keywords
nodes
graph
node
visual organization
visual
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.)
Pending
Application number
JP10246662A
Other languages
English (en)
Inventor
Kathleen Ryall
カスリーン・リャル
Joseph Marks
ジョセフ・マークス
Stuart Merrill Shieber
スチュアート・メリル・シーバー
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.)
Mitsubishi Electric Information Technology Corp
Mitsubishi Electric Research Laboratories Inc
Original Assignee
Mitsubishi Electric Information Technology Corp
Mitsubishi Electric Research Laboratories Inc
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 Mitsubishi Electric Information Technology Corp, Mitsubishi Electric Research Laboratories Inc filed Critical Mitsubishi Electric Information Technology Corp
Publication of JPH11144071A publication Critical patent/JPH11144071A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/00Two-dimensional [2D] image generation
    • G06T11/20Drawing from basic elements
    • G06T11/26Drawing 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)
  • Radar Systems Or Details Thereof (AREA)

Abstract

(57)【要約】 【課題】 ユーザーが容易に所望の条件を自由に重ねて
導入して所望のグラフ描画ができる対話型のグラフ描画
装置、方法、インターフェースを得る。 【解決手段】 視覚的に所望の表示を得るために束縛条
件を適用する。ユーザーはグラフにノードとエッジとを
追加、視覚編成機構(VOF)束縛条件がノードに適用さ
れる。束縛条件を適用するために一般化スプリング・ア
ルゴリズムを使用する。束縛条件が適用される選択され
たノードにスプリングが付けられる。各スプリングの長
さと第2端点とは適用されるべき束縛条件に基づいて設
定される。次にスプリングに基づいて全てのノードの安
静位置をシミュレーションによって決定する。ユーザー
がVOFを付加し、変更し或は削除し又はノードの位置
を変更すると、グラフは束縛条件に基づいて自動的に再
構成される。インターフェースはグラフとVOF適用用
の選択ボタンとを表示するディスプレイを提供する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、グラフを描くため
のコンピュータ化されたシステム、特に、対話型の、束
縛条件に基づいてグラフを描くためのグラフ描画装置、
グラフ描画方法およびグラフ描画インターフェースに関
する。
【0002】
【従来の技術】刊行物やプレゼンテーションに出てくる
ような小さなグラフの殆どは、マイクロソフトのパワー
ポイント(PowerPoint)やクラリスドロー(Claris Draw)
などの、市販されている旧式の描画ツールで描かれてい
る。それらの描画ツールは、グラフィック・デザイナー
が通常自分たちの作品に利用する精巧な対称性、間隔及
びアライメントを導入し維持することを容易にするもの
ではない。通常、それらのツールは、スクリーン上のノ
ードと、それらのノード間の接続線とを配置することを
可能にするに過ぎない。ユーザーは、グラフの見栄えを
よくするためにスクリーン上でノードを対話的に動かす
ことができる。しばしば、ユーザーは、簡単な束縛条件
を適用してスクリーン上のノードを編成することもでき
る。例えば、ユーザーは、後に水平又は垂直に一線上に
並べられることになるノードの集合を選択することがで
きる。しかし、グラフを描くアルゴリズムはその束縛条
件を1回適用するだけであって、もしユーザーが後にノ
ードを変更しても、システムはノードを自動的に再整列
させるわけではない。
【0003】他のもっと複雑なシステムは、グラフのレ
イアウトについての一定の束縛条件又は目標を設定する
ためにレイアウト・アルゴリズムを使用する。それらの
束縛条件又は目標は、グラフのいろいろな部分を自動的
に配置することを可能にするものである。一般に、グラ
フ・レイアウト・アルゴリズムは、グラフの読みとり易
さと美観とを良くするために、特定の固定された特性を
最小にする。その特性は、表示の対称性を最大にするこ
と、エッジの横断又はエッジの曲がりを最小限にするこ
と、より均一となるようにエッジの長さを制限するこ
と、及びノードを均一に分布させること、を含んでい
る。しかし、これらの特性を最小化することは、極端に
難しい計算問題であるかも知れない。従って、その様な
システムでグラフをレイアウトする操作は極めて長くて
退屈なものであるかも知れない。更に、特性を容易に最
小化できても、許容できるようなグラフが得られるとは
限らない。主として、それは、自動化されたレイアウト
はユーザーが重要であると考えているものを考慮しない
からである。全ての種類のグラフに関連するような特別
なレイアウト構造は無い。最良のレイアウトは、ディス
プレイの普遍的に適切な幾何学的性質ではなくて、その
グラフについてのユーザーの目的に依存する。このこと
に関しては、ユーザーによる入力が重要である。
【0004】Tyson R. HenryとScott E. Hudsonとは、
“対話型グラフ・レイアウト”と題された論文("Intera
ctive Graph Layout", Proceedings of the ACM Sympos
iumon User Interface Software and Technology, page
55 (November, 1991))において、レイアウトの或る程
度の自動化とユーザー制御とを提供するグラフ・レイア
ウトを構図するためのシステムを開示している。この論
文に開示されているように、ユーザーはそのシステムと
対話してレイアウト・アルゴリズムの階層構造を指定す
る。しかし、このシステムは大きなグラフ向けのもので
あって、極めて複雑である。このシステムは、アルゴリ
ズムを設定する際に階層関係を理解していることを必要
とする。束縛条件は永続性を有するけれども、最終レイ
アウトがその束縛条件自体から直感的に明らかになるわ
けではない。束縛条件は階層的に取り決められるので、
一部の束縛条件の効果は他の束縛条件の適用によって修
正されたり取り消されたりする。具体的には、許容でき
る束縛条件は或る距離を最大化してグラフを均一にする
ように思われる。時にはグラフを読みとりやすくするた
めに、ユーザーは或る領域を強調するためにグラフが不
均一であることを好む。
【0005】Ed Dengler、Mark Friedell及びJoe Marks
は、“束縛条件駆動型ダイアグラム・レイアウト”と題
された論文("Constraint-Driven Diagram Layout", Pro
ceedings of the 1993 IEEE Symposium on Visual Lang
uages, pp 330-335 (August,1993))において、ダイアグ
ラム・レイアウトで束縛条件を使用するためのシステム
を開示している。このシステムは、視覚編成機構(visua
l organization features (VOFs))の使用に基づい
ている。VOFはダイアグラム中の関連するノードの特
定の配列である。この論文のシステムはVOFがどこか
ら生じるかを記述もせず推定もしない。むしろ、それ
は、ノード、エッジ及びVOFに基づいてレイアウト結
果を作るためのシステムに過ぎない。レイアウトは、束
縛条件を満たすためにシミュレーションと確率的調査と
の混成プロセスにより最適化される。また、漸増プロセ
スにおいて指定された順序でスプリング束縛条件が適用
される。その順序は、束縛条件の限定性の程度によって
決まる。これは、漸増改良アプローチが局所最適条件に
拘束されるのを防止しようとするものである。また、De
ngler等のアプローチでは、初期レイアウトがランダム
に選択される。性能を高めるために、数個の異なる初期
位置を使用することができる。束縛条件を満たすときに
全体における最適条件を決定するためにその初期位置の
各々から得られた最適条件同士が比較される。
【0006】
【発明が解決しようとする課題】以上のように従来のグ
ラフ描画装置においては、小さなグラフ向けのもので
は、ユーザーが所望の条件を自由に導入してグラフ描画
ができるものはなく、また、大きいグラフ向けのものは
専門的で操作等が非常に複雑であるとい課題があった。
【0007】この発明は、小さなグラフ向けのもので、
ユーザーが容易に所望の条件を自由に重ねて導入して満
足のできるグラフ描画ができるグラフ描画装置、グラフ
描画方法およびグラフ描画インターフェースを提供する
ことを目的とする。
【0008】
【課題を解決するための手段】上記の目的に鑑み、この
発明は、グラフの複数のノードをそのグラフの視覚的表
示の指定された場所に作るための手段と、それらの複数
のノード間に複数のエッジを作るための手段と、前記の
指定された位置の前記の複数のノードと前記の複数のエ
ッジとを視覚的に表示するための手段と、前記の複数の
ノードのうちの選択されたノードに適用されるべき少な
くとも1つの視覚編成機構を特定するユーザー入力を受
け取るための手段と、前記の少なくとも1つの視覚編成
機構に従って前記の選択されたノードを編成するために
前記の複数のノードの位置を調整するための手段と、そ
の調整された位置に該ノードを視覚的に表示するための
手段と、を備えたことを特徴とするグラフ描画装置にあ
る。
【0009】またこの発明は、前記の少なくとも1つの
視覚編成機構は、選択されたノードの順次配置、選択さ
れたノードの密集化、選択されたノードの前記視覚表示
の指定された部分への隔離区分、選択されたノードのT
形配置、線に沿っての選択されたノードのアライメン
ト、選択されたノード間の均等間隔配置、選択されたノ
ードの対照的配置、選択されたノードのハブ形配置、の
うちの少なくとも1つを含むことを特徴とするグラフ描
画装置にある。
【0010】またこの発明は、前記の少なくとも1つの
視覚編成機構が複数の視覚編成機構からなり、前記調整
手段が、それらの視覚編成機構の全てを実質的に満たす
ために複数のノードの位置を調整する手段を含むことを
特徴とするグラフ描画装置にある。
【0011】またこの発明は、前記の複数の視覚編成機
構のうちの少なくとも1つを除去するための手段を更に
備えたことを特徴とするグラフ描画装置にある。
【0012】またこの発明は、前記の複数のノードのう
ちの少なくとも1つの指定された位置を変更するユーザ
ー入力を受け取るための手段を更に備えたことを特徴と
するグラフ描画装置にある。
【0013】またこの発明は、複数のノードと、それら
のノード同士を結ぶエッジとを有するグラフを対話的に
作るためのグラフ描画方法であって、(a) 前記の複数
のノードの各々について位置を指定するユーザー入力を
受け取る工程と、(b) 少なくとも1つのノードを選択
する工程と、(c) その少なくとも1つの選択されたノ
ードに適用されるべき少なくとも1つの視覚編成機構を
指定するユーザー入力を受け取る工程と、(d) その視
覚編成機構に従って複数のノードの位置を調整する工程
と、(e) その調整された位置にノードのあるグラフを
表示する工程と、を備えたことを特徴とするグラフ描画
方法にある。
【0014】またこの発明は、前記工程(b)から(e)が
複数回反復されることを特徴とするグラフ描画方法にあ
る。
【0015】またこの発明は、前記調整工程が、選択さ
れたノードの各々を、前記の少なくとも1つの視覚編成
機構によって確定される位置に結びつける仮想スプリン
グの集合を決定するステップと、その仮想スプリングに
基づいて前記ノードの各々について安静位置を決定する
ステップと、を含むことを特徴とするグラフ描画方法に
ある。
【0016】またこの発明は、少なくとも1つの視覚編
成機構を除去する工程と、除去された前記少なくとも1
つの視覚編成機構を含まない視覚編成機構に従って複数
のノードの位置を調整する工程と、その調整された位置
にノードがあるグラフを表示する工程と、を更に備えた
ことを特徴とするグラフ描画方法にある。
【0017】またこの発明は、少なくとも1つのノード
の位置を変更する工程と、前記視覚編成機構と、その少
なくとも1つのノードの変更された位置とに基づいて複
数のノードの位置を調整する工程と、を更に備えたこと
を特徴とするグラフ描画方法にある。
【0018】またこの発明は、複数のノードと複数のエ
ッジとを指定された位置に表示するためのグラフ表示領
域と、このグラフ表示領域に表示された少なくとも1つ
のノードを選択するための手段と、選択された少なくと
も1つのノードに適用される視覚編成機構のユーザー入
力を受け取るための束縛条件選択領域と、その視覚編成
機構に基づいて前記グラフ表示領域内の前記の複数のノ
ードの位置を調整するための手段と、を備えたことを特
徴とするグラフ描画インターフェースにある。
【0019】またこの発明は、選択された少なくとも1
つのノードに関して前記視覚編成機構を前記グラフ表示
領域に表示するための手段を更に備えたことを特徴とす
るグラフ描画インターフェースにある
【0020】小さなグラフを巧みに描くための公知シス
テムの欠陥は、束縛条件を使用してグラフを描くための
対話型システムに関する本発明によって実質的に克服さ
れる。このシステムでは、ユーザーによってインターフ
ェースを通して束縛条件、ノード及びエッジが、表示さ
れているグラフに追加されたり、表示されているグラフ
から削除されたりする。変更が加えられる毎に、システ
ムは束縛条件に基づいてノード及びエッジの位置を動的
に決定し直す。束縛条件を適用して、全ての束縛条件に
関して局所的に最適なノードの配置を与えるために、一
般化されたスプリング・アルゴリズムが使用される。更
に、本発明は、グラフに適用することのできるマクロ束
縛条件の小さな集合を含んでいる。それらの束縛条件
は、グラフを描くために特別に設計されている。それら
の束縛条件は、ノード上の指定された点同士の接触関係
や連続関係などの単純な幾何学的或いは位相幾何学的関
係よりはむしろ、ノード同士の対称性などの複雑な関係
に関連しているので、“マクロ(大型)”という形容詞が
付されている。
【0021】
【発明の実施の形態】図1は、本発明を実施するのに使
えるコンピュータ・ハードウェア1を示している。中央
処理装置(CPU)10は、本発明のプロセスを実行する
ためにプログラム・ステップを処理する。CPU10
は、命令を実行するために汎用コンピュータで使用され
ている処理装置などの、如何なる種類の処理装置であっ
ても良い。メモリー20は、プログラム・ステップを記
憶すると共に、本発明においてグラフを表すために使用
されるデータを記憶する。メモリー20は、RAM、R
OM、CD−ROM、磁気ディスク又はその他のディジ
タル記憶媒体を含む如何なる種類のメモリーであっても
良い。グラフの状況を表示するときにユーザーと対話す
るためにディスプレイ30がCPUに接続されている。
ユーザーインターフェースに関して後述するように、こ
のディスプレイはグラフに課されている束縛条件も表示
する。ユーザーからの入力のためにキーボード40とマ
ウス50とがCPU10に接続されている。ユーザーが
情報をキーボード40又はマウス50で入力すると、C
PU10はその情報を処理して、それに応じてグラフを
修正する。完成したグラフのハードコピーを作るために
プリンタ60もCPUに接続することができる。
【0022】図2はグラフの処理を実行するときに使用
することのできるユーザーインターフェース100を示
している。インターフェース100は、CPU10に接
続されているディスプレイ30に現れる情報の表示を表
している。ユーザーインターフェース100のグラフ表
示領域110は、グラフ中のノード及びエッジを表示す
る。メモリー20の中のグラフ情報は、ディスプレイ3
0で表示されるべきノードの位置及びサイズ、ラベル及
びエッジを作るためにCPU10によって処理される。
視覚編成機構(VOF)を選択してグラフ中のいろいろな
ノードに適用するために一組のボタン120が使用され
る。VOFが適用される特定のノードを選択するために
ユーザーはマウス50を操作する。ノードが選択される
と、ユーザーはボタン120を使って、適用する適当な
VOFを選択する。第2組のボタン140は、インター
フェースを操作する追加の機能を提供する。例えば、選
択ボタン141は、VOFをディスプレイ上に表示させ
るために使用されるものであり、選択されたり選択され
なかったりする。選択ボタン142はグラフをディスプ
レイの中心に置く。選択ボタン143はテキスト・ラベ
ルを付加したり変更したりするために使用される。選択
ボタン144は、ノードを特定の位置に係留する。選択
ボタン145は、ノードを削除するために使用される。
選択ボタン146は、適用された全てのVOFを削除す
る。選択ボタン147は、指定されたノードの選択を解
除する。カーソルが適当なノードの上に位置していると
きにマウスボタンの1つをクリックすることによってノ
ードを選択することができる。もちろん、他のメカニズ
ムを使ってVOFを選択してグラフに適用することもで
きる。例えば、表示される選択ボタンの代わりにプルダ
ウン・メニューを使うことができる。
【0023】第1組の選択ボタン120の中の選択エレ
メントに対応するVOFが図3の(a)〜(h)に示されて
いる。図3の(a)は、ノードの順次配置を示している。
これは、水平方向(選択ボタン131)又は垂直方向(選
択ボタン132)に選択される。順次配置では、ノード
は指定された順序で選択される。この束縛条件が満たさ
れると、ノードはディスプレイ上でその順序で水平に又
は垂直に配置される。図3の(b)は、選択された全ての
ノードを互いの近くに位置させる密集化(選択ボタン1
23)を示している。図3の(c)は、区分(選択ボタン1
24)を示している。区分では、ノードは長方形の中に
封入される。選択された全てのノードがその長方形の中
に保たれ、選択されていない全てのノードがその長方形
の外に保たれる。図3の(c)に示されているように、異
なるノードのグループのために区分を使用することがで
きる。図3の(d)は、T形束縛条件(選択ボタン129)
を示している。T形では、中心のノードは、一線に並ん
だ他のノードの行の上又は下の中心に置かれる。或い
は、T形は、中心ノードをノードの行の左又は右に置い
ても良い。図3の(e)は、水平方向(選択ボタン121)
又は垂直方向(選択ボタン122)の1本の線に沿って全
てのノードが配置されるアライメントを示している。図
3の(f)は等間隔を示していて、全てのノードは水平方
向(選択ボタン125)又は垂直方向(選択ボタン126)
に同じ距離だけ離れている。図3の(g)は対称を示して
いる。対称では、ユーザーが特定した一定の軸に関して
全てのノードが対称に配置される。その軸は、水平方向
(選択ボタン127)又は垂直方向(選択ボタン128)で
ある。最後に、図3の(h)はハブ形のデザインを示して
おり、選択された全ての点が中心ノードから等距離にあ
る。ハブ型は選択ボタン130により選択される。中心
ノードがユーザーによって選択されると、選択された全
てのノードが、それらのノードの平均位置から等距離の
円周上の点となる。
【0024】図4〜7は、グラフを設計するときのシス
テムの動作を示している。図4に示されているように、
グラフは、ノードと、ノード同士を結ぶエッジとのグル
ープから成っている。ユーザーはノードの特性と、ノー
ドについてのラベルとを特定する。ノードは、ラベルの
ために充分なスペースを有するように自動的に作られ
る。図4で、ノードはスクリーン上に幾分恣意的に配置
されている。ユーザーは、このグラフの外観を良くする
ためにいろいろなVOFを適用する。図5に示されてい
るように、ユーザーは水平方向アライメント210,2
11,212のために3つのVOFを適用している。ノ
ードを選択すると共にVOF束縛条件を選択することに
よってVOFが適用される。
【0025】VOF束縛条件が選択されると、システム
は、その束縛条件と、前から存在している束縛条件とを
満たすためにノードを自動的に調整し直す。上位レベル
の各束縛条件は、ノードに作用する特定の力の集合に変
換される。ノードの位置を決めるために、一般化された
スプリング・アルゴリズムが使用される。一般化された
スプリング・アルゴリズムは、適用された全ての束縛条
件を局所的に最適に満たす結果をもたらす。一般化され
たスプリング・アルゴリズムでは、全てのノードが、そ
れらのノードを互いに或るポイントに結びつける一組の
スプリングを持つものとして扱われる。スプリングは、
束縛条件の目的を満たすために定義される。例えば、ア
ライメントVOFでは、一組の長さゼロのスプリングが
各ノードをポイントの中心軌跡(centroid)を通る水平又
は垂直の線に結びつける。密集化VOFは短い安静状態
の長さのスプリングをノード間に対をなすように配置す
る。
【0026】スプリング・アルゴリズムを使用すれば、
束縛条件を固守せずに配置することが可能になる。各ノ
ードは、該ノードに作用する全ての力(束縛条件)に基づ
いて配置されることになり、どの束縛条件も完全には満
たさなくても良い。例えば、他に束縛条件がなければ、
アライメントVOFが適用されている選択されたノード
の全てが中心軌跡を通る線上に位置する。更に束縛条件
が適用されると、他の束縛条件からの力がノードに作用
することになるので、一部のノードは実際には中心軌跡
を通る線上に位置しなくなるかも知れない。しかし、ア
ルゴリズムは、ノードに作用する全ての束縛条件を均衡
させる。
【0027】本発明のシステムでは、選択されたVOF
の効果を図解するために質量−スプリング・モデルが連
続的にアニメ化される。従って、ユーザーがVOFを付
け加えると(或いはそれらを除去すると)、その変更を反
映するようにノードがスクリーン上で動かされる。ユー
ザーはディスプレイ上でノード或いはノードのグループ
を動かすこともできる。ノードが動かされるとき、シス
テムは、スプリングの安静位置に基づいて配置を決定し
直す。ノードのユーザー移動は、システムが束縛条件に
対するより良い全体的解決を見いだすのをユーザーが援
助することを可能にする。質量−スプリング・シミュレ
ーションは、満足できるレイアウトを得るためのユーザ
ーとシステムとの協力関係を作るために使用される。シ
ステムはユーザーの変更の各々を解釈して全ての束縛条
件を同時になるべく良好に適用する。ユーザーは、一定
の指定された視覚的束縛条件を満たしながら所望の効果
を得るためにノード及び束縛条件を操作することができ
る。
【0028】図6は、さらなる3つの束縛条件、即ち垂
直対称性220と、垂直アライメント221と、ハブ形
222とを示している。ハブ形222では、中心ノード
は選択されない。上記のように、各エレメントは、選択
された全てのノードの導出された中心軌跡から等距離に
置かれる。図7は、図2に示されているグラフ構造を得
るために更に追加された3つのVOFを示している。左
側の3つのノードは、小さな点230で示されている密
集化VOFの作用を受ける。中央の3つのノードは等間
隔VOF231の作用を受ける。水平アライメントVO
Fは左下の2つのノードに適用される。
【0029】図8は、本発明に従ってグラフを描くシス
テムの動作を記述した流れ図を示している。最初に描画
インターフェースが表示される(ステップ400)。前か
ら存在するグラフが使用されるのであれば、グラフ用の
データがメモリーから検索され(ステップ405)、表示
される(ステップ410)。もし前から存在するグラフが
使用されないのであれば、ステップ410でインターフ
ェースのディスプレイの中の空白のスクリーンがユーザ
ーに呈示される。システムは、その後、ユーザー入力を
待つ(ステップ415)。ユーザーは、ノードを変更す
る、ノードを選択する、及び束縛条件を追加するステッ
プを含む、幾つかのステップを実行することができる。
【0030】ユーザーがノード(ステップ420)又はテ
キスト・ラベルを追加したいときには、ユーザーは位置
と、ラベルの中のタイプとを選択する(ステップ42
3)。所定の全体的束縛条件は、各ノードがラベルをは
め込むのに充分なサイズを持っていなければならないと
いうことである。ユーザーは、最小のサイズより大きな
異なるサイズを対話型で繰り返し設定することができる
(ステップ425)。各ノードは、ラベルを囲むボックス
を含んでおり、且つ、背景とは異なる色をそのボックス
の中に含むことができる。テキスト・ラベルはノードに
似ているけれども、周りを囲むボックスを含んではいな
い。しかし、VOFをノードと同じくテキスト・ラベル
にも適用することができる。
【0031】ユーザーがノードを選択すると(ステップ
430)、そのノードはディスプレイ上で特別に明るく
されて強調される(ステップ435)。VOFを適用する
前にステップ430,435を用いてノードを選択して
おかなければならない。VOFが適用されるべき時(ス
テップ440)、選択されたノードの各々に適当なスプ
リングが付けられる(ステップ444,446,44
8)。スプリングが付けられると、システムはノードに
かかる力を計算して(ステップ470)、VOF束縛条件
の全部を表す全てのスプリングについての安定状態を決
定する。安定状態が計算されているとき、安定状態位置
へ動かされつつある中間位置を表示するようにディスプ
レイを更新することができる(472)。或いは、単にグ
ラフを最終位置で表示し直しても良い(ステップ47
6)。
【0032】VOFが除去されるべきときには(ステッ
プ450及びその次を参照)、スプリングが除去され、
そのグラフについての現在の安定状態を見いだすために
同じプロセス(ステップ470,472,476)が反復
される。また、ノードが除去されるならば(ステップ4
60)、そのノードに対応するスプリングが除去されて
グラフが描き直される。スプリングはノード同士の間で
作用するので、ノードを除去すると他のノードの位置に
影響が及ぶことがある。
【0033】以上の本発明の説明は単なる例示であっ
て、限定をするものではないことは専門家にとっては明
らかであるはずである。いろいろな修正や他の実施の形
態が当業者の範囲内にあって、添付の請求項で定義され
ている発明の範囲内に属すると考えられる。
【0034】
【発明の効果】ユーザーによるグラフの対話型操作のた
めの本発明のシステムでは、視覚的に満足する表示を得
るために束縛条件を適用する。ユーザーはグラフにノー
ドとエッジとを追加する。視覚編成機構(Visual Organi
zation Feature (VOF))束縛条件がノードに適用され
る。システムは、束縛条件を適用するために、一般化ス
プリング・アルゴリズムを使用する。束縛条件が適用さ
れる選択されたノードにスプリングが付けられる。各ス
プリングの長さと第2端点とは、適用されるべき束縛条
件に基づいて設定される。次にシステムはスプリングに
基づいて全てのノードの安静位置をシミュレーションに
よって決定する。ユーザーがVOFを付加し、変更し或
いは削除し、又はノードの位置を変更すると、グラフは
束縛条件に基づいて自動的に再構成される。描画システ
ムと関連するユーザーインターフェースは、グラフとV
OFを適用するための選択ボタンとを表示するためのデ
ィスプレイを提供する。これにより、小さなグラフ向け
のもので、ユーザーが容易に所望の条件を自由に重ねて
導入して満足のできるグラフ描画ができるグラフ描画装
置、グラフ描画方法およびグラフ描画インターフェース
を提供できる。
【図面の簡単な説明】
【図1】 本発明の対話型のグラフ描画装置を実現する
ために使用することのできるコンピュータ・ハードウェ
アを示す図である。
【図2】 本発明のグラフ描画インターフェースで動作
するユーザーインターフェースを示す図である。
【図3】 本発明における視覚編成機構の適用を説明す
るための図である。
【図4】 グラフを描いて本発明に従って束縛条件を適
用するときの過程を説明するための図である。
【図5】 グラフを描いて本発明に従って束縛条件を適
用するときの過程を説明するための図である。
【図6】 グラフを描いて本発明に従って束縛条件を適
用するときの過程を説明するための図である。
【図7】 グラフを描いて本発明に従って束縛条件を適
用するときの過程を説明するための図である。
【図8】 本発明の動作を記述したフローチャート図で
ある。
【符号の説明】
1 コンピュータ・ハードウェア、10 CPU、20
メモリー、30 ディスプレイ、40 キーボード、
50 マウス、100 インターフェース。
───────────────────────────────────────────────────── フロントページの続き (71)出願人 597067574 201 BROADWAY, CAMBRI DGE, MASSACHUSETTS 02139, U.S.A. (72)発明者 カスリーン・リャル アメリカ合衆国、バージニア州、シャーロ ッツビル、コモンウェールス・ドライブ 2111 (72)発明者 ジョセフ・マークス アメリカ合衆国、マサチューセッツ州、ベ ルモント、ダルトン・ロード 61 (72)発明者 スチュアート・メリル・シーバー アメリカ合衆国、マサチューセッツ州、ケ ンブリッジ、コンコード・アベニュー 243、ナンバー2

Claims (12)

    【特許請求の範囲】
  1. 【請求項1】 グラフの複数のノードをそのグラフの視
    覚的表示の指定された場所に作るための手段と、 それらの複数のノード間に複数のエッジを作るための手
    段と、 前記の指定された位置の前記の複数のノードと前記の複
    数のエッジとを視覚的に表示するための手段と、 前記の複数のノードのうちの選択されたノードに適用さ
    れるべき少なくとも1つの視覚編成機構を特定するユー
    ザー入力を受け取るための手段と、 前記の少なくとも1つの視覚編成機構に従って前記の選
    択されたノードを編成するために前記の複数のノードの
    位置を調整するための手段と、 その調整された位置に該ノードを視覚的に表示するため
    の手段と、 を備えたことを特徴とするグラフ描画装置。
  2. 【請求項2】 前記の少なくとも1つの視覚編成機構
    は、選択されたノードの順次配置、選択されたノードの
    密集化、選択されたノードの前記視覚表示の指定された
    部分への隔離区分、選択されたノードのT形配置、線に
    沿っての選択されたノードのアライメント、選択された
    ノード間の均等間隔配置、選択されたノードの対照的配
    置、選択されたノードのハブ形配置、のうちの少なくと
    も1つを含むことを特徴とする請求項1に記載のグラフ
    描画装置。
  3. 【請求項3】 前記の少なくとも1つの視覚編成機構が
    複数の視覚編成機構からなり、前記調整手段が、それら
    の視覚編成機構の全てを実質的に満たすために複数のノ
    ードの位置を調整する手段を含むことを特徴とする請求
    項1に記載のグラフ描画装置。
  4. 【請求項4】 前記の複数の視覚編成機構のうちの少な
    くとも1つを除去するための手段を更に備えたことを特
    徴とする請求項3に記載のグラフ描画装置。
  5. 【請求項5】 前記の複数のノードのうちの少なくとも
    1つの指定された位置を変更するユーザー入力を受け取
    るための手段を更に備えたことを特徴とする請求項1に
    記載のグラフ描画装置。
  6. 【請求項6】 複数のノードと、それらのノード同士を
    結ぶエッジとを有するグラフを対話的に作るためのグラ
    フ描画方法であって、 (a) 前記の複数のノードの各々について位置を指定す
    るユーザー入力を受け取る工程と、 (b) 少なくとも1つのノードを選択する工程と、 (c) その少なくとも1つの選択されたノードに適用さ
    れるべき少なくとも1つの視覚編成機構を指定するユー
    ザー入力を受け取る工程と、 (d) その視覚編成機構に従って複数のノードの位置を
    調整する工程と、 (e) その調整された位置にノードのあるグラフを表示
    する工程と、 を備えたことを特徴とするグラフ描画方法。
  7. 【請求項7】 前記工程(b)から(e)が複数回反復され
    ることを特徴とする請求項6に記載のグラフ描画方法。
  8. 【請求項8】 前記調整工程が、 選択されたノードの各々を、前記の少なくとも1つの視
    覚編成機構によって確定される位置に結びつける仮想ス
    プリングの集合を決定するステップと、 その仮想スプリングに基づいて前記ノードの各々につい
    て安静位置を決定するステップと、 を含むことを特徴とする請求項6に記載のグラフ描画方
    法。
  9. 【請求項9】 少なくとも1つの視覚編成機構を除去す
    る工程と、 除去された前記少なくとも1つの視覚編成機構を含まな
    い視覚編成機構に従って複数のノードの位置を調整する
    工程と、 その調整された位置にノードがあるグラフを表示する工
    程と、 を更に備えたことを特徴とする請求項7に記載のグラフ
    描画方法。
  10. 【請求項10】 少なくとも1つのノードの位置を変更
    する工程と、前記視覚編成機構と、その少なくとも1つ
    のノードの変更された位置とに基づいて複数のノードの
    位置を調整する工程と、 を更に備えたことを特徴とする請求項6に記載のグラフ
    描画方法。
  11. 【請求項11】 複数のノードと複数のエッジとを指定
    された位置に表示するためのグラフ表示領域と、 このグラフ表示領域に表示された少なくとも1つのノー
    ドを選択するための手段と、 選択された少なくとも1つのノードに適用される視覚編
    成機構のユーザー入力を受け取るための束縛条件選択領
    域と、 その視覚編成機構に基づいて前記グラフ表示領域内の前
    記の複数のノードの位置を調整するための手段と、 を備えたことを特徴とするグラフ描画インターフェー
    ス。
  12. 【請求項12】 選択された少なくとも1つのノードに
    関して前記視覚編成機構を前記グラフ表示領域に表示す
    るための手段を更に備えたことを特徴とする請求項11
    に記載のグラフ描画インターフェース。
JP10246662A 1997-09-18 1998-09-01 グラフ描画装置、グラフ描画方法、グラフ描画インターフェース Pending JPH11144071A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/932725 1997-09-18
US08/932,725 US6774899B1 (en) 1997-09-18 1997-09-18 Drawing graphs using user selectable visual oragnization features and/or other user controlled constraints

Publications (1)

Publication Number Publication Date
JPH11144071A true JPH11144071A (ja) 1999-05-28

Family

ID=25462804

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10246662A Pending JPH11144071A (ja) 1997-09-18 1998-09-01 グラフ描画装置、グラフ描画方法、グラフ描画インターフェース

Country Status (5)

Country Link
US (1) US6774899B1 (ja)
EP (1) EP0903693B1 (ja)
JP (1) JPH11144071A (ja)
AT (1) ATE250787T1 (ja)
DE (1) DE69818383T2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011076398A (ja) * 2009-09-30 2011-04-14 Fujitsu Ltd グラフ表示プログラムおよびグラフ表示方法
JP2015075960A (ja) * 2013-10-09 2015-04-20 新日鉄住金ソリューションズ株式会社 グラフ生成装置、グラフ生成方法及びグラフ生成プログラム

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7024419B1 (en) 1999-09-13 2006-04-04 International Business Machines Corp. Network visualization tool utilizing iterative rearrangement of nodes on a grid lattice using gradient method
EP1085693B1 (en) * 1999-09-13 2009-07-29 International Business Machines Corporation Network visualization tool
GB0225109D0 (en) * 2002-10-29 2002-12-11 Univ Newcastle Method of and apparatus for identifying components of a network having high importance for network integrity
JP3790679B2 (ja) * 2001-04-06 2006-06-28 インターナショナル・ビジネス・マシーンズ・コーポレーション グラフデータ視覚化装置、グラフィックス作成方法、プログラム及び記憶媒体
GB0226697D0 (en) * 2002-11-15 2002-12-24 Hewlett Packard Co Processing of data
US20050180330A1 (en) * 2004-02-17 2005-08-18 Touchgraph Llc Method of animating transitions and stabilizing node motion during dynamic graph navigation
US7448012B1 (en) 2004-04-21 2008-11-04 Qi-De Qian Methods and system for improving integrated circuit layout
US8134575B2 (en) 2004-09-30 2012-03-13 Microsoft Corporation Maintaining graphical presentations based on user customizations
US7348982B2 (en) 2004-09-30 2008-03-25 Microsoft Corporation Method, system, and computer-readable medium for creating and laying out a graphic within an application program
US8510657B2 (en) 2004-09-30 2013-08-13 Microsoft Corporation Editing the text of an arbitrary graphic via a hierarchical list
US7548925B2 (en) * 2005-01-24 2009-06-16 Microsoft Corporation Diagrammatic access and arrangement of data
US8438486B2 (en) 2006-02-09 2013-05-07 Microsoft Corporation Automatically converting text to business graphics
US20070250613A1 (en) * 2006-04-25 2007-10-25 Sbc Knowledge Ventures, L.P. Method and apparatus for configuring a workflow
US20070285426A1 (en) * 2006-06-08 2007-12-13 Matina Nicholas A Graph with zoom operated clustering functions
US8479218B2 (en) * 2007-07-09 2013-07-02 National Instruments Corporation Automatically arranging objects in a graphical program block diagram
US8539505B2 (en) * 2007-07-09 2013-09-17 National Instruments Corporation Automatically arranging objects in a selected portion of a graphical program block diagram
US8533739B2 (en) * 2007-07-09 2013-09-10 National Instruments Corporation Re-arranging a graphical program while keeping contents of a structure object fixed
US8533738B2 (en) * 2007-07-09 2013-09-10 National Instruments Corporation Excluding a portion of a graphical program from re-arrangement
US8539367B2 (en) * 2007-09-27 2013-09-17 National Instruments Corporation Automatic re-positioning of graphical program nodes during node placement or node movement
US20090198562A1 (en) * 2008-01-31 2009-08-06 Guenter Wiesinger Generating social graph using market data
US8799325B2 (en) 2010-03-12 2014-08-05 Microsoft Corporation Reordering nodes in a hierarchical structure
US8810576B2 (en) 2010-04-13 2014-08-19 Microsoft Corporation Manipulation and management of links and nodes in large graphs
US9396090B2 (en) * 2010-12-28 2016-07-19 Sap Se System overview diagram generator
US9390525B1 (en) 2011-07-05 2016-07-12 NetBase Solutions, Inc. Graphical representation of frame instances
US10643355B1 (en) 2011-07-05 2020-05-05 NetBase Solutions, Inc. Graphical representation of frame instances and co-occurrences
US8924926B1 (en) * 2013-03-15 2014-12-30 Google Inc. Techniques for disambiguating unconnected components in a visual programming interface
US10380203B1 (en) 2014-05-10 2019-08-13 NetBase Solutions, Inc. Methods and apparatus for author identification of search results
US10536357B2 (en) 2015-06-05 2020-01-14 Cisco Technology, Inc. Late data detection in data center
US10142353B2 (en) 2015-06-05 2018-11-27 Cisco Technology, Inc. System for monitoring and managing datacenters
US9734608B2 (en) 2015-07-30 2017-08-15 Microsoft Technology Licensing, Llc Incremental automatic layout of graph diagram for disjoint graphs
US10748312B2 (en) 2016-02-12 2020-08-18 Microsoft Technology Licensing, Llc Tagging utilizations for selectively preserving chart elements during visualization optimizations
US10347017B2 (en) * 2016-02-12 2019-07-09 Microsoft Technology Licensing, Llc Interactive controls that are collapsible and expandable and sequences for chart visualization optimizations
US20180137667A1 (en) * 2016-11-14 2018-05-17 Oracle International Corporation Graph Visualization Tools With Summary Visualization For Very Large Labeled Graphs
US10585575B2 (en) 2017-05-31 2020-03-10 Oracle International Corporation Visualizing UI tool for graph construction and exploration with alternative action timelines
US11120082B2 (en) 2018-04-18 2021-09-14 Oracle International Corporation Efficient, in-memory, relational representation for heterogeneous graphs
US12361208B2 (en) * 2018-12-19 2025-07-15 Fivecast Pty Ltd Method and system for identifying and visualizing data differences between data sets

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5452238A (en) * 1989-06-13 1995-09-19 Schlumberger Technology Corporation Method for solving geometric constraint systems
US5193183A (en) * 1990-04-27 1993-03-09 Bachman Information Systems, Inc. System for accessing design data of modeler subsystems by reference to partnership set and for dynamically correlating design data of modeler subsystems
US5276789A (en) * 1990-05-14 1994-01-04 Hewlett-Packard Co. Graphic display of network topology
JP3302011B2 (ja) * 1990-06-11 2002-07-15 キヤノン株式会社 図形編集方法及びその装置
FR2675606B1 (fr) * 1991-04-22 1993-07-16 France Telecom Procede de decompilation pour la realisation de graphes au moyen d'un ordinateur.
US5381343A (en) * 1992-05-26 1995-01-10 Cadence Design Systems, Inc. Hier archical pitchmaking compaction method and system for integrated circuit design
US5437008A (en) * 1992-06-23 1995-07-25 Adobe Systems Incorporated Method of establishing constraints and links in a distribution frame between graphical elements and resolving the constaints
US5450540A (en) * 1992-12-16 1995-09-12 Apple Computer, Inc. Graphical interface for interacting constrained actors
US5450535A (en) * 1993-09-24 1995-09-12 At&T Corp. Graphs employing clusters
US5596691A (en) * 1994-06-15 1997-01-21 Claris Corporation Computer system and method for manipulating the display of drawings
JP3350223B2 (ja) * 1994-07-13 2002-11-25 富士通株式会社 グラフ自動レイアウト方法及び装置
JPH0854998A (ja) * 1994-07-28 1996-02-27 Xerox Corp コンピュータ制御ディスプレイシステム
US5815154A (en) * 1995-12-20 1998-09-29 Solidworks Corporation Graphical browser system for displaying and manipulating a computer model
US5845270A (en) * 1996-01-02 1998-12-01 Datafusion, Inc. Multidimensional input-output modeling for organizing information

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011076398A (ja) * 2009-09-30 2011-04-14 Fujitsu Ltd グラフ表示プログラムおよびグラフ表示方法
JP2015075960A (ja) * 2013-10-09 2015-04-20 新日鉄住金ソリューションズ株式会社 グラフ生成装置、グラフ生成方法及びグラフ生成プログラム

Also Published As

Publication number Publication date
EP0903693A2 (en) 1999-03-24
DE69818383D1 (de) 2003-10-30
EP0903693A3 (en) 2000-07-05
EP0903693B1 (en) 2003-09-24
ATE250787T1 (de) 2003-10-15
US6774899B1 (en) 2004-08-10
DE69818383T2 (de) 2004-07-15

Similar Documents

Publication Publication Date Title
JPH11144071A (ja) グラフ描画装置、グラフ描画方法、グラフ描画インターフェース
Encarnacao et al. Computer aided design: fundamentals and system architectures
EP0694829B1 (en) A method and apparatus for visualization of database search results
US9965153B2 (en) Configuring and displaying multidimensional data using two or more correlated interactive screen interfaces
Huang et al. On-line animated visualization of huge graphs using a modified spring algorithm
US6304259B1 (en) Computer system, method and user interface components for abstracting and accessing a body of knowledge
Maloney et al. Directness and liveness in the morphic user interface construction environment
US9367199B2 (en) Dynamical and smart positioning of help overlay graphics in a formation of user interface elements
US6803930B1 (en) Facilitating content viewing during navigation
US5262761A (en) Displaying hierarchical tree-like designs in windows
JPH06203136A (ja) データ収集のディスプレイの選択的操作方法及びデータ処理システム
US20160027197A1 (en) Temporal graph visualization layout
US20160342678A1 (en) Manipulation of arbitrarily related data
GB2351639A (en) Touch screen region assist for hypertext links
CN105339931A (zh) 用于处理数据容器的方法和设备
JP3056297B2 (ja) 図面情報処理システム、設計支援方法
US5642475A (en) Apparatus and method for editing graphics or group graphics displayed on a screen and correlated to each other
US5818460A (en) Method for performing polygon set operations on polygonal regions
JP3186241B2 (ja) 図形編集装置
JP2000003384A (ja) 薄板金属製作設備全体にわたって設計製作情報を分配する装置および方法
US6392662B1 (en) Draw order preservation in a computer-implemented graphics system
Elvins et al. Engineering a human factor-based geographic user interface
JPH076076A (ja) ハイパーメディアシステム
JPH0563819B2 (ja)
JPH09134440A (ja) グラフ図形配置法およびその装置