JP5824412B2 - Graph data visualization device, method and program - Google Patents

Graph data visualization device, method and program Download PDF

Info

Publication number
JP5824412B2
JP5824412B2 JP2012113852A JP2012113852A JP5824412B2 JP 5824412 B2 JP5824412 B2 JP 5824412B2 JP 2012113852 A JP2012113852 A JP 2012113852A JP 2012113852 A JP2012113852 A JP 2012113852A JP 5824412 B2 JP5824412 B2 JP 5824412B2
Authority
JP
Japan
Prior art keywords
node
graph data
nodes
visualization
dividing
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
Application number
JP2012113852A
Other languages
Japanese (ja)
Other versions
JP2013242622A (en
Inventor
達史 松林
達史 松林
藤村 考
考 藤村
高秀 星出
高秀 星出
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2012113852A priority Critical patent/JP5824412B2/en
Publication of JP2013242622A publication Critical patent/JP2013242622A/en
Application granted granted Critical
Publication of JP5824412B2 publication Critical patent/JP5824412B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Generation (AREA)

Description

本発明は、グラフデータ視覚化装置及び方法及びプログラムに係り特に、複数のノードと当該ノード間をつなぐエッジで構成されるグラフデータを可視化するためのグラフデータ視覚化装置及び方法及びプログラムに関する。   The present invention relates to a graph data visualization apparatus, method, and program, and more particularly, to a graph data visualization apparatus, method, and program for visualizing graph data that includes a plurality of nodes and edges that connect the nodes.

ネットワークをグラフとして可視化する技術(以下、単に「可視化技術」と記す)は、一般にデータとデータとの関連性によってネットワークを形成したグラフデータを、低次元の位相空間上に射影することによって可視化することを指す。グラフデータでは、当該要素を示すノードとノード間を繋ぐエッジとで表すことにより視覚化することが可能である。例えば、インターネット上のハイパーリンクの張られたWEBページであれば、各WEBページをノードとして、ハイパーリンクをエッジとして表現することにより、グラフ可視化表示することが可能である。また、例えば、金融・通信・交通・社会組織・遺伝子情報などのネットワーク表示、化学・生物学・医学などのデータをグラフ化したものの表示、テキストデータや画像データを関連性をもとにグラフ化したものの表示、関連性のあるモジュール群の組み合わせ表示(例えば、ICチップのLSI設計図)、地図や参考書の図解表示に用いられるラベル表示などのように、種々の用途が考えられる。それゆえ、コンピュータによる力学的アルゴリズムを用いたグラフ可視化表示技術は、非常に幅広い分野での需要のある技術である。   The technology for visualizing a network as a graph (hereinafter simply referred to as “visualization technology”) generally visualizes graph data that forms a network by the relationship between data and data by projecting it onto a low-dimensional phase space. Refers to that. The graph data can be visualized by expressing it with a node indicating the element and an edge connecting the nodes. For example, in the case of a web page with a hyperlink on the Internet, the graph can be visualized and displayed by representing each web page as a node and the hyperlink as an edge. In addition, for example, network display such as finance / communication / transport / social organization / gene information, graph display of data such as chemistry / biology / medicine, and graph display of text data and image data based on relevance Various applications such as a display of a combination, a combination display of related module groups (for example, an LSI design drawing of an IC chip), a label display used for an illustration display of a map or a reference book, and the like can be considered. Therefore, a graph visualization display technique using a mechanical algorithm by a computer is a technique in demand in a very wide range of fields.

<条件>
グラフ可視化表示技術における重要かつ最大の目的は、グラフ可視化表示装置上において、次の2つの条件を可能な限り満たすことが好ましいとされている。
<Conditions>
An important and greatest object in the graph visualization display technology is preferably to satisfy the following two conditions as much as possible on the graph visualization display device.

[条件1]ノード同士を重ならないように配置する。   [Condition 1] Arrange the nodes so as not to overlap each other.

[条件2]関連性のあるノード同士はエッジを介して接続させ、近傍に配置する。   [Condition 2] Relevant nodes are connected to each other via edges and arranged in the vicinity.

これらの条件を図1に示す。[条件1]は、異なるノード情報が重なって表示されることによる情報の誤読を防ぐためである。[条件2]は、関連性のあるノードを近傍に配置することにより視覚的な情報認識制度を向上させるためである。   These conditions are shown in FIG. [Condition 1] is to prevent misreading of information due to overlapping display of different node information. [Condition 2] is to improve the visual information recognition system by arranging related nodes in the vicinity.

上記の2つの条件を満たすべく、ノードのグラフ可視化表示装置上での配置座標を求めることが必要である。   In order to satisfy the above two conditions, it is necessary to obtain the arrangement coordinates of the node on the graph visualization display device.

<関連技術>
[基本技術]
従来、上記の条件を満たすためのグラフ可視化表示技術には、一般的に力学モデルを用いた手法が広く利用されており、以下の2つが世界中で最も頻繁に利用されている。
<Related technologies>
[Basic technology]
Conventionally, a technique using a dynamic model has been widely used as a graph visualization display technique for satisfying the above conditions, and the following two are most frequently used all over the world.

バネモデル法:全てのノード間に仮想的なバネを仮定し、座標の更新手法を1ノードずつ逐次的に行う手法である。一般的に、ノード間のグラフ上での最短経路パス数を、ノード間のバネの自然長として計算を行う(例えば、非特許文献1参照)。   Spring model method: A method in which virtual springs are assumed between all nodes, and a coordinate update method is sequentially performed node by node. In general, the number of shortest path paths on the graph between the nodes is calculated as the natural length of the spring between the nodes (for example, see Non-Patent Document 1).

Force-directed法:全てのノード間で斥力を与え(例えば、分子間に働くクーロン斥力のように)、接続されているノード間(エッジ)には引力を与え、座標の更新手法をこの引力と斥力の総和を用いてまとめて更新していく(例えば、非特許文献2参照)。   Force-directed method: A repulsive force is applied between all nodes (for example, Coulomb repulsive force acting between molecules), an attractive force is applied between connected nodes (edges), and a coordinate update method is used as this attractive force. The total sum of repulsive forces is used for updating (for example, see Non-Patent Document 2).

上記の2つのいずれの手法においても、全てのノード間に反発する力が働き[条件1]で要求される、ノード同士の重なりの排除を実施することができる。また、接続するノード同士では引き合う力が働き、[条件2]で要求される、接続ノードを近傍に配置することを実施することができる。   In any of the above two methods, a repulsive force acts between all the nodes, and it is possible to eliminate the overlap between nodes required by [Condition 1]. In addition, an attractive force works between the nodes to be connected, so that it is possible to place the connection node in the vicinity, which is required in [Condition 2].

また、上記の2つの手法においては、引力と斥力の関数が一意に決まると、最急降下法やニュートン法などの数値計算法を用いて、目的関数が収束する(最大エントロピーが求まる)ように座標を更新する。   In the above two methods, when the attractive and repulsive functions are uniquely determined, the coordinates are set so that the objective function converges (maximum entropy is obtained) using a numerical calculation method such as the steepest descent method or Newton method. Update.

しかしながら、上述したグラフ可視化表示技術において、複雑なネットワーク構造を持つグラフデータを低次元(特に2次元)に埋め込むためには、[条件2]を満たすことが非常に難しいことがしばしば生じる。特に、エッジ接続されているノード(いわゆる次数の高いノード)が多数存在する場合、近傍に全ての接続するノードを配置することは非常に困難になり、長いエッジが生じてしまうという問題が発生する。   However, in the above-described graph visualization display technology, it is often very difficult to satisfy [Condition 2] in order to embed graph data having a complicated network structure in a low dimension (particularly two dimensions). In particular, when there are a large number of edge-connected nodes (so-called high-order nodes), it becomes very difficult to arrange all the nodes to be connected in the vicinity, resulting in a problem that long edges are generated. .

この問題に対して、通常はエッジの長さに冗長を持たせ、かつ、全体的には極端に長いエッジが生じないように配置を行うことで解決を行う。しかしながら、エッジの長さに冗長を持たせるのにも限界があり、また、この問題解決のアプローチとして、
[アプローチ1]エッジを切断する(極端に長いエッジを許す);
[アプローチ2]ノードを分割する;
という解決方法が考えられる。
To solve this problem, the edge length is usually made redundant, and the overall arrangement is made so as not to cause an extremely long edge. However, there is a limit to making the edge length redundant, and as an approach to solving this problem,
[Approach 1] Cutting edges (allowing extremely long edges);
[Approach 2] Divide the nodes;
A solution can be considered.

[アプローチ1]では、代表的な手法として、LGL法を用いたグラフ可視化計算手法がある(例えば、非特許文献3参照)。LGL法は、グラフデータ構造から最小全域木を作成し、エッジを切断することによって全体の構造を階層的にすることによって全体的に接続関係のあるノードを近傍に配置する。しかしながらLGL法を含め、[アプローチ1]では、そもそもネットワーク構造に関して関連性を無視してしまうことになり、上記の[条件2]を満たすことができない。それゆえ、本発明の競合技術として含めない。   In [Approach 1], as a representative method, there is a graph visualization calculation method using the LGL method (for example, see Non-Patent Document 3). In the LGL method, a minimum spanning tree is created from a graph data structure, and the entire structure is hierarchized by cutting the edges, thereby arranging nodes that are totally connected in the vicinity. However, in [Approach 1] including the LGL method, the relevance regarding the network structure is ignored in the first place, and the above [Condition 2] cannot be satisfied. Therefore, it is not included as a competitive technology of the present invention.

[アプローチ2]の、ノードを分割する方法では、[アプローチ1]と異なりエッジの接続情報を保存することができる。本発明では、[アプローチ2]の「ノードを分割する」を効率よく行う手法を提示する。   Unlike [Approach 1], the method of dividing a node in [Approach 2] can store edge connection information. In the present invention, a method for efficiently performing “dividing a node” in [Approach 2] is presented.

Kamada, T., and Kawai, S.: An algorithm for drawing general undirected graphs, Information Processing Letters, 12, 31, 7-15 (1989).Kamada, T., and Kawai, S .: An algorithm for drawing general undirected graphs, Information Processing Letters, 12, 31, 7-15 (1989). Fruchterman, T. M. J., Reingold, E. M.: Graph Drawing by Force-directed Placement, Software - Practice and Experience, 11, 21, 1129-1174 (1991).Fruchterman, T. M. J., Reingold, E. M .: Graph Drawing by Force-directed Placement, Software-Practice and Experience, 11, 21, 1129-1174 (1991). Adai, LGL: creating a map of protein function with an algorithm for visualizing very large biological networks Lyon, B.: The Opte Project (2005) http://www.opte.org/Adai, LGL: creating a map of protein function with an algorithm for visualizing very large biological networks Lyon, B .: The Opte Project (2005) http://www.opte.org/

上述したグラフ可視化表示技術に対して、基本的に求められる要件は「極端に長いエッジを生成せずに、エッジで接続されたノード同士を近傍に配置する」ことである。具体的には、パソコンのディスプレイ装置に表示されたウィンドウ内、もしくは印刷に堪えられる画像データのサイズ内に収まる程度(現実的には数百から数千ノード規模)のグラフデータをウィンドウ内に、十分グラフのデータ構造を理解できるように配置を行う必要性がある。このとき、上記の2つの条件である「ノード同士が重ならず」かつ「関連性のあるものは近傍に配置」を満たすことが要求される。   For the above-described graph visualization display technique, a fundamental requirement is that “nodes connected by edges are arranged in the vicinity without generating extremely long edges”. Specifically, graph data within a window displayed on the display device of a personal computer or within the size of image data that can be printed (in reality, hundreds to thousands of nodes) is displayed in the window. It is necessary to arrange so that the data structure of the graph can be understood sufficiently. At this time, it is required to satisfy the above two conditions “nodes do not overlap” and “relevant things are arranged in the vicinity”.

通常、一つのノードが複数のノードに接続し、かつ、当該ノードが複数のトピックに属する際、当該ノードのために可視化結果が潰れてしまい、可読性を満たすことができない。例えば、図2にように、「サイトA」の影響力が大きく、「サイトA」と「マタニティ」「ミルク」「玩具」などとの繋がりがわかりにくい。また、「パ・リーグ」と「お茶」が近傍にある理由も直感的に理解することが困難である。   Usually, when one node is connected to a plurality of nodes and the node belongs to a plurality of topics, the visualization result is destroyed for the node, and the readability cannot be satisfied. For example, as shown in FIG. 2, the influence of “site A” is large, and the connection between “site A” and “maternity”, “milk”, “toy”, etc. is difficult to understand. In addition, it is difficult to intuitively understand why "Pa League" and "tea" are nearby.

本発明は、上記の点に鑑みなされたもので、グラフ可視化表示技術において、次数の高いノードに対して、接続関連の可読性が十分満たされない可視化結果に対して、ノード同士が重ならず、かつ、関連性のあるものは近傍に配置、という2つの条件を満たし、ノード間の接続関係の可読性を高めることが可能なグラフデータ視覚化装置及び方法及びプログラムを提供することを目的とする。   The present invention has been made in view of the above points, and in the graph visualization display technology, the nodes do not overlap each other with respect to the visualization result in which the connection-related readability is not sufficiently satisfied for the high-order nodes, and An object of the present invention is to provide a graph data visualization apparatus, method, and program capable of satisfying the two conditions of being related in the vicinity and enhancing the readability of the connection relation between nodes.

上記の課題を解決するため、本発明(請求項1)は、複数のノードと該ノード間を繋ぐエッジで構成されるグラフデータを可視化するためのグラフデータ視覚化装置であって、
記憶手段から前記グラフデータを読み込み、該グラフデータの接続しているエッジ数(以下、「次数」と記す)の大きなノードから伸びたエッジの角度及び当該各エッジの長さの分布に基づいて、ノードの集合を分割し、2次元空間にマッピングする可視化手段を有する。
In order to solve the above problems, the present invention (Claim 1) is a graph data visualization device for visualizing graph data composed of a plurality of nodes and edges connecting the nodes,
Wherein the memory means is read graph data, the number of edges connecting the said graph data (hereinafter, referred to as "order") based on the angle and the distribution of the length of the respective edges between the edges extending from a large node And a visualization means for dividing the set of nodes and mapping them into a two-dimensional space.

また、本発明(請求項2)は、前記可視化手段において、
前記グラフデータについて、所定の力学モデルに従ってノードの座標の最適化計算を行う最適化計算手段と、
前記最適化計算手段の最適化結果から、各ノードに接続されているエッジ長の平均値と分布を計算し、各ノードと接続関係のあるエッジの長さと当該ノードを中心としたベクトルの角度と長さの分布を計算し、該ベクトルの角度と長さが該平均値から外れるノード集合を分割ノード候補として決定する分割ノード決定手段と、
前記分割ノード候補を前記グラフデータから分割するノード分割手段と、
前記ノード分割手段で分割されたグラフデータについて、前記最適化計算手段を実行する手段と、を含む。
Further, according to the present invention (Claim 2), in the visualization means,
For the graph data, optimization calculation means for performing optimization calculation of the coordinates of the node according to a predetermined dynamic model,
From the optimization result of the optimization calculation means, the average value and distribution of edge lengths connected to each node are calculated, the length of the edge connected to each node and the angle of the vector centered on the node, A split node determining unit that calculates a distribution of lengths and determines a node set in which the angle and length of the vector deviate from the average value as split node candidates;
Node dividing means for dividing the divided node candidate from the graph data;
Means for executing the optimization calculation means for the graph data divided by the node dividing means.

上述のように、本発明によれば、グラフデータのグラフ可視化結果において、長く伸びてしまったエッジが多数存在する場合に、グラフ可視化表示における関連するノード同士を近傍に配置する際の可読性の向上とノードの分割による近接性の保持を両立させることが可能となる。   As described above, according to the present invention, when there are many extended edges in the graph visualization result of the graph data, the readability when arranging related nodes in the graph visualization display in the vicinity is improved. And maintaining the proximity by dividing the node.

グラフ視覚化装置における条件を示す図である。It is a figure which shows the conditions in a graph visualization apparatus. グラフデータの例である。It is an example of graph data. 本発明の一実施の形態におけるグラフデータ視覚化装置の構成図である。It is a block diagram of the graph data visualization apparatus in one embodiment of this invention. 本発明の一実施の形態における分割ノード決定処理部の分割ノード候補選択の例である。It is an example of the division node candidate selection of the division node determination process part in one embodiment of this invention. 本発明の一実施の形態におけるノード分割処理部によるノード分割の例である。It is an example of the node division | segmentation by the node division | segmentation process part in one embodiment of this invention. 本発明の一実施の形態における処理装置のフローチャートである。It is a flowchart of the processing apparatus in one embodiment of this invention. 本発明の一実施の形態におけるノード分割処理を説明するための図(その1)である。It is FIG. (1) for demonstrating the node division | segmentation process in one embodiment of this invention. 本発明の一実施の形態におけるノード分割処理を説明するための図(その2)である。It is FIG. (2) for demonstrating the node division | segmentation process in one embodiment of this invention. 本発明の一実施の形態におけるノード分割処理を説明するための図(その3)である。It is FIG. (3) for demonstrating the node division | segmentation process in one embodiment of this invention.

以下、図面と共に本発明の実施の形態を説明する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings.

図3は、本発明の一実施の形態におけるグラフデータ視覚化装置の構成を示す。同図に示す構成は、グラフデータ視覚化装置としてのコンピュータシステムの構成を示す。   FIG. 3 shows the configuration of the graph data visualization apparatus in one embodiment of the present invention. The configuration shown in the figure shows the configuration of a computer system as a graph data visualization device.

同図に示すグラフ可視化装置10は、グラフ可視化表示処理をプログラム制御により実行する処理装置(CPU)11、処理装置11を制御するプログラムを格納した主メモリ12と、処理装置11により生成されたグラフデータの可視化イメージを表示するディスプレイ装置13と、処理対象であるグラフデータを格納した記憶装置14とを備える。   The graph visualization device 10 shown in the figure includes a processing device (CPU) 11 that executes graph visualization display processing by program control, a main memory 12 that stores a program for controlling the processing device 11, and a graph generated by the processing device 11. A display device 13 that displays a visualized image of data and a storage device 14 that stores graph data to be processed are provided.

処理装置11は、ノード配置座標最適化処理部21、分割ノード決定処理部22、ノード分割処理部23を有する。なお、同図には、本実施の形態を実現するための構成のみを図示してある。実際には、図示の構成の他に、各種の命令やデータを入力するためのキーボードやマウスなどの入力装置、各種周辺機器、ネットワークに対するインタフェースなどが設けられていることを前提とする。   The processing device 11 includes a node arrangement coordinate optimization processing unit 21, a split node determination processing unit 22, and a node split processing unit 23. In the figure, only the configuration for realizing the present embodiment is shown. Actually, in addition to the configuration shown in the figure, it is assumed that an input device such as a keyboard and a mouse for inputting various commands and data, various peripheral devices, an interface for a network, and the like are provided.

処理装置11のノード配置座標最適化処理部21は、グラフデータに基づいて追加する所定の力学モデルに従い、ノード座標の最適化計算を行う。   The node arrangement coordinate optimization processing unit 21 of the processing device 11 performs optimization calculation of node coordinates in accordance with a predetermined dynamic model added based on the graph data.

処理装置11の分割ノード決定処理部22は、分割ノードの候補を抽出する。具体的には、図4に示すように、長く伸びたエッジを持つノードを分割ノード候補(同図の場合、サイトA)として抽出する。   The split node determination processing unit 22 of the processing device 11 extracts split node candidates. Specifically, as shown in FIG. 4, a node having a long edge is extracted as a candidate for a split node (in the case of FIG. 4, site A).

処理装置11のノード分割処理部23は、分割ノード決定処理部22で分割ノードの候補が抽出された場合には、ノードとエッジを分割する。例えば、図4の例ではサイトAを図5に示すように分割する。   The node division processing unit 23 of the processing device 11 divides the node and the edge when the candidate for the division node is extracted by the division node determination processing unit 22. For example, in the example of FIG. 4, the site A is divided as shown in FIG.

なお、上記の構成以外に、グラフ可視化装置10は、処理装置11で用いるメモリ(図示せず)を有し、途中の計算結果を格納するものとする。   In addition to the above configuration, the graph visualization device 10 has a memory (not shown) used in the processing device 11 and stores intermediate calculation results.

図6は、本発明の一実施の形態における処理装置のフローチャートである。   FIG. 6 is a flowchart of the processing apparatus according to the embodiment of the present invention.

ステップ201) ノード配置座標最適化処理部21は、記憶装置14からグラフデータを読み込む。   Step 201) The node arrangement coordinate optimization processing unit 21 reads graph data from the storage device 14.

