グラフ描画

同義語:graph drawingグラフの描画

概要

グラフ描画(graph drawing)とは、グラフの頂点を平面や空間の相異なる点で、辺を両端を結ぶ弧で表すことであり、交差のない描画(平面描画)、辺がすべて線分の描画(直線描画)、交差の個数、辺の長さや円の接し方による表現などの問いを含む分野でもある。空間 $\mathbb{R}^3$ では、頂点をモーメント曲線 $(t,t^2,t^3)$ の上に置けば、どの有限グラフも線分で交差なしに描ける。平面描画をもつ単純グラフは直線の平面描画ももつ(Fáry の定理)ので、平面に描けるグラフの範囲は辺を線分に限っても変わらない。

$$\newcommand{C}[0]{\mathbb{C}} \newcommand{div}[0]{\mathbin{÷}} \newcommand{N}[0]{\mathbb{N}} \newcommand{Q}[0]{\mathbb{Q}} \newcommand{R}[0]{\mathbb{R}} \newcommand{Z}[0]{\mathbb{Z}} $$

前提知識: グラフ, 平面グラフ, Jordan曲線定理

グラフ描画(graph drawing)とは、グラフの頂点を平面(や空間)の点で、辺をその両端を結ぶ曲線で表すこと、またそのような表し方を研究する分野である。同じグラフにも描き方はいくらでもあり、「辺どうしを交差させずに描けるか」「交差を何回まで減らせるか」「辺をすべて線分にできるか」「辺の長さをそろえられるか」「円の接し方で表せるか」といった問いが生まれる。平面グラフの理論、交差数、マッチ棒グラフや円充填はいずれもこの問いの一部である。
この記事では、描画の定義と分野の主な問いを地図としてまとめ、代表的な定理を 2 つ証明する。1 つ目は、空間 $\mathbb{R}^3$ ではどの有限グラフも辺を線分にして交差なしに描けること(モーメント曲線を使う)。2 つ目は、平面に交差なしに描ける単純グラフは、辺をすべて線分にして交差なしに描けるという Fáry の定理 である(Fár48)。後者は「曲線を許しても線分に限っても、平面に描けるグラフの範囲は変わらない」ことを意味し、直線描画を扱う多くの結果の出発点になる。

定義

この記事では、グラフは有限で無向とし、とくに断らない限り単純(ループも多重辺もない)とする。$\mathbb{R}^d$ の 弧 とは、閉区間 $[0,1]$ から $\mathbb{R}^d$ への単射連続写像の像であり、$0,1$ の像を弧の 端点、それ以外の点を 内点 という。

描画

グラフ $G=(V,E)$ の $\mathbb{R}^d$($d=2,3$)への 描画 とは、各頂点 $v$ に相異なる点 $\bar v\in\mathbb{R}^d$ を、各辺 $uv$ に端点が $\bar u,\bar v$ の弧 $\bar e$ を対応させたもので、どの弧の内点も頂点を表す点でないものをいう。2 本の辺の弧が内点を共有するとき、その点を 交差 という。交差のない平面への描画を 平面描画(埋め込み)、すべての辺の弧が線分である描画を 直線描画 という。

平面グラフ は、平面描画をもつグラフのことである(平面描画を 1 つ固定したものを平面グラフと呼び、平面描画をもつことを平面的という流儀もある)。平面描画 $\bar G$ に対し、$\mathbb{R}^2$ から辺と頂点の像を除いた集合の連結成分を 面 という。有界でない面がちょうど 1 つあり、これを 外面 という。

面の構造が同じ描画

グラフ $G$ の 2 つの平面描画が 面の構造が同じ であるとは、頂点・辺・面の間に 1 対 1 の対応があって、頂点と辺の接続、辺・頂点と面の境界の関係を保ち、外面を外面に対応させることをいう。

この同値関係は Fár48 §1(p. 230)の「equal」にあたる。交差の個数を最小にする問題は 交差数(グラフ) の記事で扱う。そこでの「良い描画」(端点を共有する 2 辺は交差せず、2 辺の共有点は有限個である、など)は、この記事の描画にさらに条件を課したものである。

分野の地図

