我正在绘制由 y(x)表达式给出的线,该表达式在规则间隔的点处求值,例如
\def\ffIiC{+0.0436275-1.18778*\x^1+0.542693*\x^2}
% ...
\draw (0,0.0436275) \foreach\x in {0,.1,...,4}{ -- ({\x},{\ffIiiC}) };
% ^^^^^^^^^^^^^
但是,我总是需要明确指定第一个点。有没有什么办法可以避免这种情况?
答案1
没有前一个坐标的A--
似乎是问题所在。您可以添加一个条件来抑制--
第一个值。
\documentclass{article}
\usepackage{tikz}
\begin{document}
\tikz {
\def\ffIiC{+0.0436275-1.18778*\x^1+0.542693*\x^2}
\draw \foreach\x in {0,.1,...,4} {
\ifdim\x pt=0pt \else--\fi
({\x},{\ffIiC})
};
}
\end{document}
注意:之前的空格\else
很重要,否则会导致错误。\relax
在这种情况下,TeX 似乎为维度表达式添加了一个隐式终止符,从而破坏了 TikZ 路径。