ステップ202) ノード配置座標最適化処理部21は、所定の力学モデルに従う運動方程式よりノードの最適な配置を算出して更新し、メモリ(図示せず)に格納する。   Step 202) The node arrangement coordinate optimization processing unit 21 calculates and updates the optimum arrangement of the node from the equation of motion according to a predetermined dynamic model, and stores it in a memory (not shown).

ステップ203) 分割ノード決定処理部22は、グラフ可視化計算によってノードの配置を行った際に、各ノードに接続されているエッジの長さの分布を求め、平均や分散が大きいノードを候補ノードとして抽出し、メモリ(図示せず)に格納する。   Step 203) The split node determination processing unit 22 obtains the distribution of the lengths of the edges connected to each node when the nodes are arranged by the graph visualization calculation, and selects a node having a large average or variance as a candidate node. Extract and store in memory (not shown).

ステップ204) ステップ203において抽出された候補ノードがない場合は、当該処理を終了し、候補ノードがある場合はステップ205に移行する。   Step 204) If there is no candidate node extracted in step 203, the process is terminated. If there is a candidate node, the process proceeds to step 205.

ステップ205) ノード分割処理部23は、候補ノードが、特に中心性の高いノードが、あらゆる方向から力を受けている場合、そのノードを分割する。具体的な方法としては、任意のノードに対して接続するエッジの長さに偏りがあり、かつ長いエッジが多数存在する場合、それらの同じ方向を向いている長いエッジをまとめることによりノードを分割する。図5の例では、「サイトA」のノードを分割することによって、「サイトA」と「マタニティ」「ミルク」「玩具」などとの繋がりも分かり易くなり、また、「パ・リーグ」と「お茶」が近傍にある理由も直感的に分かり易くなる。例えば、購買ログデータのように、あらゆるジャンルを扱うようなEC(Electronic Commerce)サイトと、専門的なECサイトの可視化結果を比較するような時には有効な手段となる。   Step 205) The node division processing unit 23 divides a candidate node, particularly a node having a high centrality, when receiving force from all directions. As a concrete method, when there is a bias in the length of the edge connected to an arbitrary node and there are many long edges, the nodes are divided by grouping the long edges facing the same direction. To do. In the example of FIG. 5, by dividing the node of “site A”, it becomes easy to understand the connection between “site A” and “maternity” “milk” “toy” and the like, and “pa league” and “ The reason why "tea" is nearby is also intuitively understandable. For example, it is an effective means for comparing visualization results of EC (Electronic Commerce) sites that handle all genres, such as purchase log data, and specialized EC sites.

