fplot3
Plot 3-D parametric curve
Syntax
Description
fplot3(
plots xt = x(t), yt = y(t),
and zt = z(t)
over the interval tmin < t < tmax.xt
,yt
,zt
,[tmin
tmax]
)
fplot3(___,
specifies
line properties using one or more Name,Value
)Name,Value
pair
arguments. Use this option with any of the input argument combinations
in the previous syntaxes. Name,Value
pair settings
apply to all the lines plotted. To set options for individual lines,
use the objects returned by fplot3
.
fplot3(
plots
into the axes object ax
,___)ax
instead of the current
axes gca
.
returns
a parameterized function line object. Use the object to query and
modify properties of a specific parameterized line. For details, see ParameterizedFunctionLine Properties.fp
= fplot3(___)
Examples
Plot 3-D Parametric Line
Plot the 3-D parametric line
over the default parameter range [-5 5]
.
syms t
xt = sin(t);
yt = cos(t);
zt = t;
fplot3(xt,yt,zt)
Specify Parameter Range
Plot the parametric line
over the parameter range [-10 10]
by specifying the fourth argument of fplot3
.
syms t
xt = 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
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 t fplot3(sin(t), cos(t), t, [0 2*pi], 'LineWidth', 2) hold on fplot3(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
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
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 t subplot(2,1,1) fplot3([t -t], t, [t -t]) title('Multiple Lines Using Vector Inputs') subplot(2,1,2) fplot3(t, t, t) hold on fplot3(-t, t, -t) title('Multiple Lines Using Hold On Command') hold off
Modify 3-D Parametric Line After Creation
Plot the parametric line
Provide an output to make fplot
return the plot object.
syms t
xt = 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 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
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 t xt = 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 Animations
Create animations by changing the displayed expression using
the XFunction
, YFunction
, and ZFunction
properties
and then by using drawnow
to update the plot.
To export to GIF, see imwrite
.
By varying the variable i from 0 to 4π, animate the parametric curve
To play the animation, click the image.
syms t fp = fplot3(t+sin(40*t),-t+cos(40*t), sin(t)); for i=0:pi/10:4*pi fp.ZFunction = sin(t+i); drawnow end
Input Arguments
Output Arguments
Version History
Introduced in R2016a