Tikz:如何在不发生碰撞的情况下将一个带圆圈的节点标记到左侧?

Tikz:如何在不发生碰撞的情况下将一个带圆圈的节点标记到左侧?

我尝试在 Tikz 中用一些文本标记一个带圆圈的节点,并将其放在左侧。问题是它与圆圈相撞。

例如我有类似的东西:

\begin{tikzpicture}
\node[draw,circle] at (0,0) {A};
\node[left] at (0,0) {010101};
\end{tikzpicture}

这会导致二进制文件与节点 A 重叠。解决这个问题的最佳方法是什么?

答案1

解决此问题的一种方法是加载positioning

在此处输入图片描述

请注意,在下面的代码中,我将您的第一个节点命名为,nameofnode然后使用 将文本定位到它的位置left=of nameofnode

\documentclass{standalone}

\usepackage{tikz}
\usetikzlibrary{positioning}

\begin{document}
\begin{tikzpicture}
\node[draw,circle](nameofnode) at (0,0) {A};
\node[left=of nameofnode] {010101};
\end{tikzpicture}

\end{document}

答案2

更简单的版本是使用label节点选项:

\documentclass{article}
\usepackage{tikz}

\begin{document}
    \begin{tikzpicture}
        \node[draw,circle,label=left:010101] (CircleNode) at (0,0)  {A};
    \end{tikzpicture}
\end{document}

它看起来就像 Peter Grill 的解决方案。

答案3

您可以命名圆形节点并将其放置到left命名圆形节点的坐标处,而不是将文本节点放置在坐标处:

在此处输入图片描述

代码:

\documentclass[border=2pt]{standalone}
\usepackage{tikz}

\begin{document}
\begin{tikzpicture}
  \node[draw,circle] (CircleNode) at (0,0)  {A};
  \node[left] at (CircleNode.west) {010101};
\end{tikzpicture}

\end{document}

相关内容