当該処理の後、ステップ202に移行し、再度最適な配置の計算を行う。   After the processing, the process proceeds to step 202, and the optimum arrangement is calculated again.

上記のステップ204において、抽出候補がなくなったら、分割結果(イメージデータ)をディスプレイ装置13に出力する。   If there are no extraction candidates in step 204 above, the division result (image data) is output to the display device 13.

以下に上記の処理装置11の処理を詳細に説明する。   Hereinafter, the processing of the processing device 11 will be described in detail.

図7〜図9は、本発明の一実施の形態におけるノード分割処理を説明するための図である。   7 to 9 are diagrams for explaining the node division processing according to the embodiment of the present invention.

図7(a)はグラフデータの構成を示す。グラフデータはID、次数、接続先の項目を有する。次数とは、接続しているエッジ数である。図7(b)は、図7(a)のデータを元に行ったグラフ可視化結果を示す。図7(c)は、図7(b)の可視化結果から、各ノードに接続されているエッジの長さ平均の分布の計算結果の例である。これらの計算結果はメモリ(図示せず)に格納されるものとする。   FIG. 7A shows the structure of the graph data. The graph data has items of ID, order, and connection destination. The order is the number of connected edges. FIG.7 (b) shows the graph visualization result performed based on the data of Fig.7 (a). FIG. 7C is an example of a calculation result of a distribution of average lengths of edges connected to each node from the visualization result of FIG. These calculation results are stored in a memory (not shown).

