![TikZ를 사용하여 방향성 하이퍼에지 그리기](https://rvso.com/image/286368/TikZ%EB%A5%BC%20%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC%20%EB%B0%A9%ED%96%A5%EC%84%B1%20%ED%95%98%EC%9D%B4%ED%8D%BC%EC%97%90%EC%A7%80%20%EA%B7%B8%EB%A6%AC%EA%B8%B0.png)
저는 현재 컴퓨터 공학 학기 프로젝트를 위한 기호 종속성 그래프의 모델 검사 작업을 하고 있으며, TikZ를 사용하여 종속성 그래프를 그리는 쉬운 방법이 절실히 필요합니다.
내 문제는 다음과 다소 관련이 있습니다.이것, 하지만 방향을 지정하려면 호가 필요합니다.
하이퍼 에 지는 소스 노드이자 대상 세트인 e
튜플입니다 . 의 각 요소 는 음이 아닌 정수 또는 매개변수이고 대상 노드인 튜플 입니다 .e = (v, T)
v
T
T
t = (w, t)
w
t
다음 예(발견됨여기)는 지시할 호가 필요한 것을 제외하고 내가 필요한 것을 정확히 수행합니다.
\documentclass{standalone}
\usepackage{tikz}
\newcommand{\hyperedge}[4][180]{
\draw (#2.#1) ++(#1:.5) edge (#2) edge (#3) edge (#4);
}
\begin{document}
\begin{tikzpicture}[
y=.7cm, x=1cm,
every edge/.append style={thick}
]
\node (c) at (0,0) {c};
\node (a) at (1,1) {d};
\node (b) at (1,-1) {e};
\hyperedge[0]{c}{b}{a}
\end{tikzpicture}
\end{document}
->
옵션으로 추가해보았습니다tikzpicture, 그러나 이로 인해 대상 세트뿐만 아니라 소스 노드에도 화살표가 표시되었습니다.
답변1
이 특정한 경우에는 \hypergraph
명령을 수정하여 읽을 수 있습니다.
\newcommand{\hyperedge}[4][180]{
\draw (#2.#1) ++(#1:.5) edge (#2) edge[->] (#3) edge[->] (#4);
}
edge
그러면 대상 노드로 이어지는 두 개의 화살표에 화살표가 추가됩니다 .
\documentclass{standalone}
\usepackage{tikz}
\newcommand{\hyperedge}[4][180]{
\draw (#2.#1) ++(#1:.5) edge (#2) edge[->] (#3) edge[->] (#4);
}
\begin{document}
\begin{tikzpicture}[
y=.7cm, x=1cm,
every edge/.append style={thick}
]
\node (c) at (0,0) {c};
\node (a) at (1,1) {d};
\node (b) at (1,-1) {e};
\hyperedge[0]{c}{b}{a}
\end{tikzpicture}
\end{document}