pgfplots 边界框偏移

pgfplots 边界框偏移

因此我得到了这个代码来可视化我的 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

这里有两个问题:

  1. pgfplots yticklabels 不起作用

  2. 的默认宽度axis为 240pt,但在标准article文档中0.5\columnwidth为 172.5pt。因此,axis比 更宽minipage,因此在右侧突出。将 eg 添加width=\textwidthaxis选项中。

完整代码:

\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}

在此处输入图片描述

相关内容