Plot 3-D parametric curve
collapse all in page
Syntax
fplot3(xt,yt,zt)
fplot3(xt,yt,zt,[tmintmax])
fplot3(___,LineSpec)
fplot3(___,Name,Value)
fplot3(ax,___)
fp = fplot3(___)
Description
example
fplot3(xt,yt,zt)
plotsthe parametric curve xt = x(t), yt = y(t),and zt = z(t)over the default interval –5<t<5.
example
fplot3(xt,yt,zt,[tmintmax])
plots xt = x(t), yt = y(t),and zt = z(t)over the interval tmin < t < tmax.
example
fplot3(___,LineSpec)
uses LineSpec
toset the line style, marker symbol, and line color.
example
fplot3(___,Name,Value)
specifiesline properties using one or more Name,Value
pairarguments. Use this option with any of the input argument combinationsin the previous syntaxes. Name,Value
pair settingsapply to all the lines plotted. To set options for individual lines,use the objects returned by fplot3
.
fplot3(ax,___)
plotsinto the axes object ax
instead of the currentaxes gca
.
example
fp = fplot3(___)
returnsa parameterized function line object. Use the object to query andmodify properties of a specific parameterized line. For details, see ParameterizedFunctionLine Properties.
Examples
collapse all
Plot 3-D Parametric Line
Open Live Script
Plot the 3-D parametric line
over the default parameter range [-5 5]
.
syms txt = sin(t);yt = cos(t);zt = t;fplot3(xt,yt,zt)
Specify Parameter Range
Open Live Script
Plot the parametric line
over the parameter range [-10 10]
by specifying the fourth argument of fplot3
.
syms txt = exp(-t/10).*sin(5*t);yt = exp(-t/10).*cos(5*t);zt = t;fplot3(xt,yt,zt,[-10 10])
Change Line Properties and Display Markers
Open Live Script
Plot the same 3-D parametric curve three times over different intervals of the parameter. For the first curve, use a linewidth of 2
. For the second, specify a dashed red line style with circle markers. For the third, specify a cyan, dash-dot line style with asterisk markers.
syms tfplot3(sin(t), cos(t), t, [0 2*pi], 'LineWidth', 2)hold onfplot3(sin(t), cos(t), t, [2*pi 4*pi], '--or')fplot3(sin(t), cos(t), t, [4*pi 6*pi], '-.*c')
Plot 3-D Parametric Line Using Symbolic Functions
Open Live Script
Plot the 3-D parametric line
syms x(t) y(t) z(t)x(t) = sin(t);y(t) = cos(t);z(t) = cos(2*t);fplot3(x,y,z)
Plot Multiple Lines on Same Figure
Open Live Script
Plot multiple lines either by passing the inputs as a vector or by using hold on
to successively plot on the same figure. If you specify LineSpec
and Name-Value arguments, they apply to all lines. To set options for individual lines, use the function handles returned by fplot3
.
Divide a figure into two subplots using subplot
. On the first subplot, plot two parameterized lines using vector input. On the second subplot, plot the same lines using hold on
.
syms tsubplot(2,1,1)fplot3([t -t], t, [t -t])title('Multiple Lines Using Vector Inputs')subplot(2,1,2)fplot3(t, t, t)hold onfplot3(-t, t, -t)title('Multiple Lines Using Hold On Command')hold off
Modify 3-D Parametric Line After Creation
Open Live Script
Plot the parametric line
Provide an output to make fplot
return the plot object.
syms txt = exp(-abs(t)/10).*sin(5*abs(t));yt = exp(-abs(t)/10).*cos(5*abs(t));zt = t;fp = fplot3(xt,yt,zt)
fp = ParameterizedFunctionLine with properties: XFunction: exp(-abs(t)/10)*sin(5*abs(t)) YFunction: exp(-abs(t)/10)*cos(5*abs(t)) ZFunction: t Color: [0 0.4470 0.7410] LineStyle: '-' LineWidth: 0.5000 Use GET to show all properties
Change the range of parameter values to [-10 10]
and the line color to red by using the TRange
and Color
properties of fp
respectively.
fp.TRange = [-10 10];fp.Color = 'r';
Add Title and Axis Labels and Format Ticks
Open Live Script
For values in the range to , plot the parametric line
Add a title and axis labels. Create the x-axis ticks by spanning the x-axis limits at intervals of pi/2
. Display these ticks by using the XTick
property. Create x-axis labels by using arrayfun
to apply texlabel
to S
. Display these labels by using the XTickLabel
property. Repeat these steps for the y-axis.
To use LaTeX in plots, see latex.
syms txt = t;yt = t/2;zt = sin(6*t);fplot3(xt,yt,zt,[-2*pi 2*pi],'MeshDensity',30)view(52.5,30)xlabel('x')ylabel('y')title('x=t, y=t/2, z=sin(6t) for -2\pi < t < 2\pi')ax = gca;S = sym(ax.XLim(1):pi/2:ax.XLim(2));ax.XTick = double(S);ax.XTickLabel = arrayfun(@texlabel, S, 'UniformOutput', false);S = sym(ax.YLim(1):pi/2:ax.YLim(2));ax.YTick = double(S);ax.YTickLabel = arrayfun(@texlabel, S, 'UniformOutput', false);
Create Animation of Parametric Curve
Open Script
Create an animation by changing the displayed expression using the XFunction
, YFunction
, and ZFunction
properties, and then use drawnow
to update the plot. To export to GIF, see imwrite
.
By varying the variable from
to
, animate the parametric curve
syms tfp = fplot3(t+sin(40*t),-t+cos(40*t), sin(t));for i=0:pi/10:4*pi fp.ZFunction = sin(t+i); drawnowend
Input Arguments
collapse all
xt
— Parametric input for x-axis
symbolic expression | symbolic function
Parametric input for x-axis, specified as a symbolic expressionor function. fplot3
uses symvar
tofind the parameter.
yt
— Parametric input for y-axis
symbolic expression | symbolic function
Parametric input for y-axis, specified as a symbolic expressionor function. fplot3
uses symvar
tofind the parameter.
zt
— Parametric input for z-axis
symbolic expression | symbolic function
Parametric input for z-axis, specified as a symbolic expressionor function. fplot3
uses symvar
tofind the parameter.
[tmin tmax]
— Range of values of parameter
[–5 5] (default) | vector of two numbers
Range of values of parameter, specified as a vector of two numbers.The default range is [-5 5]
.
ax
— Axes object
axes object
Axes object. If you do not specify an axes object, then fplot3
usesthe current axes.
LineSpec
— Line style, marker, and color
string scalar | character vector
Line style, marker, and color, specified as a string scalar or character vector containing symbols. The symbols can appear in any order. You do not need to specify all three characteristics (line style, marker, and color). For example, if you omit the line style and specify the marker, then the plot shows only the marker and no line.
Example: "--or"
is a red dashed line with circle markers.
Line Style | Description | Resulting Line |
---|---|---|
"-" | Solid line | |
"--" | Dashed line | |
":" | Dotted line | |
"-." | Dash-dotted line |
Marker | Description | Resulting Marker |
---|---|---|
"o" | Circle | |
"+" | Plus sign | |
"*" | Asterisk | |
"." | Point | |
"x" | Cross | |
"_" | Horizontal line | |
"|" | Vertical line | |
"square" | Square | |
"diamond" | Diamond | |
"^" | Upward-pointing triangle | |
"v" | Downward-pointing triangle | |
">" | Right-pointing triangle | |
"<" | Left-pointing triangle | |
"pentagram" | Pentagram | |
"hexagram" | Hexagram |
Color Name | Short Name | RGB Triplet | Appearance |
---|---|---|---|
"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] | |
Name-Value Arguments
Specify optional pairs of arguments as Name1=Value1,...,NameN=ValueN
, where Name
is the argument name and Value
is the corresponding value. Name-value arguments must appear after other arguments, but the order of the pairs does not matter.
Before R2021a, use commas to separate each name and value, and enclose Name
in quotes.
Example: 'Marker','o','MarkerFaceColor','red'
The properties listed here are only a subset. For a completelist, see ParameterizedFunctionLine Properties.
Output Arguments
collapse all
fp
— One or more parameterized function line objects
scalar | vector
One or more parameterized line objects, returned as a scalaror a vector. You can use these objects to query and modify propertiesof a specific parameterized line. For details, see ParameterizedFunctionLine Properties.
Version History
Introduced in R2016a
See Also
Functions
- fcontour | fimplicit | fimplicit3 | fmesh | fplot | fpolarplot | fsurf
Properties
- ParameterizedFunctionLine Properties
Topics
- Create Plots of Symbolic Expressions
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
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:
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
- Deutsch
- English
- Français
- United Kingdom (English)
Contact your local office