如何通过 TikZ 绘制这种类似图形的结构?

如何通过 TikZ 绘制这种类似图形的结构?

我想通过 TikZ 绘制以下类似图形的结构。我该怎么做?我正在努力获取 \otimes-nodes、\oplus-nodes、\top-nodes、\bot-nodes 和虚线。

在此处输入图片描述

答案1

这应该可以让你入门。还有其他方法,但这个使用初学者友好的想法。使用命令放置节点\node。然后用绘制边缘\draw。一旦你掌握了基本的想法,就有很多方法可以将其风格化。绘制曲线的最简单方法是使用bend leftbend right(可选角度),或out=, in=作为选项to

由于所有节点都具有相同的样式,因此我添加了一个tikzset名为 的样式mynode。这样,您就不必每次都输入它,并且可以轻松进行更改。

在此处输入图片描述

以下是代码:

\documentclass{article}

\usepackage{tikz}
\tikzset{mynode/.style={draw, circle, inner sep=0pt}}

\begin{document}

\begin{tikzpicture}[thick]
\node[mynode](A) at (0,0){$\oplus$};
\node[mynode](B) at (-1,1){$\otimes$};
\node[mynode](C) at (-1,6){$\oplus$};
\node[mynode](D) at (0,5){$\oplus$};
\node[mynode](E) at (-.5,2){$\bot$};

\draw (A) --++(0,-1)node[right]{$(A\otimes\top)\oplus B$};
\draw (C) --++(0,1)node[right]{$A\oplus(\bot\oplus B)$};
\draw (A) to[out=180, in=-90] (B);
\draw (B) to[bend left] (C);
\draw (C) to[bend left] (D);
\draw (D) to[bend right=10] (E);
\end{tikzpicture}

\end{document}

相关内容