● 隐函数:
通常情况下我们使用的隐函数都是如:x²+y²=1 这样的形式,但在matlab中,隐函数用【函数句柄】定义时,必须把形式化为 f (x,y) = 0此种形式,如:x² + y² - 1 = 0。
下面是用【函数句柄】定义隐函数的代码:
f = @(x,y) x.^2 + y.^2 - 1;
● 绘图(主要用到 fimplicit 函数):
二维
%% 二维隐函数绘图
%% 1
f = @(x,y) x.^2 - y.^2 - 1; % 使用函数句柄定义函数
fimplicit(f)
%% 2
f = @(x,y) x.^2 + y.^2 - 3;
fimplicit(f,[-3 0 -2 2]) % 指定绘图范围
%% 3
f1 = @(x,y) x.^2 + y.^2 - 1;
fimplicit(f1,':r') % 第二个参数中“:”表示线型,“r”表示红色
hold on
f2 = @(x,y) x.^2 + y.^2 - 2;
fimplicit(f2,'--g','LineWidth',2) % 第二个参数中“--”表示线型,“g”表示绿色
hold off
三维
%% 三维隐函数绘图
%% 1
f = @(x,y,z) x.^2 + y.^2 - z.^2;
interval = [-5 5 -5 5 0 5];
fimplicit3(f,interval)
%% 2
f = @(x,y,z) x.^2 + y.^2 - z.^2;
fimplicit3(f,'EdgeColor','none','FaceAlpha',.5)
% 通过将 EdgeColor 属性设置为 'none' 删除线条。通过将 FaceAlpha 属性设置为 0 到 1 之间的值添加透明度。