問い代表的な結果扱う記事
交差なしに平面に描けるか$K_5$・$K_{3,3}$ の細分やマイナーを含まないことによる特徴づけ(Kuratowski・Wagner)平面グラフ、Kuratowskiの定理、平面性判定
交差を何回まで減らせるか辺が多いグラフの交差数の下界(交差数補題)交差数(グラフ)
辺を線分にできるか平面描画をもてば直線の平面描画ももつ(Fáry の定理)この記事
空間で描くとどのグラフも直線で交差なしに描けるこの記事
辺の長さを $1$ にそろえられるか長さ $1$ の線分による平面描画マッチ棒グラフ、単位距離グラフ
円の接し方で表せるかどの単純平面グラフも円板の接触グラフになる(円充填定理)円充填定理、ペニーグラフ
すべての頂点を外面の境界に置けるか$K_4$・$K_{2,3}$ をマイナーにもたないことによる特徴づけ外平面グラフ
平面以外の曲面に描くと曲面上の Euler の公式と種数交差数(グラフ)
頂点を整数点に置くと正方格子の部分グラフは長さ $1$ の直線描画をもつ格子グラフ

直線描画には、ほかにも「内側の面をすべて凸多角形にできるか」という問いがある。

空間での直線描画

$t\in\mathbb{R}$ に対し $\gamma(t):=(t,t^2,t^3)\in\mathbb{R}^3$ とおく。$\gamma$ の像を モーメント曲線 という。

モーメント曲線上の点の一般の位置

$t_1,\dots,t_4$ を相異なる実数とする。$\gamma(t_1),\dots,\gamma(t_4)$ を同時に含む平面はない。とくに、相異なる 3 点 $\gamma(t_1),\gamma(t_2),\gamma(t_3)$ は 1 直線上にない。

平面は $(a,b,c)\neq(0,0,0)$ によって $\{(x,y,z)\mid ax+by+cz=e\}$ と書ける。$\gamma(t)$ がこの平面にあることは $ct^3+bt^2+at-e=0$ と同値である。左辺は $0$ でない($a,b,c$ のどれかが $0$ でない)次数 $3$ 以下の多項式なので、根は高々 3 個である。よって 4 点を含む平面はない。3 点が 1 直線上にあれば、その直線と第 4 の点 $\gamma(t_4)$($t_4$ は $t_1,t_2,t_3$ と異なる任意の値)を含む平面が 4 点を含むので矛盾する。$\square$

空間ではどのグラフも直線で交差なしに描ける

有限な単純グラフ $G$ の頂点を $v_1,\dots,v_n$ とし、相異なる実数 $t_1,\dots,t_n$ をとる。頂点 $v_i$ を $\gamma(t_i)$ に置き、各辺をその両端を結ぶ線分で描くと、これは $\mathbb{R}^3$ への交差のない直線描画である。

頂点の点は相異なる。lem-gd-moment により 3 つの頂点の点は 1 直線上にないので、どの辺の線分の内部にも頂点の点はない。2 本の辺の線分 $\sigma,\sigma'$ が内点を共有したとする。両端が 4 つとも相異なれば、2 つの線分は交わるので同じ平面にあり、4 つの頂点の点が 1 つの平面に含まれて lem-gd-moment に反する。共通の端点 $\gamma(t_i)$ をもつ場合、他方の端を $\gamma(t_j),\gamma(t_k)$($j\neq k$)とすると、2 つの線分は $\gamma(t_i)$ のほかにもう 1 点を共有するので、同じ直線の上にあり、3 点 $\gamma(t_i),\gamma(t_j),\gamma(t_k)$ が 1 直線上にあることになって矛盾する。$\square$

この定理は Die25 の第 4 章の演習 1(p. 117)として挙げられている。平面では同じことは成り立たない。$K_5$ は平面描画をもたないので(平面グラフ の命題「$K_5$ は平面グラフでない」)、直線の平面描画ももたない。

Fáry の定理

平面描画をもつグラフは、曲線の辺を許して描けるグラフである。それを線分だけで描き直せるかが問題である。

Fáry の定理

有限な単純グラフが平面描画をもてば、直線の平面描画ももつ。

強い形と証明の筋

Fár48 の定理(p. 230)はさらに、与えられた平面描画と面の構造が同じ直線の平面描画があることを述べている。多重辺は除く必要がある(2 本の平行な辺を線分で描くと重なる)。証明(prf-gd-fary)は Fár48 の筋に従い、多角形の中に頂点を置き直す段(lem-gd-kernel)を詳しく述べる。

三角形分割への帰着

