MATLAB正弦波图不正确

MATLAB正弦波图不正确,matlab,plot,matlab-figure,Matlab,Plot,Matlab Figure,我不熟悉MATLAB,我写了一些生成正弦波的代码。然而,图表并不正确。这是我的代码和情节的截图 有什么问题?请帮忙 MATLAB绘制离散点,并简单地绘制一条直线将相邻点连接在一起。您的时间点介于1秒之间,您指定的频率为100 Hz。此外,由于采样时间是正弦波周期的倍数,因此替换t的所有这些值将使sin结果等于0,尽管存在一些数值不精确性。具体地说,如果你看y轴,你会发现你的数字的大小大约是10^{-13}。然而,即使你逃避了这一点,采样时间对于你的波的指定频率来说太大了,因此点之间的巨大间隙被

我不熟悉MATLAB,我写了一些生成正弦波的代码。然而,图表并不正确。这是我的代码和情节的截图


有什么问题?请帮忙

MATLAB绘制离散点,并简单地绘制一条直线将相邻点连接在一起。您的时间点介于1秒之间,您指定的频率为100 Hz。此外,由于采样时间是正弦波周期的倍数,因此替换
t
的所有这些值将使
sin
结果等于0,尽管存在一些数值不精确性。具体地说,如果你看y轴,你会发现你的数字的大小大约是
10^{-13}
。然而,即使你逃避了这一点,采样时间对于你的波的指定频率来说太大了,因此点之间的巨大间隙被可视化为你在图表中看到的锯齿波

解决方案是简单地缩短采样时间。尝试一些小的东西,例如
1e-4

t = 0:1e-4:0.05;
f = 100;
A = 2;
x = A*sin(2*pi*f*t);
plot(t,x);
我们现在明白了:


MATLAB绘制离散点,并简单地绘制一条直线将相邻点连接在一起。您的时间点介于1秒之间,您指定的频率为100 Hz。此外,由于采样时间是正弦波周期的倍数,因此替换
t
的所有这些值将使
sin
结果等于0,尽管存在一些数值不精确性。具体地说,如果你看y轴,你会发现你的数字的大小大约是
10^{-13}
。然而,即使你逃避了这一点,采样时间对于你的波的指定频率来说太大了,因此点之间的巨大间隙被可视化为你在图表中看到的锯齿波

解决方案是简单地缩短采样时间。尝试一些小的东西,例如
1e-4

t = 0:1e-4:0.05;
f = 100;
A = 2;
x = A*sin(2*pi*f*t);
plot(t,x);
我们现在明白了:


如果您可以截屏您的代码,您可以将其复制并粘贴到此处……如果您可以截屏您的代码,您可以将其复制并粘贴到此处……请求的100000001x1(74.5GB)数组超出了最大数组大小首选项。创建大于此限制的数组可能需要很长时间,并导致MATLAB变得无响应。有关详细信息,请参见阵列大小限制或首选项面板。new1(第2行)中的错误t=0:1e-10:1@nehal_b更改了采样时间。我把它做得太小了。@Rayryeng绘图在不断增加,而且离正弦波还很远:(@nehal_b呃…这是正弦波。我会上传一个绘图。@nehal_b我建议理解你方程的数学输出,然后注意你的轴的极限,以及它们与预期输出的比较……请10000000001x1(74.5GB)数组超出了最大数组大小首选项。创建大于此限制的数组可能需要很长时间,并导致MATLAB变得无响应。有关详细信息,请参阅数组大小限制或首选项面板。new1中的错误(第2行)t=0:1e-10:1;@nehal_b更改了采样时间。我将采样时间设置得太小了。@rayryeng绘图在不断增加,而且不接近正弦波:(@nehal_b呃…这是正弦波。我会上传一个图。@nehal_b我建议理解你方程的数学输出,然后注意你的轴的极限以及它们与预期输出的比较。。。