circuitikz 中的线路末端不起作用

circuitikz 中的线路末端不起作用

我该如何修复用 绘制的线条末端circuitikz

在此处输入图片描述

\documentclass[border=3mm]{standalone}
\usepackage[siunitx,european]{circuitikz}
\usetikzlibrary{external} 
\tikzexternalize[prefix=tikz/]

\begin{document}
\small
\begin{circuitikz}
 \draw (0,0)node[anchor=east] {(0,0)}to [L,o-o]++(2,0) node(a){}node[anchor=west] {a};

\draw (0,0) |- (1,1);
\draw (a) |- (1,1);
\end{circuitikz}

\end{document}

答案1

啊,有了最后一条评论,现在我明白了你的问题。

节点画在线条后面在同一路径上。在您的示例中,您有三条不同的路径,按顺序绘制。

node因此,您可能(除了→的问题之外coordinate thing)只想要一条路径:

\documentclass[border=10pt]{standalone}
\usepackage{circuitikz}

\begin{document}
\begin{tikzpicture}
    \draw (0,0)node[anchor=east] {(0,0)} 
        to [L,o-o]++(2,0) coordinate(a){}
        node[anchor=west] {a}
    (0,0) |- (1,1)
    (a) |- (1,1);
\end{tikzpicture}
\end{document}

在此处输入图片描述

答案2

目前还不完全清楚您想要修复什么,因此我只能猜测您可能想要修复以下问题:

在此处输入图片描述

梅威瑟:

\documentclass[border=3mm]{standalone}
\usepackage[siunitx,european]{circuitikz}
\usetikzlibrary{external}
\tikzexternalize[prefix=tikz/]

\begin{document}
\small
\begin{circuitikz}
\draw (0,0) coordinate[label=left:{(0,0)}] (x) to [L] ++(2,0) coordinate[label=right:a] (a)
      (x) to [short, o-] ++ (0,1) -- ++ (2,0) to [short,-o] (a);
\end{circuitikz}
\end{document}

答案3

如果您创建一个命名ocirc节点,只要您使用名称而不是中心坐标,线条就会自动绘制到边缘。

\documentclass[border=3mm]{standalone}
\usepackage[siunitx,european]{circuitikz}
%\usetikzlibrary{external}
%\tikzexternalize[prefix=tikz/]% redundant in standalone

\begin{document}
\small
\begin{circuitikz}
 \draw (0,0)node[left] {(0,0)}
   node[ocirc,name=o]{} to [L] ++(2,0) node[ocirc,name=a]{}
   node[right] {a};

\draw (o) |- (1,1);
\draw (a) |- (1,1);
\end{circuitikz}

\end{document}

答案4

另一种解决方案,但没有节点。

   \documentclass\[border=3mm\]{standalone}
    \usepackage\[cuteinductor\]{circuitikz}
    \begin{document}
    \begin{circuitikz}
    \draw (0,0)node\[left\] {(0,0)}--++(0,1)--++(2,0)--++(0,-1)node\[right\]{(2,0)};
    \draw (0,0)to\[L,o-o\](2,0);
    \end{circuitikz}
    \end{document}

在此处输入图片描述

相关内容