頂点が $3$ 個以上の単純グラフの平面描画で、外面を含むすべての面の境界が長さ $3$ の閉路であるものを 平面三角形分割 という。次の 2 つの事実は平面の位相による。この記事では証明しない。

三角形分割への帰着

頂点が $3$ 個以上の単純グラフの平面描画には、交差を作らずに辺を描き足して、平面三角形分割にできる。

帰着の所在

これは Fár48 Lemma 2(pp. 230–231)であり、Die25 Proposition 4.2.8(p. 100。頂点が 3 個以上の平面グラフは、辺を加えられないとき、かつそのときに限り平面三角形分割である)からも従う。直線描画から辺を除いても直線描画なので、thm-gd-fary は平面三角形分割について示せばよい。

頂点のまわりの閉路

頂点が $4$ 個以上の平面三角形分割 $G$ で、頂点 $P$ に接続する辺を $P$ のまわりの巡回順に $PP_1,\dots,PP_k$ とする。このとき $P_1P_2,\dots,P_{k-1}P_k,P_kP_1$ は $G$ の辺で、長さ $k$ の閉路 $C_P$ をなし、$P$ に接する面は三角形 $PP_jP_{j+1}$(添字は $k$ を法とする)である。$P$ が外面の境界になければ、$C_P$ の内側には $P$ 以外の頂点はない。

頂点のまわりの閉路の所在

これは Fár48 Lemma 4(pp. 231–232)である。

多角形の中に頂点を置く

平面の点 $a,b$ について $\det(a,b)$ を 2 次の行列式とする。$\det(b-x,c-x)>0$ は、$x$ が $b$ から $c$ へ向かう直線の左側(反時計回りの側)にあることを表す。

扇形に分けた多角形の中の点

$k\ge3$ とし、平面の点 $Q_1,\dots,Q_k$ を頂点とする閉じた折れ線 $Q_1Q_2\cdots Q_kQ_1$ が自分と交わらない(単純な多角形をなす)とする。さらに、三角形 $Q_1Q_jQ_{j+1}$($2\le j\le k-1$)がどれも $\det(Q_j-Q_1,Q_{j+1}-Q_1)>0$ をみたすとする。このとき点 $x$ を次のようにとれる:$x$ は多角形の内部にあり、各 $Q_j$ への開線分 $(x,Q_j)$ は多角形の内部に含まれ、三角形 $xQ_jQ_{j+1}$($j=1,\dots,k$、$Q_{k+1}=Q_1$)は内部が互いに交わらず、合わせると多角形の閉領域になる。

段 1(方向の選択).$\det(Q_2-Q_1,d)>0$ かつ $\det(Q_1-Q_k,d)>0$ をみたすベクトル $d$ をとる。2 つの条件はそれぞれ原点を通る直線の片側の開半平面を表す。2 つの半平面が交わらないのは、2 つの直線が一致して向きが逆、すなわち $Q_k-Q_1$ が $Q_2-Q_1$ の正の数倍のときに限るが、そのとき辺 $Q_1Q_2$ と $Q_kQ_1$ が重なって多角形が単純でなくなる。よって $d$ はとれる。
段 2(すべての辺の左側にあること).$\varepsilon>0$ とし $x:=Q_1+\varepsilon d$ とおく。
$$ \det(Q_1-x,Q_2-x)=\varepsilon\det(Q_2-Q_1,d)>0,\qquad \det(Q_k-x,Q_1-x)=\varepsilon\det(Q_1-Q_k,d)>0 $$
である。$2\le j\le k-1$ については、$x=Q_1$ で $\det(Q_j-Q_1,Q_{j+1}-Q_1)>0$ なので、連続性により $\varepsilon$ が十分小さければ $\det(Q_j-x,Q_{j+1}-x)>0$ である。こうして、$j=1,\dots,k$ のすべてで $\det(Q_j-x,Q_{j+1}-x)>0$ となる $x$ が得られた。
段 3(扇形に分かれること).$Q_j-x$ から $Q_{j+1}-x$ へ反時計回りに測った角を $\theta_j$ とすると、段 2 により $0< \theta_j< \pi$ である。$\theta_1+\dots+\theta_k$ は折れ線が $x$ のまわりを回る回数(回転数)の $2\pi$ 倍である。単純な多角形の回転数は、内部の点で $\pm1$、外部の点で $0$ である(回転数 の注意「単純閉曲線の回転数」。この記事では証明しない)。和は正なので回転数は $1$、すなわち $x$ は内部にあって $\theta_1+\dots+\theta_k=2\pi$ である。したがって $x$ から $Q_1,\dots,Q_k$ へ向かう半直線は、反時計回りにちょうど 1 周する順に並び、三角形 $xQ_jQ_{j+1}$ は隣り合う半直線の間の角領域に 1 つずつ入る。よってそれらの内部は互いに交わらず、和は境界が多角形 $Q_1\cdots Q_k$ の閉領域、すなわち多角形の閉領域である。開線分 $(x,Q_j)$ は隣り合う 2 つの三角形の共通の辺の内部なので、多角形の内部に含まれる。$\square$

