LaTeX:使用circuitikz绘制电路图
Tikz包提供了很多绘制图形的功能,但是它并不能很好的绘制电路图。我们可以使用circuitikz包解决这个问题,使用它可以轻松绘制电路图。
示例代码:
\documentclass{article}
\usepackage{tikz}
\usepackage{circuitikz}
\begin{document}
\begin{figure}[h!]
\begin{center}
\begin{circuitikz}
\draw (0,0)
to[V,v=$U_q$] (0,2) % 电压源
to[short] (2,2)
to[R=$R_1$] (2,0) % 电阻
to[short] (0,0);
\end{circuitikz}
\caption{first circuit.}
\end{center}
\end{figure}
\end{document}
生成的pdf文档
代码解释:
\draw (0,0)
to[V,v=$U_q$] (0,2)
坐标(0,0)做为起始点,(0,2)做为终点,绘制电压源。_V_代表电压源,_v=$U_q$_绘制标识。同理,绘制电阻器:
to[short] (2,2)
to[R=$R_1$] (2,0)
更多电路图元素可以看circuitikz文档。
添加一个电感器:
\documentclass{article}
\usepackage{tikz}
\usepackage{circuitikz}
\begin{document}
\begin{figure}[h!]
\begin{center}
\begin{circuitikz}
\draw (0,0)
to[V,v=$U_q$] (0,2) % 电压源
to[short] (2,2)
to[R=$R_1$] (2,0) % 电阻
to[short] (0,0);
\draw (2,2)
to[short] (4,2)
to[L=$L_1$] (4,0) % 电感
to[short] (2,0);
\end{circuitikz}
\caption{first circuit.}
\end{center}
\end{figure}
\end{document}
生成的pdf文档:
添加一个电容器:
\documentclass{article}
\usepackage{tikz}
\usepackage{circuitikz}
\begin{document}
\begin{figure}[h!]
\begin{center}
\begin{circuitikz}
\draw (0,0)
to[V,v=$U_q$] (0,2) % 电压源
to[short] (2,2)
to[R=$R_1$] (2,0) % 电阻
to[short] (0,0);
\draw (2,2)
to[short] (4,2)
to[L=$L_1$] (4,0) % 电感
to[short] (2,0);
\draw (4,2)
to[short] (6,2)
to[C=$C_1$] (6,0) % 电容
to[short] (4,0);
\end{circuitikz}
\caption{first circuit.}
\end{center}
\end{figure}
\end{document}
生成的pdf文档:
电路元素画法示例
线
\begin{figure}[h!]
\begin{circuitikz}
\draw (-1,0) to[short,o-o] (1,0);
\end{circuitikz}
\end{figure}
改变连接点:
\begin{figure}[h!]
\begin{circuitikz}
\draw (-1,0) to[short,*-] (1,0);
\end{circuitikz}
\end{figure}
地线
\begin{figure}[h!]
\begin{circuitikz}
\draw (-1,0) to[short,o-o] (1,0);
\draw (0,0) to[short] node[ground] {} (0,-1);
\end{circuitikz}
\end{figure}
\begin{figure}[h!]
\begin{circuitikz}
\draw (-1,0) to[short,o-o] (1,0);
\draw (0,0) to[short] node[ground] {GND} (0,-1);
\end{circuitikz}
\end{figure}
指示电流方向
\begin{figure}[h!]
\begin{circuitikz}
\draw (0,0) to[R,i=$i_1$] (2,0);
\end{circuitikz}
\end{figure}
晶体管
\begin{figure}[h!]
\begin{circuitikz}
\draw (0,0) node[npn](npn1) {}
(npn1.base) node[anchor=east] {B}
(npn1.collector) node[anchor=south] {C}
(npn1.emitter) node[anchor=north] {E};
\end{circuitikz}
\end{figure}
Written on April 1, 2016