这可能是一个简单的问题,但我希望电池正极在左边,默认在右边,
(0,0) to [battery, v=$\varepsilon$] (2,0)
另外,有没有选项circuitikz
可以只画一对杆而不是两对?我看到过以下解决方案
circuitikz 中的电池符号
但我很高兴知道是否circuitikz
存在解决方案。
答案1
我能想到的最简单的方法就是简单地反转放置的方向battery
。因此,\draw (0,0) to [battery, ...] (2,0)
您可以使用\draw (2,0) to [battery, ..] (0,0)
(如下面的第二个示例所示)。
如果您不想反转放置节点的方向,则可以使用rotate=180,transform shape
选项。不幸的是,这最终也会产生文本的镜像,可以通过将 应用于\rotatebox{180}{}
电压标签来解决(文本旋转 180 度两次会使文本恢复到原始方向)。默认情况下,这会将方向箭头放在底部。如果您希望将其放在顶部,可以使用,\circuitikzbasekey/bipole/voltage/position =below
如以下示例中所示:
\documentclass{article}
\usepackage{tikz}
\usepackage{circuitikz}
\begin{document}
\begin{tikzpicture}
\draw (0,0) to [battery, v=$\varepsilon$] (2,0) node [right] {Default};
\end{tikzpicture}
\medskip
\begin{tikzpicture}
\draw (2,0) node [right] {Reverse coordinates} to
[battery, v=$\varepsilon$,
\circuitikzbasekey/bipole/voltage/position = below] (0,0) ;
\end{tikzpicture}
\medskip
\begin{tikzpicture}
\draw (0,0) to
[rotate=180,transform shape,
battery, v=\rotatebox{180}{$\varepsilon$},
\circuitikzbasekey/bipole/voltage/position = below] (2,0)
node {Rotate text and symbol};
\end{tikzpicture}
\end{document}
答案2
在 Circuitikz 的最新版本中,您可以使用选项invert
来反转双极元件的极点,但它不会旋转标签或指示电位上升的箭头。也就是说,您始终可以使用v<= , v>=
小于或大于符号的点作为箭头的方向来设置箭头的方向。
\documentclass{article}
\usepackage{tikz}
\usepackage{circuitikz}
\begin{document}
\begin{tikzpicture}
\draw (0,0) to [battery, v=$\varepsilon$] (2,0) node [right] {Default};
\end{tikzpicture}
\medskip
\begin{tikzpicture}
\draw (0,0) to [battery, v<=$\varepsilon$,invert] (2,0) node [right] {Inverted};
\end{tikzpicture}
\end{document}
请注意,v<=
在反转的例子中,箭头指向左边。
附言:抱歉我的英语不好。
答案3
要更改 circuitikz 默认值,你可能需要更改其.sty和.tex文件。相反,您可以通过更改组件方向的顺序来更改电池端子的方向。您还可以使用 circuitikz 的标签机制 (l^ 和 l_) 将名称放在组件上方或下方。
\documentclass{article}
\usepackage{tikz}
\usepackage[european,american]{circuitikz}
\begin{document}
\begin{tikzpicture}
\draw (0,0) to [battery, l^={$\varepsilon$}] (2,0);
\end{tikzpicture}
\begin{tikzpicture}
\draw (2,0) to [battery, l_={$\varepsilon$}] (0,0);
\draw (4,0) to [battery, l^={$\varepsilon$}] (3,0);
\end{tikzpicture}
\end{document}