点の選び方についての注意

直線 $Q_jQ_{j+1}$($2\le j\le k-1$)について $Q_1$ と同じ側にある、という条件だけでは足りない。$Q_1$ での多角形の内角が $\pi$ より大きいとき、多角形の内部でこれらの条件をみたしても $Q_2$ が見えない点がある(「反例」の表の最後の行)。段 1 で、$Q_1$ に接する 2 辺についての条件を課したのはこのためである。

定理の証明

lem-gd-reduction により、平面三角形分割 $G$ について、面の構造が同じ直線の平面描画があることを頂点数 $n$ の帰納法で示せばよい($n\le2$ のグラフは明らかに直線で描ける)。$n=3$ なら $G$ は三角形で、三角形の頂点に置けばよい。$n\ge4$ とする。外面の境界は 3 頂点なので、外面の境界にない頂点 $P$ がある。lem-gd-link の閉路 $C_P=P_1\cdots P_k$ をとる。$P$ と $P$ に接続する辺を除くと、$C_P$ の内側は 1 つの面になる。そこに $P_1$ と $P_3,\dots,P_{k-1}$ を結ぶ互いに交わらない弧を描き足したもの(例えば、もとの辺 $P_1P$ と $PP_j$ をつないだ弧を $P$ の近くで少しずらす)を $G^\ast$ とする。
場合 1:$G^\ast$ が単純グラフのとき.$G^\ast$ は $n-1$ 頂点の平面三角形分割で、その面は、$G$ の面のうち $P$ に接しないものと、三角形 $P_1P_jP_{j+1}$($2\le j\le k-1$)である。帰納法の仮定により、$G^\ast$ と面の構造が同じ直線の平面描画がある。その中で、三角形 $P_1P_jP_{j+1}$ は内部に何もない退化しない三角形として描かれ、隣り合う 2 つは共通の辺 $P_1P_{j+1}$ の反対側にあるので、$\det(P_j-P_1,P_{j+1}-P_1)$ の符号はすべて等しい。必要なら番号を逆順に付け替えて(または全体を鏡映して)正とする。これらの三角形と弦を合わせたものは、$C_P$ の描く多角形の閉領域である。lem-gd-kernel の点 $x$ をとり、弦 $P_1P_3,\dots,P_1P_{k-1}$ を除いて、$P$ を $x$ に置き、線分 $xP_1,\dots,xP_k$ を描く。lem-gd-kernel により、これらの線分はほかと交わらず、新しい面は三角形 $xP_jP_{j+1}$ である。ほかの面は変わらないので、$G$ と面の構造が同じ直線の平面描画が得られる。
場合 2:$G^\ast$ が単純グラフでないとき.ある弦 $P_1P_j$($3\le j\le k-1$)が $G$ の辺としてすでにある。その辺は $C_P$ の外側を通るので、長さ $3$ の閉路 $A=P_1PP_jP_1$ は $P_2$ と $P_k$ を内側と外側に分ける(Fár48 Lemma 5、p. 232)。$A$ とその外側の部分からなるグラフを $G_1$、$A$ とその内側の部分からなるグラフを $G_2$ とすると、どちらも平面三角形分割で、頂点は $G$ より少ない。帰納法の仮定により、$G_1$、$G_2$ と面の構造が同じ直線の平面描画 $\hat G_1$、$\hat G_2$ がある。$\hat G_1$ では $A$ は内部に何もない三角形 $\Delta_1$ であり、$\hat G_2$ では $A$ は外面の境界の三角形 $\Delta_2$ で、$\hat G_2$ 全体は $\Delta_2$ の閉領域に含まれる。$\Delta_2$ の頂点を $\Delta_1$ の対応する頂点に写すアフィン変換 $\varphi$ は、線分を線分に、$\Delta_2$ の閉領域を $\Delta_1$ の閉領域に写す。$\hat G_1$ と $\varphi(\hat G_2)$ を合わせると、$G$ と面の構造が同じ直線の平面描画になる。$\square$