ノード配置座標最適化処理部21において、図7(a)のグラフデータを元にグラフ可視化計算を行うと、図7(b)のような結果が得られる。これにより、分割ノード決定処理部22は、各ノードの次数分布や、各ノードに接続しているエッジの平均値や分散などから、分割する候補となるノードを決定する。この場合、図7(c)のように、次数も平均も分散も大きい「ID:5」を選択する。このとき、単純に次数から決定してもよい。なぜなら、次数(エッジの本数)が少ないものは分散や平均が比較的大きくなるため、単純に分散や平均のみで決定すると、次数が少ないノードを優先的に選んでしまうため好ましくない。   When the node arrangement coordinate optimization processing unit 21 performs graph visualization calculation based on the graph data of FIG. 7A, a result as shown in FIG. 7B is obtained. As a result, the split node determination processing unit 22 determines a candidate node to be split based on the degree distribution of each node, the average value or variance of edges connected to each node, and the like. In this case, as shown in FIG. 7C, “ID: 5” having a large degree, average, and variance is selected. At this time, it may be determined simply from the order. This is because, when the degree (number of edges) is small, the variance or average becomes relatively large. Therefore, if the decision is made only by the variance or average, a node with a low degree is preferentially selected.

分割ノード決定処理部22は、図8(d)に示すように、選択した「ID:5」のノードに対して各エッジの角度Θとエッジの長さの分布を計算する。次に、図8(e)は、求めたエッジの角度Θとエッジの長さを図示したものであり、分割ノード決定処理部22は、エッジが長く伸びて、かつ、同じ方向に伸びた「ID:1」「ID:2」「ID:3」(点線で囲まれたID)を選ぶ。図8(f)では、ノード分割処理部23において、「ID:5」を、この選択した「ID:1」「ID:2」「ID:3」をエッジで結ぶノード「ID:5'」と残りのノードを結んだ「ID:5''」に分割したグラフデータを示している。この「ID:5」を分割した図8(f)のグラフデータを用いてノード配置座標最適化処理部21が可視化計算を行った結果を図9(g)の左側に示す。このとき、目的によっては、図9(g)の右側に示すように、「ID:5'」と「ID:5''」を接続してグラフ可視化計算を行ってもよい。   As shown in FIG. 8D, the split node determination processing unit 22 calculates the distribution of the angle Θ and the edge length of each edge with respect to the selected node of “ID: 5”. Next, FIG. 8E illustrates the obtained edge angle Θ and the length of the edge. The split node determination processing unit 22 extends the edge long and extends in the same direction. Select “ID: 1”, “ID: 2”, “ID: 3” (ID surrounded by a dotted line). In FIG. 8F, in the node division processing unit 23, “ID: 5” is a node “ID: 5 ′” that connects the selected “ID: 1”, “ID: 2”, and “ID: 3” with an edge. And graph data divided into “ID: 5 ″” connecting the remaining nodes. The result of the visualization calculation performed by the node arrangement coordinate optimization processing unit 21 using the graph data of FIG. 8F obtained by dividing “ID: 5” is shown on the left side of FIG. At this time, depending on the purpose, as shown on the right side of FIG. 9G, the graph visualization calculation may be performed by connecting “ID: 5 ′” and “ID: 5 ″”.

