绘图时除以零错误 - 其他地方提出的建议均无效

绘图时除以零错误 - 其他地方提出的建议均无效

我想用命令绘制函数 (sin(2x) + sin(3x))/(2sin(x))

\draw[blue,domain=-8.5:8.5,smooth, variable=\x, blue] plot ({\x},{(sin(2 * \x) + sin(3 *\x) )/ (2*sin(\x))});

但不知何故,我得到了一个“你让我分0.0' by0.0 除,但我无法用‘0.0’除任何数字”的错误。

它使用 gnuplot 完美呈现,因此“理论上”不应该发生这种情况。到目前为止,我尝试按照以下建议引导以下软件包类似帖子,但它不起作用:

\usepackage{pgfplots}
\pgfplotsset{compat=1.12}
\usepackage{fp}
\usetikzlibrary{fixedpointarithmetic}

备注:我不想使用外部调用(例如使用 gnuplot 进行绘图)。上面这行代码只是我的图片的一个示例,外部调用会让正确集成变得非常困难。

我需要一点帮助 :(

谢谢 ;-)

答案1

限制表达式需要高分辨率浮点计算,fpu 尽力提供但仍然有限。

您可以pgfplots通过增加样本数量来提供帮助(请注意峰值处的轻微伪影)。

\begin{tikzpicture}
\begin{axis}
\addplot[draw=blue,trig format=rad,domain=-3*pi:3*pi,samples=701] {(sin(2*x) + sin(3*x) )/ (2*sin(x))};
\end{axis}
\end{tikzpicture}

在此处输入图片描述

但如果一切都失败了,那么就gnuplot通过启用后端--shell-escape并让 Gnuplot 来完成工作。

相关内容