場合 2 のように、長さ 3 の閉路で 2 つに分け、アフィン変換で貼り合わせるのが Fáry の証明の要である。別の証明として、円充填定理 で円板の接触グラフとして表し、接する円の中心を線分で結ぶ方法もある(円充填定理 の系「Fáry の定理」)。

反例

外す条件反例成り立たなくなること
thm-gd-space の「空間 $\mathbb{R}^3$」(平面に替える)完全グラフ $K_5$平面には交差なしに描けない
thm-gd-space の「モーメント曲線の上に置く」$K_4$ の頂点を正方形の 4 頂点に置く2 本の対角線が交差する
thm-gd-fary の「単純」2 頂点を結ぶ 2 本の辺平面描画はあるが、線分で描くと 2 辺が重なる
thm-gd-fary の「平面描画をもつ」$K_{3,3}$直線の平面描画はない
lem-gd-kernel の段 1 の条件($Q_1$ に接する 2 辺の左側)下の多角形と $x=(-1/10,-1/10)$$x$ は内部にあり $Q_1$ と同じ側にあるが、$Q_2$ が見えない
反例の確認
各行の確認を開く

1 行目・4 行目:$K_5$ と $K_{3,3}$ は平面描画をもたない(平面グラフ の命題「$K_5$ は平面グラフでない」「$K_{3,3}$ は平面グラフでない」)。

2 行目:正方形の 4 頂点は同じ平面にあり、対角線は中心で交わる。lem-gd-moment の「4 点が同じ平面にない」が破れている。

3 行目:多重辺のあるグラフは曲線を使えば交差なしに描けるが、両端が同じ 2 本の線分は一致する。

5 行目:$Q_1=(0,0)$、$Q_2=(1,0)$、$Q_3=(\tfrac12,1)$、$Q_4=(-1,1)$、$Q_5=(-1,-1)$、$Q_6=(0,-1)$ とする。$\det(Q_j-Q_1,Q_{j+1}-Q_1)$ は $j=2,3,4,5$ で $1,\tfrac32,2,1$ と正で、多角形は単純である。$Q_1$ での内角は $\tfrac32\pi$ で、多角形の外部は $Q_1$ の近くでは $x>0$、$y< 0$ の部分である。$x=(-\tfrac1{10},-\tfrac1{10})$ は内部にあり、4 本の直線 $Q_2Q_3$($2x+y=2$)、$Q_3Q_4$($y=1$)、$Q_4Q_5$($x=-1$)、$Q_5Q_6$($y=-1$)について $Q_1$ と同じ側にある。しかし $x$ から $Q_2$ への線分は $y$ 座標が負のまま $x$ 座標が正の範囲を通るので、多角形の外部を通る。段 1 の条件は $d=(d_1,d_2)$ について $d_2>0$ かつ $d_1< 0$ であり、例えば $x=(-\tfrac1{10},\tfrac1{10})$ ならすべての $Q_j$ が見える。

学ぶ順の道筋

  1. 平面グラフ:平面描画、面、Euler の公式、$K_5$ と $K_{3,3}$ が平面的でないこと。
  2. Kuratowskiの定理 と 平面性判定:平面描画をもつグラフの特徴づけと判定。
  3. この記事の thm-gd-fary:曲線を線分に替えられること。
  4. 交差数(グラフ):平面描画がないときに交差をどこまで減らせるか、曲面への描画。
  5. 制約つきの描画:外平面グラフ、マッチ棒グラフ、ペニーグラフ、円充填定理、格子グラフ。

関連項目

参考文献

[1]
István Fáry, On straight line representation of planar graphs, Acta Scientiarum Mathematicarum (Szeged), 1948, pp. 229–233(§1 と定理(p. 230)、Lemma 2(pp. 230–231)、Lemma 4(pp. 231–232)、Lemma 5 と §6 の証明(pp. 232–233))
[2]
Reinhard Diestel, Graph Theory, Graduate Texts in Mathematics 173, Springer, 2025, Proposition 4.2.8(p. 100)、第 4 章の演習 1(p. 117)

Mathpediaは寄付と、参考文献の書籍リンク(Amazonアソシエイト)の紹介料で運営されています。 支援について / 寄付する