なお、上記の処理装置11のノード配置座標最適化処理部21、分割ノード決定処理部22、ノード分割処理部23の処理をプログラムとして構築し、当該グラフ可視化表示装置の主メモリ12に格納して実行させる他、グラフ可視化装置として利用されるコンピュータにインストールして実行させる、または、ネットワークを介して流通させることが可能である。   The processing of the node arrangement coordinate optimization processing unit 21, the split node determination processing unit 22, and the node split processing unit 23 of the processing device 11 is constructed as a program and stored in the main memory 12 of the graph visualization display device. Besides being executed, it can be installed and executed on a computer used as a graph visualization device, or distributed via a network.

本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において、種々変更・応用が可能である。   The present invention is not limited to the above-described embodiments, and various modifications and applications are possible within the scope of the claims.

10 グラフ視覚化装置
11 処理装置
12 主メモリ
13 ディスプレイ装置
21 ノード配置座標最適化処理部
22 分割ノード決定処理部
23 ノード分割処理部
DESCRIPTION OF SYMBOLS 10 Graph visualization apparatus 11 Processing apparatus 12 Main memory 13 Display apparatus 21 Node arrangement coordinate optimization process part 22 Split node determination process part 23 Node split process part

Claims (5)

複数のノードと該ノード間を繋ぐエッジで構成されるグラフデータを可視化するためのグラフデータ視覚化装置であって、
記憶手段から前記グラフデータを読み込み、該グラフデータの接続しているエッジ数(以下、「次数」と記す)の大きなノードから伸びたエッジの角度及び当該各エッジの長さの分布に基づいて、ノードの集合を分割し、2次元空間にマッピングする可視化手段を有することを特徴とするグラフデータ視覚化装置。
A graph data visualization device for visualizing graph data composed of a plurality of nodes and edges connecting the nodes,
Wherein the memory means is read graph data, the number of edges connecting the said graph data (hereinafter, referred to as "order") based on the angle and the distribution of the length of the respective edges between the edges extending from a large node And a graph data visualization device characterized by having a visualization means for dividing a set of nodes and mapping them to a two-dimensional space.
前記可視化手段は、
前記グラフデータについて、所定の力学モデルに従ってノードの座標の最適化計算を行う最適化計算手段と、
前記最適化計算手段の最適化結果から、各ノードに接続されているエッジ長の平均値と分布を計算し、各ノードと接続関係のあるエッジの長さと当該ノードを中心としたベクトルの角度と長さの分布を計算し、該ベクトルの角度と長さが該平均値から外れるノード集合を分割ノード候補として決定する分割ノード決定手段と、
前記分割ノード候補を前記グラフデータから分割するノード分割手段と、
前記ノード分割手段で分割されたグラフデータについて、前記最適化計算手段を実行する手段と、
を含む請求項1記載のグラフデータ視覚化装置。
The visualization means includes:
For the graph data, optimization calculation means for performing optimization calculation of the coordinates of the node according to a predetermined dynamic model,
From the optimization result of the optimization calculation means, the average value and distribution of edge lengths connected to each node are calculated, the length of the edge connected to each node and the angle of the vector centered on the node, A split node determining unit that calculates a distribution of lengths and determines a node set in which the angle and length of the vector deviate from the average value as split node candidates;
Node dividing means for dividing the divided node candidate from the graph data;
Means for executing the optimization calculation means for the graph data divided by the node dividing means;
The graph data visualization apparatus according to claim 1, comprising:
複数のノードと該ノード間を繋ぐエッジで構成されるグラフデータを可視化するためのグラフデータ視覚化方法であって、
記憶手段から前記グラフデータを読み込み、該グラフデータの接続しているエッジ数(以下、「次数」と記す)の大きなノードから伸びたエッジの角度及び当該各エッジの長さの分布に基づいて、ノードの集合を分割し、2次元空間にマッピングする可視化ステップを行うことを特徴とするグラフデータ視覚化方法。
A graph data visualization method for visualizing graph data composed of a plurality of nodes and edges connecting the nodes,
Wherein the memory means is read graph data, the number of edges connecting the said graph data (hereinafter, referred to as "order") based on the angle and the distribution of the length of the respective edges between the edges extending from a large node Then, a graph data visualization method characterized by performing a visualization step of dividing a set of nodes and mapping to a two-dimensional space.
前記可視化ステップにおいて、
前記グラフデータについて、所定の力学モデルに従ってノードの座標の最適化計算を行う最適化計算ステップと、
前記最適化計算ステップの最適化結果から、各ノードに接続されているエッジ長の平均値と分布を計算し、各ノードと接続関係のあるエッジの長さと当該ノードを中心としたベクトルの角度と長さの分布を計算し、該ベクトルの角度と長さが該平均値から外れるノード集合を分割ノード候補として決定する分割ノード決定ステップと、
前記分割ノード候補を前記グラフデータから分割するノード分割ステップと、
を、前記分割ノード候補がなくなるまで繰り返す、
請求項3記載のグラフデータ視覚化方法。
In the visualization step,
For the graph data, an optimization calculation step for performing optimization calculation of the coordinates of the node according to a predetermined dynamic model,
From the optimization result of the optimization calculation step, the average value and distribution of the edge lengths connected to each node are calculated, the length of the edge connected to each node and the angle of the vector centered on the node, A split node determining step of calculating a distribution of lengths and determining a set of nodes whose vector angles and lengths deviate from the average value as split node candidates;
A node dividing step of dividing the divided node candidate from the graph data;
Is repeated until there are no more split node candidates.
The graph data visualization method according to claim 3.
コンピュータを、
請求項1または2に記載のグラフデータ視覚化装置の各手段として機能させるためのグラフデータ視覚化プログラム。
Computer
A graph data visualization program for functioning as each means of the graph data visualization device according to claim 1.
JP2012113852A 2012-05-17 2012-05-17 Graph data visualization device, method and program Expired - Fee Related JP5824412B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012113852A JP5824412B2 (en) 2012-05-17 2012-05-17 Graph data visualization device, method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012113852A JP5824412B2 (en) 2012-05-17 2012-05-17 Graph data visualization device, method and program

