2

如何在具有域和范围限制的 MATLAB 上的同一图形/绘图/笛卡尔平面上绘制多个函数?

例如,我在下面编写了以下函数。如何在 MATLAB 中的同一图表上绘制以下图表?

Function 1: x = -3 for 10 <= y <= 14
Function 2: y = -2x for -5 <= x <= -4
Function 3: (x-0)^2 + (y-12)^2 = 2.25 // Produces a circle
Function 4: y = 4 for -1 <= x <= 1
4

1 回答 1

4

Matlab 是一个数值计算环境,因此您需要在绘图时告诉它您要查找的内容。

在您的第一个示例中,您需要告诉它要绘制哪些 Y 值。因为 X 总是相同的,所以你知道它将是一条线 - 所以两点就足够了。绘图需要并行数组,因此:

功能一: x = [-3 -3]; y = [10 14]; plot(x, y);

要在同一张图上绘制其他线,请使用命令hold on,该命令适用于您刚刚绘制的图。如果你不这样做,新的绘图命令将删除旧的绘图。

相似地,

功能二: x = [-5 4]; y = -2*x; plot(x, y);

对于像 #3 这样的圆圈/椭圆,ezplot可能会有所帮助,尽管您仍然必须指定范围。

功能三: ezplot('x^2 + (y-12)^2 - 2.25', [-3,3,10,14])

最后一个很简单,但假设它是一条曲线。您需要绘制的不仅仅是两个 x 值。您可以从以下范围创建向量:x = -1:0.1:1;,或从 -1 到 1 的均匀空间点集,间隔为 0.1。假设您想在同一张图上绘制它,并且您已经完成了hold on. 您想要不同的颜色,并且想要显示构成线条的各个点,您可以使用 plot 函数的第三个参数:

功能四: x = -1:0.1:1; y = 4 * ones(length(x)); plot(x, y, '-r.');

这里的第二个命令y = 4 * ones(length(x));只是创建一个与 x 长度相同的向量。

于 2013-05-09T06:07:48.253 回答