在Matlab中绘制复杂函数

时间:2015-05-17 03:32:32

标签: matlab plot

请您帮我弄清楚如何获得以下功能的数字?

UploadController

x> = 0

2 个答案:

答案 0 :(得分:0)

如果要在MATLAB中实现该绘图,只需定义meshgrid坐标并将xy值的范围限制为某个预定限制。您只需在上面的等式中替换每对xy值,并绘制一张地图,告诉您xy的哪些值满足该不等式。< / p>

这样的事情:

xmax = 5; ymax = 5; step_size = 0.01;
xval = -xmax:step_size:xmax;
yval = -ymax:step_size:ymax;
[x,y] = meshgrid(-xmax:step_size:xmax, -ymax:step_size:ymax);
z = ((y - x.^2).*(2*x.^2 - y) >= 0) & (x >= 0);
figure; 
imagesc(z); colormap gray; shading interp; axis xy;
set(gca, 'XTickLabel', xval(101:100:end));
set(gca, 'YTickLabel', yval(101:100:end));
xlabel('x'); ylabel('y');

第一行确定了您要绘制的xy值的边界,以及连续xy值之间的步长。下一行定义了一个2D坐标网格,该网格跨越第一行代码定义的空间。我假设两个坐标的对称范围从-NN。之后的行计算logical地图,该地图描述了上述等式,其中false表示一对xy值不满足等式{{1意味着它做到了。最后几行都是用于制作情节。我使用imagesc为我们显示此区域,强制执行颜色贴图为灰色,插值为阴影,true使imagesc轴默认为正向下。为了将其翻转为我们习惯的内容,我使用了y

代码的最后一部分主要用于清理。因为axis xy正在显示图像,所以我希望水平轴和垂直轴显示实际坐标数据,而不是每对imagescx值的索引。因此,我只是重新标记yx标签,以便它们符合我们的预期,并为每个维度提供适当的标题。

我们得到了这个:

enter image description here

在这里,白色表示您正在查看的yx坐标对满足不等式,黑色表示该对没有。

答案 1 :(得分:0)

重新格式化 z = 2x ^ 4 - 3x ^ 2y + y ^ 2

3d mesh countour