Publications (2)

Publication Number Publication Date
JP2013242622A JP2013242622A (en) 2013-12-05
JP5824412B2 true JP5824412B2 (en) 2015-11-25

Family

ID=49843469

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012113852A Expired - Fee Related JP5824412B2 (en) 2012-05-17 2012-05-17 Graph data visualization device, method and program

Country Status (1)

Country Link
JP (1) JP5824412B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112417633B (en) * 2020-12-01 2022-06-14 中国人民解放军国防科技大学 Large-scale network-oriented graph layout method and device
CN117112807B (en) * 2023-10-23 2024-01-30 浙江大学 Knowledge graph associated information focus visualization method and system based on mechanical model

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060290697A1 (en) * 2005-06-24 2006-12-28 Tom Sawyer Software System for arranging a plurality of relational nodes into graphical layout form
JP2009134520A (en) * 2007-11-30 2009-06-18 Nec Corp Social network display system, method, and program
JP5118114B2 (en) * 2009-10-20 2013-01-16 日本電信電話株式会社 Region characteristic classification apparatus, method, and program

Also Published As

Publication number Publication date
JP2013242622A (en) 2013-12-05

Similar Documents

Publication Publication Date Title
JP6606997B2 (en) Machine learning program, machine learning method, and information processing apparatus
AU2015292700B2 (en) Data lineage summarization
JP3790679B2 (en) Graph data visualization device, graphics creation method, program, and storage medium
US20160147912A1 (en) Design space for materials selection
US20160026355A1 (en) Accessible chart navigation using object neighborhood
JP2016162200A5 (en) Information processing system, server, control method, and computer program
JP5824412B2 (en) Graph data visualization device, method and program
US20180067996A1 (en) Automated graph layout using metadata
JP6126679B2 (en) Interactive control of link curvature
JP5309780B2 (en) Display information generating apparatus and program
JP6268322B1 (en) Learning data accuracy visualization system, learning data accuracy visualization method, and program
US20160275707A1 (en) Graph processing system, graph processing method, and non-transitory computer readable medium
Faieghi et al. Fast and cross-vendor OpenCL-based implementation for voxelization of triangular mesh models
JP2011107890A (en) Design support program and design support device
JP6402637B2 (en) Analysis program, analysis method, and analysis apparatus
US10885685B2 (en) Electronic apparatus for drawing graphs of mathematical expressions
Di Giacomo et al. Upward-rightward planar drawings
JP5290138B2 (en) Mesh changing device, mesh changing method, and program
CN112417351B (en) Method and device for determining visual track of user, computer equipment and storage medium
JP2014203195A (en) Design support device
Forghani et al. Phylotravis: A new approach to visualization of the phylogenetic tree
EP3067806A1 (en) System and method for performing a multiphysics simulation
Papp et al. TabularVis: An Interactive Relationship Visualization Tool Supported by Optimization and Search Algorithms
JP2008139359A (en) Map data processing method and apparatus
Fedarko et al. Hierarchically visualizing metagenome assembly graphs with metagenomescope

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140701

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150724

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150728

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150817

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: 20151006

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20151009

R150 Certificate of patent or registration of utility model

Ref document number: 5824412

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees