我一直不知道如何让 y 轴关闭,但让 x 轴有一个设置域。每次我运行这两个代码示例时,x 轴域总是 0->1。目标是将 x 轴域设置为 1->10。帮忙吗?
\documentclass[]{article}
\usepackage{tikz}
\usepackage{pgfplots}
\pgfplotsset{compat=1.7}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
domain=1:10,
hide y axis,
axis x line=middle
]
\draw[line width=2] (axis cs:0, 0) -- (axis cs: 1, 0);
\end{axis}
\end{tikzpicture}
\begin{tikzpicture}
\begin{axis}[
xmin=1,
xmax=10,
axis y line=none,
axis x line=middle
]
\draw[line width=2] (axis cs:0, 0) -- (axis cs: 1, 0);
\end{axis}
\end{tikzpicture}
\end{document}
答案1
以下是对所发生情况的解释以及由此得出的步骤:
Pgfplots 根据\addplot
轴内的所有语句计算轴限值。如果没有单个\addplot
语句,它就无法这样做,并且(目前)不知道如何选择轴限值。因此,绘制“空”轴的唯一方法是定义所有轴限值。
如果 pgfplots 有一个没有命令的轴\addplot
(如您的示例所示),它会假定它是空的,直到自定义注释。空图需要手动定义轴限值。如果轴限值未定义或定义不完整,它会在文件中发出警告消息.log
,并用单位立方体替换限值。这就是您的情况。
因此:要么添加至少 1 个\addplot
语句,要么定义所有轴限制。