将刻度线和标签扩展到数据集之外

将刻度线和标签扩展到数据集之外

出于视觉原因,我希望将 y 轴和 x 轴的值扩展到数据之外。我尝试强制刻度和标签,但没有成功。我希望两个轴从零开始,并在最大数据点之外结束。这是我第一次尝试pgfplots.

\documentclass{article}
\usepackage{tikz,pgfplots}
\usetikzlibrary{snakes,backgrounds,arrows,decorations.markings}
\begin{document}
%
%
\begin{center}
\begin{tikzpicture}
                \begin{axis}[
                        small, 
                        xlabel=Time in min.,
                        ylabel=Distance in mi.,
                        axis y line=left,
                        axis x line=bottom,
                        xtick={0,2,4,6,8,10,12},
                        ytick={0,1,1.5,2,...,3.5},
                        xticklabels={0,2,4,6,8,10,12},
                        yticklabels={0,1,1.5,2,...,3.5},
                        xtickmin=0,
                        xtickmax=11,
                        ytickmin=0,
                        ytickmax=3.5
                            ] 
                \addplot[color=blue,mark=*] 
                    coordinates {
                        (1,1)
                        (2,1)
                        (5,3)
                        (8,3)
                        (9,2)
                        (10,3)
                                };
                \end{axis} 
\end{tikzpicture}
\end{center}
%
%
\end{document}

答案1

xmin可以使用、、xmax等指定绘图的可见范围ymin。如果您想自动将轴范围扩展到最大值之外,您可以设置enlargelimits=upper(此行为可以相当精确地控制:您可以将轴放大一定数量的单位、一定百分比或一定长度。有关详细信息,请查看手册)。

在您的示例中,您可以简单地说xmin=0, ymin=0, enlargelimits=upper,而无需自己指定刻度:

\documentclass{article}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
                \begin{axis}[
                        small, 
                        compat=1.8,
                        xlabel=Time in min.,
                        ylabel=Distance in mi.,
                        axis y line=left,
                        axis x line=bottom,
                        xmin=0,
                        ymin=0,
                        enlargelimits=upper
                            ] 
                \addplot[color=blue,mark=*] 
                    coordinates {
                        (1,1)
                        (2,1)
                        (5,3)
                        (8,3)
                        (9,2)
                        (10,3)
                                };
                \end{axis} 
\end{tikzpicture}
\end{document}

相关内容