我怎样才能绘制这样的超图结构(又名森林):
(注:这不是这个问题,当然,因为那幅画非常不同。)
答案1
我只给出了结构,但你可以“轻松地”手工完成。我没有足够的时间来完成图表,但你只需要定义一些节点,然后放上箭头。最后的箭头很简单。
\documentclass[11pt]{article}
\usepackage[upright]{fourier}
\usepackage{tikz}
\usetikzlibrary{arrows,calc}
\begin{document}
\begin{tikzpicture}
\node(A){$NPB_{0,1}$} ;
\node(B) at ($(A)+(2,0)$){$CC_{1,2}$} ;
\node(C) at ($(B)+(2,0)$){$P_{1,2}$} ;
\node(D) at ($(C)+(2,0)$){$NPB_{2,3}$} ;
\node(E) at ($(D)+(2,0)$){$VV_{3,4}$} ;
\node(F) at ($(E)+(2,0)$){$AS_{4,5}$} ;
\node(G) at ($(F)+(2,0)$){$NPB_{5,6}$} ;
\node(Deb) at (5,8){$IP_{0,6}$};
\node(FF) at ($(F)+(0,4)$){$VBP_{3,6}$} ;
\node(BB) at ($(B)+(0,5)$){$NP_{0,3}$} ;
\draw[->] (A) to[out=90,in=180] (3,7)--(4,7) to[out=0,in=-90](Deb);
\draw[rounded corners=2cm,
dashed,->] (FF)to[out=90,in=-60] ($(Deb)+(.5,0)$);
\draw[dashed,->] (A) to [in =-90,out =90](BB);
\draw[dashed,->] (BB) to [in =-180,out =90] ++(2,1) to [out=0,in=-70]($(Deb)+(.5,0)$);
\end{tikzpicture}
\end{document}