他们如何在 Latex 中绘制这个?

他们如何在 Latex 中绘制这个?

他们是如何在 Latex 中绘制这个的?

在此处输入图片描述

答案1

tikz-cd

在此处输入图片描述

\documentclass[10pt]{article}
\usepackage{tikz-cd}

\begin{document}
\begin{tikzcd}[row sep= .7cm, column sep=.5cm]
& 1 \arrow[ld, no head] &\\
2 \arrow[rd, no head] && 4 \arrow[lu, no head] \\
& 3 \arrow[ru, no head] &                      
\end{tikzcd}
\end{document}

答案2

循环可以帮助避免重复,极坐标有助于使事物更加对称。

\documentclass[tikz,border=3.14mm]{standalone}
\begin{document}
\begin{tikzpicture}
\foreach \X in {1,...,4} {\node (\X) at (\X*90:1) {\X};} 
\foreach \X [remember=\X as \LastX (initially 4)] in {1,...,4} 
{\draw (\LastX) -- (\X);} 
\end{tikzpicture}
\end{document}

在此处输入图片描述

答案3

纯 tikz?

\documentclass[tikz,border=2pt]{standalone}
\usetikzlibrary{positioning}
\begin{document}

\begin{tikzpicture}
\node (1) {1}; 
\node (2) [below left=of 1] {2};
\node (3) [below right=of 2] {3};
\node (4) [below right=of 1] {4};
\draw (1)--(2) (1)--(4) (2)--(3) (3)--(4);
\end{tikzpicture}

\end{document}

带有循环的较短版本\foreach:[PS:类似于下面@marmot 的回答]

\begin{tikzpicture}
\foreach \i in {1,...,4}
    \node (\i) at (90*\i:1cm) {\i};
\draw (1)--(2) (1)--(4) (2)--(3) (3)--(4);
\end{tikzpicture}

在此处输入图片描述

答案4

pstricks带有和 的简短代码multido

\documentclass{article}

\usepackage{pst-node, multido}
\usepackage{auto-pst-pdf}

\begin{document}

\begin{psmatrix}[rowsep=1cm, colsep=1.25cm]
 & 1 \\ 2 & & 4 \\ & 3
\end{psmatrix}
\multido{\ir=1+2}{2}{\multido{\ic=1+2}{2}{\ncline[nodesep=4pt, linewidth=0.5pt]{\ir,2}{2,\ic}}}

\end{document} 

在此处输入图片描述

相关内容