Documentation

### This is machine translation

Translated by
Mouseover text to see original. Click the button below to return to the English version of the page.

# fmesh

## Syntax

fmesh(f)
fmesh(f,[min max])
fmesh(f,[xmin xmax ymin ymax])
fmesh(funx,funy,funz)
fmesh(funx,funy,funz,[uvmin uvmax])
fmesh(funx,funy,funz,[umin umax vmin vmax])
fmesh(___,LineSpec)
fmesh(___,Name,Value)
fmesh(ax,___)
obj = fmesh(___)

## Description

example

fmesh(f) creates a mesh plot of the symbolic expression f(x,y) over the default interval [-5 5] for x and y.

fmesh(f,[min max]) plots f(x,y) over the interval [min max] for x and y.

example

fmesh(f,[xmin xmax ymin ymax]) plots f(x,y) over the interval [xmin xmax] for x and [ymin ymax] for y. The fmesh function uses symvar to order the variables and assign intervals.

example

fmesh(funx,funy,funz) plots the parametric mesh x = x(u,v), y = y(u,v), z = z(u,v) over the interval [-5 5] for u and v.

fmesh(funx,funy,funz,[uvmin uvmax]) plots the parametric mesh x = x(u,v), y = y(u,v), z = z(u,v) over the interval [uvmin uvmax] for u and v.

fmesh(funx,funy,funz,[umin umax vmin vmax]) plots the parametric mesh x = x(u,v), y = y(u,v), z = z(u,v) over the interval [umin umax] for u and [vmin vmax] for v. The fmesh function uses symvar to order the parametric variables and assign intervals.

fmesh(___,LineSpec) uses the LineSpec to set the line style, marker symbol, and plot color.

fmesh(___,Name,Value) specifies surface properties using one or more Name,Value pair arguments. Use this option with any of the input argument combinations in the previous syntaxes.

fmesh(ax,___) plots into the axes with the object ax instead of the current axes object gca.

obj = fmesh(___) returns a function surface object or a parameterized function surface object. Use the object to query and modify properties of a specific mesh.

## Examples

### Note

For additional examples, follow the fsurf page because fmesh and fsurf share the same syntax. All examples on the fsurf page apply to fmesh.

### 3-D Mesh Plot of Symbolic Expression

Plot a mesh of the input $\mathrm{sin}\left(x\right)+\mathrm{cos}\left(y\right)$ over the default range $-5 and $-5.

syms x y
fmesh(sin(x)+cos(y))

### 3-D Mesh Plot of Symbolic Function

Plot a 3-D mesh of the real part of ${tan}^{-1}\left(x+iy\right)$ over the default range $-5 and $-5.

syms f(x,y)
f(x,y) = real(atan(x + i*y));
fmesh(f)

### Specify Plotting Interval of Mesh Plot

Plot $\mathrm{sin}\left(x\right)+\mathrm{cos}\left(y\right)$ over $-\pi and $-5 by specifying the plotting interval as the second argument of fmesh.

syms x y
f = sin(x) + cos(y);
fmesh(f, [-pi pi -5 5])

### Parameterized Mesh Plot

Plot the parameterized mesh

$\begin{array}{c}x=r\mathrm{cos}\left(s\right)\mathrm{sin}\left(t\right)\\ y=r\mathrm{sin}\left(s\right)\mathrm{sin}\left(t\right)\\ z=r\mathrm{cos}\left(t\right)\\ where\phantom{\rule{1em}{0ex}}r=8+\mathrm{sin}\left(7s+5t\right)\end{array}$

for $0 and $0. Make the aspect ratio of the axes equal using axis equal. See the entire mesh by making the mesh partially transparent using alpha.

syms s t
r = 8 + sin(7*s + 5*t);
x = r*cos(s)*sin(t);
y = r*sin(s)*sin(t);
z = r*cos(t);
fmesh(x, y, z, [0 2*pi 0 pi], 'Linewidth', 2)
axis equal

alpha(0.8)

### Note

For additional examples, follow the fsurf page because fmesh and fsurf share the same syntax. All examples on the fsurf page apply to fmesh.

## Input Arguments

collapse all

Expression or function to be plotted, specified as a symbolic expression or function.

Plotting interval for x- and y-axes, specified as a vector of two numbers. The default is [-5 5].

Plotting interval for x- and y-axes, specified as a vector of four numbers. The default is [-5 5 -5 5].

Parametric functions of u and v, specified as a symbolic expression or function.

Plotting interval for u and v axes, specified as a vector of two numbers. The default is [-5 5].

Plotting interval for u and v, specified as a vector of four numbers. The default is [-5 5 -5 5].

Axes object. If you do not specify an axes object, then fmesh uses the current axes.

Line style, marker symbol, and line color, specified as a character vector. The elements of the character vector can appear in any order, and you can omit one or more options from the character vector specifier.

Example: '--or' is a red mesh with circle markers

SpecifierLine Style
-Solid line (default)
--Dashed line
:Dotted line
-.Dash-dot line
SpecifierMarker
oCircle
+Plus sign
*Asterisk
.Point
xCross
sSquare
dDiamond
^Upward-pointing triangle
vDownward-pointing triangle
>Right-pointing triangle
<Left-pointing triangle
pPentagram
hHexagram
SpecifierColor

y

yellow

m

magenta

c

cyan

r

red

g

green

b

blue

w

white

k

black

### Name-Value Pair Arguments

Specify optional comma-separated pairs of Name,Value arguments. Name is the argument name and Value is the corresponding value. Name must appear inside quotes. You can specify several name and value pair arguments in any order as Name1,Value1,...,NameN,ValueN.

Example: 'Marker','o','MarkerFaceColor','red'

