fimplicit3
绘制三维隐函数
语法
说明
fimplicit3(
将在 ax
,___)ax
指定的坐标区中,而不是在当前坐标区中绘制图形。将坐标区指定为第一个输入参量,先于上述任何输入参量。
fimplicit3(___,
指定线型、标记符号和线条颜色。例如,LineSpec
)'-r'
指定红色线条。
fimplicit3(___,
使用一个或多个名称-值对组参量指定曲面属性。例如,Name,Value
)'FaceAlpha',0.6
为半透明曲面指定透明度值 0.6
。
返回 fs
= fimplicit3(___)ImplicitFunctionSurface
对象。使用 fs
可在创建曲面后访问和修改曲面的属性。有关属性列表,请参阅 ImplicitFunctionSurface 属性。
示例
绘制三维隐函数
指定绘图区间
对于 z,通过将绘图区间指定为 [0 5],绘制双曲面 的上半部分。对于 x 和 y,使用默认区间 [-5 5]
。
f = @(x,y,z) x.^2 + y.^2 - z.^2; interval = [-5 5 -5 5 0 5]; fimplicit3(f,interval)
修改隐式曲面的外观
绘制隐曲面 。通过将 EdgeColor
属性设置为 'none'
删除线条。通过将 FaceAlpha
属性设置为 0 到 1 之间的值添加透明度。
f = @(x,y,z) x.^2 + y.^2 - z.^2; fimplicit3(f,'EdgeColor','none','FaceAlpha',.5)
创建后修改隐曲面
绘制隐曲面并将隐曲面对象赋给变量 fs
。
f = @(x,y,z) 1./x.^2 - 1./y.^2 + 1./z.^2; fs = fimplicit3(f)
fs = ImplicitFunctionSurface with properties: Function: @(x,y,z)1./x.^2-1./y.^2+1./z.^2 EdgeColor: [0 0 0] LineStyle: '-' FaceColor: 'interp' Use GET to show all properties
使用 fs
在创建隐曲面后访问和修改其属性。例如,通过将 XRange
属性设置为 [0 5]
,只显示正 x 值。通过将 EdgeColor
属性设置为 'none'
删除线条。通过将 FaceAlpha
属性设置为 0.8
添加透明度。
fs.XRange = [0 5];
fs.EdgeColor = 'none';
fs.FaceAlpha = 0.8;
输入参数
f
— 要绘制的三维隐函数
函数句柄
要绘制的三维隐函数,指定为命名或匿名函数的函数句柄。
指定 w = f(x,y,z)
形式的函数。该函数必须接受三个三维数组输入参量,并返回大小相同的三维数组输出参量。为获得最佳性能,应使用数组运算符而不是矩阵运算符。例如,使用 .*
(times
) 而不是 * (mtimes
)。
示例: fimplicit3(@(x,y,z) x.^2 + y.^2 - z.^2)
interval
— x
、y
和 z
的绘图区间
[-5 5]
(默认) | 二元素向量 | 六元素向量
x
、y
和 z
的绘图区间,指定为下列形式之一:
[min max]
形式的二元素向量 - 对x
、y
和z
使用相同的绘图区间[min max]
。[xmin xmax ymin ymax zmin zmax]
形式的六元素向量 - 对x
、y
和z
使用不同绘图区间。在区间[xmin xmax]
(对于x
)、[ymin ymax]
(对于y
)和[zmin zmax]
(对于z
)上绘图。
示例: fimplicit3(f,[-2 3 -4 5 -3 3])
LineSpec
— 线型、标记和颜色
字符串标量 | 字符向量
线型、标记和颜色,指定为包含符号的字符串标量或字符向量。符号可以按任意顺序显示。您不需要同时指定所有三个特征(线型、标记和颜色)。例如,如果忽略线型,只指定标记,则绘图只显示标记,不显示线条。
示例: "--or"
是带有圆形标记的红色虚线。
线型 | 描述 | 表示的线条 |
---|---|---|
"-" | 实线 |
|
"--" | 虚线 |
|
":" | 点线 |
|
"-." | 点划线 |
|
标记 | 描述 | 生成的标记 |
---|---|---|
"o" | 圆圈 |
|
"+" | 加号 |
|
"*" | 星号 |
|
"." | 点 |
|
"x" | 叉号 |
|
"_" | 水平线条 |
|
"|" | 垂直线条 |
|
"square" | 方形 |
|
"diamond" | 菱形 |
|
"^" | 上三角 |
|
"v" | 下三角 |
|
">" | 右三角 |
|
"<" | 左三角 |
|
"pentagram" | 五角形 |
|
"hexagram" | 六角形 |
|
颜色名称 | 短名称 | RGB 三元组 | 外观 |
---|---|---|---|
"red" | "r" | [1 0 0] | |
"green" | "g" | [0 1 0] | |
"blue" | "b" | [0 0 1] | |
"cyan" | "c" | [0 1 1] | |
"magenta" | "m" | [1 0 1] | |
"yellow" | "y" | [1 1 0] | |
"black" | "k" | [0 0 0] | |
"white" | "w" | [1 1 1] | |
ax
— 坐标区对象
坐标区对象
坐标区对象。如果您不指定坐标区,则 fimplicit3
使用当前坐标区。
名称-值参数
将可选的参量对组指定为 Name1=Value1,...,NameN=ValueN
,其中 Name
是参量名称,Value
是对应的值。名称-值参量必须出现在其他参量之后,但参量对组的顺序无关紧要。
在 R2021a 之前,使用逗号分隔每个名称和值,并用引号将 Name
引起来。
示例: fimplicit3(f,'MeshDensity',50,'FaceAlpha',0.5)
指定计算点数和透明度值。
此处所列的 ImplicitFunctionSurface
属性只是一部分。有关完整列表,请参阅 ImplicitFunctionSurface 属性。
MeshDensity
— 每个方向上的计算点数
35
(默认) | 标量
每个方向上的计算点数,指定为标量。
FaceAlpha
— 面透明度
1 (默认) | 范围 [0 1]
中的标量
面透明度,指定为 [0,1]
范围中的标量。在所有面上使用统一的透明度。值为 1
时完全不透明,值为 0
时完全透明。介于 0
和 1
之间的值表示半透明。
FaceColor
— 面颜色
'interp'
(默认) | RGB 三元组 | 十六进制颜色代码 | 'r'
| 'g'
| 'b'
| ...
面颜色,指定为 'interp'
、RGB 三元组、十六进制颜色代码、颜色名称或短名称。默认值 'interp'
将基于 ZData
的值进行颜色插值。
对于自定义颜色,请指定 RGB 三元组或十六进制颜色代码。
RGB 三元组是包含三个元素的行向量,其元素分别指定颜色中红、绿、蓝分量的强度。强度值必须位于
[0,1]
范围内,例如[0.4 0.6 0.7]
。十六进制颜色代码是字符串标量或字符向量,以井号 (
#
) 开头,后跟三个或六个十六进制数字,范围可以是0
到F
。这些值不区分大小写。因此,颜色代码"#FF8800"
与"#ff8800"
、"#F80"
与"#f80"
是等效的。
此外,还可以按名称指定一些常见的颜色。下表列出了命名颜色选项、等效 RGB 三元组和十六进制颜色代码。
颜色名称 | 短名称 | RGB 三元组 | 十六进制颜色代码 | 外观 |
---|---|---|---|---|
"red" | "r" | [1 0 0] | "#FF0000" | |
"green" | "g" | [0 1 0] | "#00FF00" | |
"blue" | "b" | [0 0 1] | "#0000FF" | |
"cyan" | "c" | [0 1 1] | "#00FFFF" | |
"magenta" | "m" | [1 0 1] | "#FF00FF" | |
"yellow" | "y" | [1 1 0] | "#FFFF00" | |
"black" | "k" | [0 0 0] | "#000000" | |
"white" | "w" | [1 1 1] | "#FFFFFF" | |
"none" | 不适用 | 不适用 | 不适用 | 无颜色 |
以下是 MATLAB® 在许多类型的绘图中使用的默认颜色的 RGB 三元组和十六进制颜色代码。
RGB 三元组 | 十六进制颜色代码 | 外观 |
---|---|---|
[0 0.4470 0.7410] | "#0072BD" | |
[0.8500 0.3250 0.0980] | "#D95319" | |
[0.9290 0.6940 0.1250] | "#EDB120" | |
[0.4940 0.1840 0.5560] | "#7E2F8E" | |
[0.4660 0.6740 0.1880] | "#77AC30" | |
[0.3010 0.7450 0.9330] | "#4DBEEE" | |
[0.6350 0.0780 0.1840] | "#A2142F" |
EdgeColor
— 线条颜色
[0 0 0]
(默认) | 'interp'
| RGB 三元组 | 十六进制颜色代码 | 'r'
| 'g'
| 'b'
| ...
线条颜色,指定为 'interp'
、RGB 三元组、十六进制颜色代码、颜色名称或短名称。默认的 RGB 三元组值 [0 0 0]
与黑色对应。值 'interp'
将基于 ZData
的值为边着色。
对于自定义颜色,请指定 RGB 三元组或十六进制颜色代码。
RGB 三元组是包含三个元素的行向量,其元素分别指定颜色中红、绿、蓝分量的强度。强度值必须位于
[0,1]
范围内,例如[0.4 0.6 0.7]
。十六进制颜色代码是字符串标量或字符向量,以井号 (
#
) 开头,后跟三个或六个十六进制数字,范围可以是0
到F
。这些值不区分大小写。因此,颜色代码"#FF8800"
与"#ff8800"
、"#F80"
与"#f80"
是等效的。
此外,还可以按名称指定一些常见的颜色。下表列出了命名颜色选项、等效 RGB 三元组和十六进制颜色代码。
颜色名称 | 短名称 | RGB 三元组 | 十六进制颜色代码 | 外观 |
---|---|---|---|---|
"red" | "r" | [1 0 0] | "#FF0000" | |
"green" | "g" | [0 1 0] | "#00FF00" | |
"blue" | "b" | [0 0 1] | "#0000FF" | |
"cyan" | "c" | [0 1 1] | "#00FFFF" | |
"magenta" | "m" | [1 0 1] | "#FF00FF" | |
"yellow" | "y" | [1 1 0] | "#FFFF00" | |
"black" | "k" | [0 0 0] | "#000000" | |
"white" | "w" | [1 1 1] | "#FFFFFF" | |
"none" | 不适用 | 不适用 | 不适用 | 无颜色 |
以下是 MATLAB 在许多类型的绘图中使用的默认颜色的 RGB 三元组和十六进制颜色代码。
RGB 三元组 | 十六进制颜色代码 | 外观 |
---|---|---|
[0 0.4470 0.7410] | "#0072BD" | |
[0.8500 0.3250 0.0980] | "#D95319" | |
[0.9290 0.6940 0.1250] | "#EDB120" | |
[0.4940 0.1840 0.5560] | "#7E2F8E" | |
[0.4660 0.6740 0.1880] | "#77AC30" | |
[0.3010 0.7450 0.9330] | "#4DBEEE" | |
[0.6350 0.0780 0.1840] | "#A2142F" |
LineStyle
— 线型
"-"
(默认) | "--"
| ":"
| "-."
| "none"
线型,指定为下表中列出的选项之一。
线型 | 描述 | 表示的线条 |
---|---|---|
"-" | 实线 |
|
"--" | 虚线 |
|
":" | 点线 |
|
"-." | 点划线 |
|
"none" | 无线条 | 无线条 |
LineWidth
— 线条宽度
0.5
(默认) | 正值
线宽,指定为以磅为单位的正值,其中 1 磅 = 1/72 英寸。如果该线条具有标记,则线条宽度也会影响标记边。
线宽不能小于像素的宽度。如果将线宽设置为小于系统上像素宽度的值,则线条显示为一个像素的宽度。
提示
为了获得最佳性能和避免产生警告消息,请使用按元素运算符。例如,使用
x.*y
而不是x*y
。有关详细信息,请参阅数组与矩阵运算。放大图形时,
fimplicit3
将重新计算数据,这样可以显示隐藏的详细信息。
版本历史记录
在 R2016b 中推出
MATLAB 命令
您点击的链接对应于以下 MATLAB 命令:
请在 MATLAB 命令行窗口中直接输入以执行命令。Web 浏览器不支持 MATLAB 命令。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)