我用 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
答案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}
(输出相同)