我有这 3 个量子电路,想将它们并排放置。有什么办法吗?我正在使用 quantikz 包。还有办法在电路中添加标题吗?
\begin{quantikz}
& \ctrl{1} & \qw \\
\lstick{$\ket{0}$} & \targ{} & \qw
\end{quantikz}
\begin{quantikz}
& \ctrl{2} & \qw \\
& \ctrl{1} & \qw \\
\lstick{$\ket{0}$} & \targ{} & \qw
\end{quantikz}
\begin{quantikz}
& \gate{X} & \ctrl{2} & \gate{X} & \qw \\
& \gate{X} & \ctrl{1} & \gate{X} & \qw \\
\lstick{$\ket{0}$} & \qw & \targ{} & \gate{X} & \qw
\end{quantikz}
答案1
此解决方案使用表格添加标题。不幸的是,表格对象无法在 quantikz 中使用&
,因此我不得不将它们存储在保存箱中。
值得注意的是,你也可以将保存框放在 tikz 节点内,以防你想添加与 quantikz 图像重叠的标题。如果你不能命名组件,不确定 [记住图片] 有什么用。
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{quantikz}
\begin{document}
\begin{figure}
\centering
\sbox0{\begin{quantikz}
& \ctrl{1} & \qw \\
\lstick{$\ket{0}$} & \targ{} & \qw
\end{quantikz}}%
\sbox1{\begin{quantikz}
& \ctrl{2} & \qw \\
& \ctrl{1} & \qw \\
\lstick{$\ket{0}$} & \targ{} & \qw
\end{quantikz}}%
\sbox2{\begin{quantikz}
& \gate{X} & \ctrl{2} & \gate{X} & \qw \\
& \gate{X} & \ctrl{1} & \gate{X} & \qw \\
\lstick{$\ket{0}$} & \qw & \targ{} & \gate{X} & \qw
\end{quantikz}}%
\begin{tabular}{ccc}
Title A & Title B & Title C \\
\usebox0 & \usebox1 & \usebox2
\end{tabular}
\end{figure}
\end{document}
答案2
正如已经说过的,表格环境非常适合组织电路 + 标题。但是,您不需要费尽心思使用保存箱。只要您不使用外部库,只需将其替换\begin{quantikz}
为\begin{tikzcd}
:
\begin{tabular}{ccc}
Controlled-not & Toffoli & something else \\
\begin{tikzcd}
& \ctrl{1} & \qw \\
\lstick{$\ket{0}$} & \targ{} & \qw
\end{tikzcd}
&
\begin{tikzcd}
& \ctrl{2} & \qw \\
& \ctrl{1} & \qw \\
\lstick{$\ket{0}$} & \targ{} & \qw
\end{tikzcd}
&
\begin{tikzcd}
& \gate{X} & \ctrl{2} & \gate{X} & \qw \\
& \gate{X} & \ctrl{1} & \gate{X} & \qw \\
\lstick{$\ket{0}$} & \qw & \targ{} & \gate{X} & \qw
\end{tikzcd}
\end{tabular}
另一个选项可让您更好地控制位置(特别是如果您不喜欢标题居中!)是将所有内容作为节点嵌入 tikzpicture 中:
\begin{tikzpicture}
\node at (0,0) {controlled-not};
\node at (0,-0.1) [anchor=north]{\begin{tikzcd}
& \ctrl{1} & \qw \\
\lstick{$\ket{0}$} & \targ{} & \qw
\end{tikzcd}};
\node at (3,0) {Toffoli};
\node at (3,-0.1) [anchor=north]{
\begin{tikzcd}
& \ctrl{2} & \qw \\
& \ctrl{1} & \qw \\
\lstick{$\ket{0}$} & \targ{} & \qw
\end{tikzcd}};
\node at (6,0) {something else};
\node at (6,-0.1) [anchor=north]{
\begin{tikzcd}
& \gate{X} & \ctrl{2} & \gate{X} & \qw \\
& \gate{X} & \ctrl{1} & \gate{X} & \qw \\
\lstick{$\ket{0}$} & \qw & \targ{} & \gate{X} & \qw
\end{tikzcd}};
\end{tikzpicture}