我正在尝试创建一个 pgf 图,其中包括常数函数 f(x)=1。我的 x 轴应限制在某个范围内(见下文),并且 y 轴也有一个限制。这是重现该问题的最小代码:
\documentclass{article}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
xmin=0,
xmax=.1,
ymin=0,
ymax=2]
\addplot {1};
\end{axis}
\end{tikzpicture}
\end{document}
此代码产生错误
LaTeX Font Info: External font `cmex10' loaded for size
(Font) <7> on input line 11.
LaTeX Font Info: External font `cmex10' loaded for size
(Font) <5> on input line 11.
! Dimension too large.
<recently read> \pgf@xx
l.11 \end{axis}
I can't work with sizes bigger than about 19 feet.
Continue and I'll use the largest value I can.
! Dimension too large.
错误消息的最后七行重复了 5 次。无论我对ymin
和ymax
参数使用什么值,都会发生这种情况,但仅限于某些xmin
和xmax
。通过尝试不同的值,我猜测xmin
-xmax
必须大于大约 0.15,LaTeX 才能成功编译它,但在我的用例中,它必须在xmin=.0005
到的范围内xmax=.0027
。
为什么当范围太小时 LaTeX 会抛出错误(或者我的代码有其他问题)?
~ $ pdflatex -version
pdfTeX 3.1415926-2.5-1.40.14 (TeX Live 2013/Debian)
答案1
你需要告诉pgfplots
你正在绘制一个表达式,并给它一个domain
:
\addplot expression[domain=0:1]{1};
% arara: pdflatex
\documentclass[tikz]{standalone}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
xmin=0,
xmax=.1,
ymin=0,
ymax=2]
\addplot expression[domain=0:1]{1};
\end{axis}
\end{tikzpicture}
\end{document}