如何在Matlab中绘制长三角方程?

如何在Matlab中绘制长三角方程?,matlab,plot,Matlab,Plot,如果这是一个愚蠢的问题,我很抱歉,但我对Matlab非常陌生,即使是输入2pi之类的小事,我也会不断出错 谁能告诉我如何使用Matlab绘制以下图形: 1-8(成本)^2+8(成本)^4 其中0 首先,您需要为t创建一个值向量,例如 t = 0:0.01:4*pi; y = 1 - 8*cos(t).^2 + 8*cos(t).^4 例如,您可以在t的每个值处计算表达式 t = 0:0.01:4*pi; y = 1 - 8*cos(t).^2 + 8*cos(t).^4 请注意,我们使

如果这是一个愚蠢的问题,我很抱歉,但我对Matlab非常陌生,即使是输入2pi之类的小事,我也会不断出错

谁能告诉我如何使用Matlab绘制以下图形:

1-8(成本)^2+8(成本)^4

其中0


首先,您需要为
t
创建一个值向量,例如

t = 0:0.01:4*pi;
y = 1 - 8*cos(t).^2 + 8*cos(t).^4
例如,您可以在
t
的每个值处计算表达式

t = 0:0.01:4*pi;
y = 1 - 8*cos(t).^2 + 8*cos(t).^4
请注意,我们使用了
^
而不是简单的
^
。本例中的点意味着我们将结果向量的每个条目取幂,而不是向量本身

现在,我们使用
plot
命令来部署方程:

plot(t,y)
xlabel('t');
ylabel('y');
title('Plot of a trigonometric equation') 

首先,例如,您需要为
t
创建一个值向量

t = 0:0.01:4*pi;
y = 1 - 8*cos(t).^2 + 8*cos(t).^4
例如,您可以在
t
的每个值处计算表达式

t = 0:0.01:4*pi;
y = 1 - 8*cos(t).^2 + 8*cos(t).^4
请注意,我们使用了
^
而不是简单的
^
。本例中的点意味着我们将结果向量的每个条目取幂,而不是向量本身

现在,我们使用
plot
命令来部署方程:

plot(t,y)
xlabel('t');
ylabel('y');
title('Plot of a trigonometric equation') 
比生成X点和Y点的虚拟向量更快、更容易,因为它设计用于绘制任意函数而不是实际数据:

f = @(x)(1-8*cos(x).^2+8*cos(x).^4);
fplot('f',[0 pi*2]);
比生成X点和Y点的虚拟向量更快、更容易,因为它设计用于绘制任意函数而不是实际数据:

f = @(x)(1-8*cos(x).^2+8*cos(x).^4);
fplot('f',[0 pi*2]);


将1000改为10,观察
t
f
是大小为10的向量,并通过在命令行中键入它们来查看它们的值,不要以分号结尾。1000表示更好的分辨率。它表示“linespace”方法未定义。对不起,我对这件事还不太熟悉。我应该在某处“导入”此方法吗?@user952949:its
linspace
不是
linespace
(生成线性间隔点的缩写)它是
linspace
,而不是
linespace
。这就是“线性”中的“林”。还有一个
logspace
。是的,1000指定您想要在[0,2*pi]范围内的等距点的数量。您可以从“帮助”菜单中打开产品帮助,搜索
linspace
函数,或在命令行中键入
doc linspace
。将1000改为10,然后观察
t
f
是大小为10的向量,并通过在命令行中键入它们来查看它们的值,而不以分号结尾。1000表示更好的分辨率。它表示“linespace”方法未定义。对不起,我对这件事还不太熟悉。我应该在某处“导入”此方法吗?@user952949:its
linspace
不是
linespace
(生成线性间隔点的缩写)它是
linspace
,而不是
linespace
。这就是“线性”中的“林”。还有一个
logspace
。是的,1000指定您想要在[0,2*pi]范围内的等距点的数量。您可以从“帮助”菜单打开产品帮助,并在命令行中搜索
linspace
函数或键入
doc linspace
。好的,我了解了所有这些,除了为“t”创建向量的部分。这是如何确保t从0到2pi绘制的?这意味着你要以0.01的增量构建一个从0到2*pi的数字数组。好的,所以我理解了所有这些,除了为“t”创建向量的部分。如何确保t从0到2pi绘制?这意味着您构建了一个从0到2*pi的数字数组,增量为0.01。谢谢。这看起来比绘制x和y的向量要好得多;而且更直观(比如能够设置域)@PaulR:你可以简单地使用函数句柄作为输入:
fplot(@(x)1-8*cos(x)。^2+8*cos(x)。^4,[02*pi])
它给了我一个错误:“函数定义在此上下文中是不允许的”@Amro:是的,这可能更简洁,但我是为了简单起见,同时也考虑到定义函数后,它在其他上下文中也可能有用的可能性…@user952949:请确保粘贴时有正确的MATLAB提示,即不是继续提示。这看起来比绘制x和y的向量要好得多;而且更直观(比如能够设置域)@PaulR:你可以简单地使用函数句柄作为输入:
fplot(@(x)1-8*cos(x)。^2+8*cos(x)。^4,[02*pi])
它给了我一个错误:“函数定义在此上下文中是不允许的”@Amro:是的,这可能更简洁,但我是为了简单起见,同时也考虑到定义函数后,它在其他上下文中也可能有用的可能性…@user952949:请确保粘贴时有正确的MATLAB提示,即不是继续提示