Circuitikz 中元件标签的位置

Circuitikz 中元件标签的位置

我用 circuitikz 创建了这个电路,它只是表示一个具有电流方向和标签的电流发生器。

\begin{circuitikz}[american]
  \draw (0,0) to[ioosource, i_=$i_{in}$] +(0,-2) node[ground]{};
\end{circuitikz}

结果是这样的:

在此处输入图片描述

但我希望在电流生成器符号旁边有电流的标签,就像在这种情况下一样:

\begin{circuitikz}[american]
  \draw (0,0) to[ioosource, l_=$i_{in}$] +(0,-2) node[ground]{};
\end{circuitikz}

在此处输入图片描述

但正如你所看到的,如果我这样做,电流的箭头就不存在了。我该如何解决这个问题?

答案1

通过使用注释a(或标签l)和不可见的电流流向符号标签:

\documentclass[border=3.141592]{standalone}
\usepackage{circuitikz}

\begin{document}
\begin{circuitikz}[american]
  \draw (0,0) to[ioosource, a=$i_{\mathrm{in}}$, i=~]   ++(0,-2) node[ground]{};
\end{circuitikz}
\end{document}

在此处输入图片描述

答案2

\documentclass[10pt,a4paper]{article}
\usepackage{circuitikz}
\begin{document}
    \begin{circuitikz}[american]
        \draw (0,0) to[ioosource, i=$$]node[xshift=-4pt,yshift=0.7cm,left]{$i_{in}$} +(0,-2) node[ground]{};
    \end{circuitikz}
\end{document}

第二种方法--使用角度和标签

在此处输入图片描述

\documentclass[10pt,a4paper]{article}

\usepackage{circuitikz}
\begin{document}
    \begin{circuitikz}[american]
        \draw (0,0) to[ioosource, i=$$]node[outer sep=4mm, label=120:$i_{in}$]{} +(0,-2) node[ground]{};
    \end{circuitikz}
\end{document}

答案3

不完全是被问到的问题,但作为非常可耻的骗子

\documentclass[border=10pt]{standalone}
\usepackage[siunitx, RPvoltages]{circuitikz}
\begin{document}
\begin{circuitikz}[american]
    \draw (0,0) to[voosource, v_=$i_{in}$, voltage=straight] +(0,-2) node[ground]{};
\end{circuitikz}
\end{document}

在此处输入图片描述

...为了干净,我会以一种风格躲在地毯下:

\documentclass[border=10pt]{standalone}
\usepackage[siunitx, RPvoltages]{circuitikz}
\tikzset{ioosource external i/.style={
        voosource, v_={#1}, voltage=straight,
    }
}
\begin{document}
\begin{circuitikz}[american]
    \draw (0,0) to[ioosource external i=$i_{in}$] +(0,-2) node[ground]{};
\end{circuitikz}
\end{document}

(输出相同)

相关内容