在MatLab中绘制正弦波的倒数

在MatLab中绘制正弦波的倒数,matlab,trigonometry,Matlab,Trigonometry,我很难在MatLab中绘制基本正弦波的倒数。我下面的教程(不是MatLab教程)是通过在每个垂直渐近线之间放置几个点来手动绘制它,让您了解图形的外观。我尝试过使用MatLab的csc()函数,当沿着x边绘制图形时,与绘制的示例完全不同。从0到pi绘制的示例看起来类似于一个大的U,从pi到2*pi是一个否定版本(倒置)。以下是我尝试过的所有不同的代码组合: x = 0:0.01:100; y = 5*csc(x); % amplitude of -5 to 5 plot(x,y) 然后我试着:

我很难在MatLab中绘制基本正弦波的倒数。我下面的教程(不是MatLab教程)是通过在每个垂直渐近线之间放置几个点来手动绘制它,让您了解图形的外观。我尝试过使用MatLab的
csc()
函数,当沿着
x
边绘制图形时,与绘制的示例完全不同。从
0
pi
绘制的示例看起来类似于一个大的
U
,从
pi
2*pi
是一个否定版本(倒置)。以下是我尝试过的所有不同的代码组合:

x = 0:0.01:100;
y = 5*csc(x); % amplitude of -5 to 5
plot(x,y)
然后我试着:

x = 0:0.01:100;
y = 1 / 5*sin(x);  % amplitude of -5 to 5 
plot(x,y)
这两种结果有着显著的不同。我想知道使用向量
x
是否可以,因为我之前的一篇文章给我的印象是,标准的MatLab trig函数设置为采用弧度而不是度?

你能试试这个吗-

x = 0 : 0.01 : 2*pi;
y = csc(x);
plot(x,y)
ylim([-10, 10])


这就是你所期望的吗?

当然,你需要5*sin(x)左右的括号!!是的,所有函数都取弧度。谢谢。所以,当我创建一个向量放入一个三角函数时,我需要将向量转换成弧度吗?或者MatLab会自动做到这一点?不一定。也有sin、cos等的版本。。它需要学位。他们被称为sind,cosd,tand。。只需查看这些文档,非常感谢,就可以了。谢谢,很接近,比我的尝试更接近。我注意到你用pi*2而不是100结束了第一个语句
x=
。这就是我们只看到一个周期吗?如果是这样的话,我真的想知道怎么做:-)还有,为什么y轴需要限制?我以为只有
csc()
函数的振幅仅在
-1
1
之间。是的,我选择x轴变量仅显示一个周期。
csc()
函数实际上是无界的-它是
sin()
的倒数通过零,因此
csc()
pi
的任意倍数下趋于无穷大。这很好,谢谢。我想当你初始化
x
变量时,你必须计算出
0.01
的弧度,或者MatLab知道我们的意思吗?MatLab默认为弧度-无论何时调用三角函数,MatLab都假设你给它弧度。如果您想使用度,您需要通过乘以
360/(2*pi)
手动转换,或者使用函数
sind()
cosd()
等,这些函数假定您提供的参数是度。我明白了,这就解释了为什么我以前构造
x
变量的方法在传递到MatLab的trig函数时会产生很多周期。有一次我通过了
0到360
只期望一个周期,但正如你所说的,我实际上是通过了360弧度进入了
sin()
,这就是为什么我会有这么多周期!我会接受你的回答,让你完蛋。