Tikz ER図: 1つのエンティティ間の関係

Tikz ER図: 1つのエンティティ間の関係

TikZ を使って簡略化された ER モデルを描いています。これまでのコードは次のとおりです。

\documentclass[12pt,a4paper,twoside,openright]{report}
\usepackage{tikz}
\usetikzlibrary{er}
\usetikzlibrary{positioning,shapes,shadows,arrows}

\begin{document}

\begin{tikzpicture}[>=open triangle 90, thick,every node/.style={font=\footnotesize}, node distance = 6.2em]
node[entity] (page) {Page};
\node[relationship] (pageparent) [right of = page] {parent} edge node[above]{n...1} (page) edge (page);
\end{tikzpicture}

\end{document}

エンティティ、関係オブジェクト、およびそれら 2 つの間の直線エッジが作成されます。図を完成させるには、これら 2 つのオブジェクトの間に 2 番目のエッジが必要です。できれば次のようになります。

   |----------------------------|     
   |                            |
   |                            |
[ Page ] ----------------- < parent >

2 つの 90° の角度を持つ 2 番目のエッジを追加するにはどうすればよいですか?

答え1

これは、 s を次のように定義することで実現できますcoordinate

\documentclass[12pt,a4paper,twoside,openright]{report}
\usepackage{tikz}
\usetikzlibrary{er}
\usetikzlibrary{positioning,shapes,shadows,arrows}

\begin{document}

\begin{tikzpicture}[>=open triangle 90, thick,every node/.style={font=\footnotesize}, node distance = 6.2em]
\node[entity](page){Page};
\node[relationship] (pageparent) [right of =page] {parent} edge node[above]{n...1} (page) edge (page);
\coordinate[above= 1cm of page] (cpage);
\coordinate[above= 0.8cm of pageparent] (cpageparent);
\draw[-] (page)--(cpage)--(cpageparent)--(pageparent);
\end{tikzpicture}

\end{document}

関連情報