-3

我试着做我的功课,但我不确定我是否做对了。我不完全确定 linspace 是如何工作的,并希望对我的代码有一些输入!我将附上它所基于的作业。[在此处输入链接描述][1] [在此处输入图像描述][2]

clc
clear all
figure(1);
figure(1);
x = 0:0.1:10
y1 = exp(-0.5*x).*sin(2*x)
y2 = exp(-0.5*x).*cos(2*x)
plot(x,y1,'-b',x,y2,'--r')
legend('y1','y2');
grid on
xlabel('\bfx axis');
ylabel('\bfy axis');
title('Sin and Cos Functions')

figure(2);
subplot(2,2,1)
plot(x,y1,'-b');
legend('y1','Location','northeast');
grid on
xlabel('\bfx')
ylabel('\bfy1')
title('Subplot of x and y1')

figure(3)
subplot(2,2,2)
plot(x,y2,'--r');
legend('y2','Location','northeast');
grid on
xlabel('\bfx')
ylabel('\bfy2')
title('Subplot of x and y2')

figure(4)
x = linspace(-2,8,200);
fun=(x.^2-6*x+5)./(x-3)
plot(x,fun,'b-','LineWidth',2)
axis([-2 8 -10 10]);
hold on;
title('Plot of f(x)')
xlabel('\bfx')
ylabel('\bfy')

(50 分)为 0 到 10 之间的 100 个 x 值绘制函数 y(x) = (e^-0.5x)(Sin2x)。为该函数使用蓝色实线。然后在同一轴上绘制函数 y(x) = (e^-0.5x)(Cos2x)。此功能使用红色虚线。请务必在图上包含图例、标题、轴标签和网格。使用 subplot 重新绘制这两个函数。

(50 分)绘制函数 在 −2 ≤ x ≤ 8 范围内使用 200 个点绘制函数 f(x)= ((X^2)-6x-5)/(x-3)。注意有一个x = 3 处的渐近线,因此该函数将趋近于该点的无穷大。为了正确查看绘图的其余部分,您需要将 y 轴限制在 -10 到 10 的范围内。

4

1 回答 1

1

linspace 接受 3 个参数:起始值、结束值和 n = 您要在这两个数字之间生成的点数。它在您的起始值和结束值之间输出一个由 n 个均匀间隔的数字组成的数组。例如linspace(0, 10, 5),返回一个由 5 个等距数字组成的数组,该数组以 0 开头,以 10 结尾。

这是图1的代码

x = linspace(0, 10, 100);
y1 = exp(-0.5*x).*sin(2*x);
y2 = exp(-0.5*x).*cos(2*x);

figure(1)
plot(x, y1, '-b', x, y2, '--r')
title('This is the title')
legend('This is Y1', 'This is Y2')
xlabel('These are the X values')
ylabel('These are the Y values')
grid on

图 2. 两个子图都可以在一个图形句柄下(即图(2))。

figure(2)
subplot(2, 1, 1)
plot(x, y1, '-b')
title('This is the first subplot')
xlabel('X axis')
ylabel('Y axis')
grid on
subplot(2, 1, 2)
plot(x, y2, '--r')
title('This is the second subplot')
xlabel('Another X axis')
ylabel('Another Y axis')
grid on

图 3. 您的代码看起来正确。这是一个类似的解决方案:

x2 = linspace(-2, 8, 200);
y3 = ((x2.^2)-6.*x2-5)./(x2-3);

figure(3)
plot(x2, y3, '-g')
title('The third figure')
grid on
ylim([-10 10])
xlabel('Another axis')
ylabel('The last axis')
于 2020-10-05T06:22:51.040 回答