![使用 circuitikz 绘制电路](https://linux22.com/image/236249/%E4%BD%BF%E7%94%A8%20circuitikz%20%E7%BB%98%E5%88%B6%E7%94%B5%E8%B7%AF.png)
我有一个小问题(我设法画出了我需要的东西,对于第一次画的人来说,我为自己感到非常自豪 XD)。我需要绘制这样的图像:
我得到的是:
因此,电阻器可能可以通过改变美式或欧式来改变,这不是什么大问题。一个大问题是,我无法获得像第一张图片中那样的节点:此外,如何正确对齐电流表和电压表?代码是:
\begin{figure}[ht!]
\begin{center}
\begin{circuitikz}\draw
(0,0)to[sI] (0,4)
to[R=$1\ k\Omega$,-*] (3,4) -- (5,4)
to[voltmeter] (5,0) -- (0,0)
(3,4)to[ammeter] (3,2)
(3,0)to[Do,*-] (3,2)
(2,1)to[zDo](2,1)
;\end{circuitikz}
\end{center}
\end{figure}
另外,我能得到齐纳二极管前后的小线吗?
答案1
(回答以下评论)
这里有一个解决方案。请注意,您想要的电流表和电压表不在circuitikz
' 组件集中。为了解决这个问题,我利用了所有组件和线路都是tikz
组件和线路的事实,以便可以使用所有有效的东西tikz
。我创建了具有适当信息的节点。此外,我使用包siunitx
来输入电阻器。这样就可以正确设置单位。circuitikz
有一个siunitx
选项。要获得带有二极管的小线:只需使用不同的起点和终点。我的代码是
\documentclass{minimal}
\usepackage{tikz}
\usetikzlibrary{arrows}
\usepackage{siunitx}
\usepackage{circuitikz}
\begin{document}
\tikzset{component/.style={draw,thick,circle,fill=white,minimum size =0.75cm,inner sep=0pt}}
\begin{circuitikz}[european]
\draw (0,2.5)node[left] {$+$} to[short,o-] (0,4)
to[R=\SI{1}{k\ohm},-*] (3,4) to[short] (5,4)
to[short] (5,2) node[component]{V} to[short] (5,0)
to[short] (0,0) to[short,-o] (0,1.5)node[left] {$-$};
\draw (3,4) to[short] (3,3) node[component]{A} to[short] (3,2)
(3,0) to[Do,*-] (3,2)
(2,0.5) to[zDo] (2,1.5);
\end{circuitikz}
\end{document}
结果是
关于小圆圈:关键不是--
在路径中使用(如我最初的解决方案),而是使用 circuitikz 路径样式。对于您想要的内容,您需要输入to[short,o-]
。所有这些都在新版本的代码中。
对于 + 和 -,只需在适当的位置添加节点即可。我为此修改了我的示例代码(不是图片中的想法)。