我的 TikZ 出了什么问题?

我的 TikZ 出了什么问题?

当我尝试生成 PDF 时,我的程序给出错误。

\begin{tikzpicture}
\begin{axis}[
axis lines=middle,
xlabel=$X$,
ylabel=$Y$,
domain=2.25:5.75,
xmin=2.25,
xmax=5.75,
ymin=-1.5,
ymax=1.5,
samples=1000,
xticklabels={,,},
yticklabels={,,},
extra x ticks={3.5,4,4.5},
extra x tick labels={$x_0-\delta$,$x_0$,$x_0+\delta$},
ytick style={draw=none},
xtick style={draw=none},
extra x tick style={ticklabel pos=top},
extra y ticks={-0.85790625,-1.001,−1.14409375},
extra y tick labels={$L-\varepsilon$,$L$,$L+\varepsilon$}]
\addplot[blue]{(x^5-2*x^4-24*x^3+x^2+x-7)/1000};
\draw[dashed] (3.5,0) -- (3.5,-0.85790625);
\draw[dashed] (0,-0.85790625) -- (3.5,-0.85790625);
\draw[dashed] (4,0) -- (4,-1.001);
\draw[dashed] (0,-1.001) -- (4,-1.001);
\draw[dashed] (4.5,0) -- (4.5,−1.14409375);
\draw[dashed] (0,−1.14409375) -- (4.5,−1.14409375);
\end{axis}
\end{tikzpicture}

谢谢你! :)

答案1

既然你已经有了一些名声,你应该知道,拥有一个最小(非)工作示例(MWE)因为有时错误的根本原因可以在序言中(或其他地方)找到。除此之外,我们——帮助者——可以立即开始解决问题,而不是先自己猜测缺失的部分。

当你有了这个,你(将来)就可以自己找出问题的根源。

  • 创建您的项目的副本(这样您仍然拥有原件)。
  • 开始删除所有你确信与错误无关的内容(例如,当你在一本书中并且编译器转到第 3 章时,删除第 1 章和第 2 章应该是非常安全的)。再次编译时仍会出现相同的错误。
  • 从日志文件中,您应该能够大致说出错误发生的位置。删除该部分之后的所有内容。
  • 现在开始通过注释大约一半的剩余文本来缩小错误范围。如果仍然出现相同的错误,那么一定要删除注释的部分。如果错误消失,则错误在注释的部分中,并且几乎可以肯定可以删除未注释的部分。
  • 重复上一步。在此期间,您还可以开始从序言中删除不再需要的内容。
  • 大多数情况下,残留的少量代码仍然会导致错误发生。
  • 要么你自己能够找到并修复它,要么,如果不能,当然你可以自由地寻求帮助,例如在 TeX.SX 这里。

我可以将错误缩小到以下代码。取消注释其中一行会引发您也遇到的错误,对吗?记住错误在抱怨什么,然后查看注释的行。你看到了规律吗?

% used PGFPlots v1.17
\documentclass{standalone}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
    \begin{axis}[
%        extra y ticks={−1.14409375},
    ]
        % (sometimes) at least one `\addplot` command is needed to execute all `axis` options
        \addplot coordinates {(-1,-1)};
%        \draw (0,−1.14409375) -- (4.5,−1.14409375);
%        \draw (4.5,−1.14409375);
    \end{axis}
\end{tikzpicture}
\end{document}

好的,错误是从引发的−1.14409375

(仅取消注释该extra y ticks行即可继续。)

  • 现在,您可以进一步追踪错误,或者先让它工作,例如尝试另一个数字,如0。这会起作用。
  • 进一步追踪错误会导致−1错误仍然发生。
  • 将数字更改为例如−2仍然会引发错误。
  • 删除将会起作用。
  • (再次)添加减号也可以起作用!!!

所以这才是问题的真正根源。

所以这个标志似乎不是一个连字符,但其他一些角色看起来非常相似。也许这是一个真实的减号,也许是短跑(我们可以尝试找出它到底是什么,但我认为这不是我们感兴趣的。)

所以我的猜测是你从某个地方复制了这个号码而不是自己输入的,对吗?

相关内容