Number of evaluation points per direction, specified as a number. The default is 35. Because fmesh objects use adaptive evaluation, the actual number of evaluation points is greater.

Example: 100

Display contour plot under plot, specified as 'off' (default) or 'on'.

Line color, specified as 'interp', an RGB triplet, a hexadecimal color code, a color name, or a short name. The default value of 'interp' colors the edges based on the ZData property values.

For a custom color, specify an RGB triplet or a hexadecimal color code.

• An RGB triplet is a three-element row vector whose elements specify the intensities of the red, green, and blue components of the color. The intensities must be in the range [0,1]; for example, [0.4 0.6 0.7].

• A hexadecimal color code is a character vector or a string scalar that starts with a hash symbol (#) followed by three or six hexadecimal digits, which can range from 0 to F. The values are not case sensitive. Thus, the color codes '#FF8800', '#ff8800', '#F80', and '#f80' are equivalent.

Alternatively, you can specify some common colors by name. This table lists the named color options, the equivalent RGB triplets, and hexadecimal color codes.

Color NameShort NameRGB TripletHexadecimal Color CodeAppearance
'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'Not applicableNot applicableNot applicableNo color

Here are the RGB triplets and hexadecimal color codes for the default colors MATLAB® uses in many types of plots.

[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'

Example: 'blue'

Example: [0 0 1]

Example: '#0000FF'

Line style, specified as one of the options listed in this table.

Line StyleDescriptionResulting Line
'-'Solid line

'--'Dashed line

':'Dotted line

'-.'Dash-dotted line

'none'No lineNo line

Line width, specified as a positive value in points, where 1 point = 1/72 of an inch. If the line has markers, then the line width also affects the marker edges.

Marker symbol, specified as one of the values in this table. By default, a line does not have markers. Add markers at selected points along the line by specifying a marker.

ValueDescription
'o'Circle
'+'Plus sign
'*'Asterisk
'.'Point
'x'Cross
'square' or 's'Square
'diamond' or 'd'Diamond
'^'Upward-pointing triangle
'v'Downward-pointing triangle
'>'Right-pointing triangle
'<'Left-pointing triangle
'pentagram' or 'p'Five-pointed star (pentagram)
'hexagram' or 'h'Six-pointed star (hexagram)
'none'No markers

Marker outline color, specified as 'auto', an RGB triplet, a hexadecimal color code, a color name, or a short name. The default value of 'auto' uses the same color as the EdgeColor property.

For a custom color, specify an RGB triplet or a hexadecimal color code.

• An RGB triplet is a three-element row vector whose elements specify the intensities of the red, green, and blue components of the color. The intensities must be in the range [0,1]; for example, [0.4 0.6 0.7].

• A hexadecimal color code is a character vector or a string scalar that starts with a hash symbol (#) followed by three or six hexadecimal digits, which can range from 0 to F. The values are not case sensitive. Thus, the color codes '#FF8800', '#ff8800', '#F80', and '#f80' are equivalent.

Alternatively, you can specify some common colors by name. This table lists the named color options, the equivalent RGB triplets, and hexadecimal color codes.

Color NameShort NameRGB TripletHexadecimal Color CodeAppearance
'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'Not applicableNot applicableNot applicableNo color

Here are the RGB triplets and hexadecimal color codes for the default colors MATLAB uses in many types of plots.

[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'

Example: [0.5 0.5 0.5]

Example: 'blue'

Example: '#D2F9A7'

Marker fill color, specified as 'auto', an RGB triplet, a hexadecimal color code, a color name, or a short name. The 'auto' value uses the same color as the MarkerEdgeColor property.

For a custom color, specify an RGB triplet or a hexadecimal color code.

• An RGB triplet is a three-element row vector whose elements specify the intensities of the red, green, and blue components of the color. The intensities must be in the range [0,1]; for example, [0.4 0.6 0.7].

• A hexadecimal color code is a character vector or a string scalar that starts with a hash symbol (#) followed by three or six hexadecimal digits, which can range from 0 to F. The values are not case sensitive. Thus, the color codes '#FF8800', '#ff8800', '#F80', and '#f80' are equivalent.

Alternatively, you can specify some common colors by name. This table lists the named color options, the equivalent RGB triplets, and hexadecimal color codes.

Color NameShort NameRGB TripletHexadecimal Color CodeAppearance
'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'Not applicableNot applicableNot applicableNo color

Here are the RGB triplets and hexadecimal color codes for the default colors MATLAB uses in many types of plots.

[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'

Example: [0.3 0.2 0.1]

Example: 'green'

Example: '#D2F9A7'

Marker size, specified as a positive value in points, where 1 point = 1/72 of an inch.

## Output Arguments

collapse all

One or more objects, returned as a scalar or a vector. The object is either a function surface object or parameterized mesh object, depending on the type of plot. You can use these objects to query and modify properties of a specific line. For details, see FunctionSurface Properties and ParameterizedFunctionSurface Properties.

## Algorithms

fmesh assigns the symbolic variables in f to the x axis, then the y axis, and symvar determines the order of the variables to be assigned. Therefore, variable and axis names might not correspond. To force fmesh to assign x or y to its corresponding axis, create the symbolic function to plot, then pass the symbolic function to fmesh.

For example, the following code plots the mesh of f(x,y) = sin(y) in two ways. The first way forces the waves to oscillate with respect to the y axis. The second way assigns y to the x axis because it is the first (and only) variable in the symbolic function.

syms x y;
f(x,y) = sin(y);

figure;
subplot(2,1,1)
fmesh(f);
subplot(2,1,2)
fmesh(f(x,y)); % Or fmesh(sin(y));

### Topics

#### Mathematical Modeling with Symbolic Math Toolbox

Get examples and videos