我尝试为学生制作一个轴练习,因此我尝试定制 pgflots,但我不明白此示例中附加的内容:
\documentclass{article}
\usepackage{tikz,pgfplots}
\pgfplotsset{%
compat=newest, %footnotesize
tick label style={font=\footnotesize},
label style={font=\small},
legend style={font=\small},
axis x line = center,
axis y line = center,
every axis/.style={pin distance=1ex}
%xlabel near ticks
%
} %%%% fin pgfplotsset
\begin{document}
\begin{tikzpicture}
\begin{axis}[%
axis x line=center,
axis y line=none,
xmin=-3,xmax=3,
]
\end{axis}
\end{tikzpicture}
\begin{tikzpicture}
\begin{axis}[%
axis x line=center,
axis y line=none,ymin=0,ymax=1,
xmin=-3,xmax=3,
]
\end{axis}
\end{tikzpicture}
\begin{tikzpicture}
\begin{axis}[%
axis x line=center,
axis y line=none,
xmin=-3,xmax=3,
xticklabels={8,3,,5,,7},
]
\end{axis}
\end{tikzpicture}
\begin{tikzpicture}
\begin{axis}[%
axis x line=center,
axis y line=none,
xmin=-3,xmax=3,
xticklabels={8,3,,5,,7},
extra x ticks={.75},
]
\end{axis}
\end{tikzpicture}
\end{document}
第一个:xmin、xmax 不起作用?第二个:第二个可以起作用吗?第三个:第一个 8 在哪里?第四个:额外的 tick 在哪里?
一旦 xlabels 中的初始 8 出现在额外标签的位置!我将 texlive 与最新版本的 pgf-tikz 和 pgfplots 一起使用。
答案1
如果您检查
.log
文件,您将看到Package pgfplots Warning: You have an axis with empty range (in direction y). Replacing it with a default range and clearing all plots. on input line 34.
,因此,由于您没有指定 y 方向的范围(并且您没有给 PGFPlots 机会通过提供图等方式自行找出范围),PGFPlots 恢复为默认轴限制。例如,只需添加ymin=0, ymax=1
即可解决此问题(这是您在第二个轴上所做的)。应该对所有轴执行此操作。见1.
xticklabels
与自动确定的刻度位置一起使用时,有时会吞掉第一个刻度标签。最安全的做法是设置xtick={-3,...,3}
为明确指定在-3
和之间的每个整数位置都应该有刻度标记3
。参见 1。请注意,在这种情况下,您还应提供额外刻度位置的标签列表,否则 PGFPlots 将使用与主刻度相同的列表并用 标记第一个额外刻度
8
。
\documentclass{article}
\usepackage{tikz,pgfplots}
\pgfplotsset{%
compat=newest, %footnotesize
tick label style={font=\footnotesize},
label style={font=\small},
legend style={font=\small},
axis x line = center,
axis y line = center,
every axis/.style={pin distance=1ex},
trim axis left
%xlabel near ticks
%
} %%%% fin pgfplotsset
\begin{document}
\begin{tikzpicture}
\begin{axis}[%
axis x line=center,
axis y line=none,
xmin=-3,xmax=3,
]
\end{axis}
\end{tikzpicture}
\begin{tikzpicture}
\begin{axis}[%
axis x line=center,
axis y line=none,ymin=0,ymax=1,
xmin=-3,xmax=3,
]
\end{axis}
\end{tikzpicture}
\begin{tikzpicture}
\begin{axis}[%
axis x line=center,
axis y line=none,
xmin=-3,xmax=3,ymin=0, ymax=1,
xtick={-3,...,3},
xticklabels={8,3,,5,,7},
]
\end{axis}
\end{tikzpicture}
\begin{tikzpicture}
\begin{axis}[%
axis x line=center,
axis y line=none,
xmin=-3,xmax=3, ymin=0, ymax=1,
xtick={-3,...,3},
xticklabels={8,3,,5,,7},
extra x ticks={.75},
extra x tick labels={x}
]
\end{axis}
\end{tikzpicture}
\end{document}