Latex 上的哈斯图

Latex 上的哈斯图

我认为我应该使用 tikzcd 包但却无法理解它的工作原理。

答案1

我建议使用这个简短的代码来制作图表pstricks

    \documentclass[border=12pt, svgnames]{standalone}%
    \usepackage{pst-node}

    \begin{document}

    \psset{unit=2cm}
    \begin{pspicture}(-0.5,-1.5)(3,1.5)
    \dotnodes(0,0){A}(1.4,0){B}(2.8,0){C}(1; 45){D}(2.1,0.7){E}(2;45){F}(0,-1){G}(1.4,-1){H}(2.8,-1){I}
    \psline(A)(F)(E)(B)(D)
    \psline(A)(G)\psline(B)(H)\psline(C)(I)
    \uput[l](A){6} \uput[r](B){10} \uput[r](C){14}
    \uput[ul](D){30}\uput[ur](E){20}\uput[ur](F){60}
    \uput[dl](G){3}\uput[d](H){5}\uput[d](I){7}
     \end{pspicture}

    \end{document} 

在此处输入图片描述

答案2

这是一个TikZ解决方案:

在此处输入图片描述

dot制作一个以标签为选项的样式,例如,dot={45:60}将标签放置6045与点成一定角度的位置。

然后使用positioning将节点相对于根节点(我将其命名为)放置root。最后是\draw边。

\documentclass{article}

\usepackage{tikz}
\usetikzlibrary{positioning}

\tikzset{dot/.style={fill, circle, inner sep=1.5pt, outer sep=0pt, label=#1}}

\begin{document}

\begin{tikzpicture}[node distance=2cm]
\node[dot={45:60}] (root){};
\node[dot={135:30}, below left=of root](a){};
\node[dot={45:20}, below right=of root](b){};
\node[dot={180:6}, below left=of a](c){};
\node[dot={0:10}, below right=of a](d){};
\node[dot={0:14}, below right=of b](e){};
\node[dot={270:3}, below=of c](f){};
\node[dot={270:5}, below=of d](g){};
\node[dot={270:7}, below=of e](h){};
\draw[thick](root)--(a)--(c)--(f) (a)--(d)--(g) (root)--(b)--(d) (e)--(h);
\end{tikzpicture}

\end{document}

相关内容