因此我得到了这个代码来可视化我的 tex 中的边界框:
\fbox{
\begin{minipage}{0.5\columnwidth}
\centering
\fbox{\begin{tikzpicture}[declare function={unipdf(\x,\xl,\xu)= (\x>\xl)*(\x<\xu)*1/(\xu-\xl);}]
\begin{axis}[
samples=100,
const plot mark mid,
scaled ticks = false,
ymin=0,ymax=0.5,
xmin=-3,xmax=3,
xtick={-2,2},
xticklabels={-$\frac{LSB}{2}$,$\frac{LSB}{2}$}],
ytick={0.25},
yticklabels={$\frac{1}{LSB}$}]
\addplot [very thick, orange] {unipdf(x,-2,2)};
\end{axis}
\end{tikzpicture}}
\caption{$dt=0.1$}
\label{fig:prob1_6_2}
\end{minipage}%
}
结果是:
当然,fbox 可能是错的。遗憾的是,边界证实了我的怀疑:边界框有一个奇怪的偏移。因此,将 minipage 置于 0.5\linewidth 处可使图重叠。
如果有人能指出我的误解在哪里我会很高兴因为我找不到造成这种情况的具体原因。
答案1
这里有两个问题:
的默认宽度
axis
为 240pt,但在标准article
文档中0.5\columnwidth
为 172.5pt。因此,axis
比 更宽minipage
,因此在右侧突出。将 eg 添加width=\textwidth
到axis
选项中。
完整代码:
\documentclass{article}
\usepackage{pgfplots}
\begin{document}
\the\columnwidth
\begin{figure}
\fbox{%
\begin{minipage}{0.5\columnwidth}
\centering
\fbox{\begin{tikzpicture}[declare function={unipdf(\x,\xl,\xu)= (\x>\xl)*(\x<\xu)*1/(\xu-\xl);}]
\begin{axis}[
width=\textwidth,
samples=100,
const plot mark mid,
scaled ticks = false,
ymin=0,ymax=0.5,
xmin=-3,xmax=3,
xtick={-2,2},
xticklabels={-$\frac{LSB}{2}$,$\frac{LSB}{2}$},
ytick={0.25},
yticklabels={$\frac{1}{LSB}$}]
\addplot [very thick, orange] {unipdf(x,-2,2)};
\end{axis}
\end{tikzpicture}}
\caption{$dt=0.1$}
\label{fig:prob1_6_2}
\end{minipage}%
}
\end{figure}
\end{document}