我更喜欢用单线轴绘制图表,而不是用方框样式(我认为这是 PGFPlots 的默认样式)。我熟悉axis x line*=middle
将 x 轴置于 y=0 的选项。但是,我经常需要绘制温度数据图,将轴置于 y=20(数据以 °C 为单位)更有意义。我还没能找到办法做到这一点。有什么办法可以实现吗?
我不想仅仅使用\draw
命令来手动创建轴,因为那样的话我就需要手动创建刻度、标签等等。
编辑以澄清我的问题:
\documentclass[margin=3mm]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.16}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
axis x line=none,
axis y line=middle,
xmin=0,
ymin=5,
ymin= 10,
ymax=30,
xlabel=$x$,
ylabel=$y$,
]
\addplot coordinates {(0,20) (1,24) (2,28) (3,18) (4,21) (5,27)};
\coordinate (start) at (axis cs:0,20);
\coordinate (end) at (axis cs:5,20);
\end{axis}
\draw[->] (start) -- (end);
\end{tikzpicture}
\end{document}
答案1
axis x line shift
向下移动 x 轴,负数向上移动 x 轴。从y min=10
20 开始-10。
\documentclass[margin=3mm]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.16}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
axis lines=center,
axis x line shift=-10,
xmin=0,
xmax=5,
ymin=10,
ymax=30,
xlabel=$x$,
ylabel=$y$,
]
\addplot coordinates {(0,20) (1,24) (2,28) (3,18) (4,21) (5,27)};
\end{axis}
\end{tikzpicture}
\end{document}