3D Stem Plots in MATLAB®
How to make 3D Stem Plots in MATLAB® with Plotly.
Row Vector Input
Create a 3-D stem plot of cosine values between -π/2 and π/2 with a row vector input.
figure
X = linspace(-pi/2,pi/2,40);
Z = cos(X);
stem3(Z)
fig2plotly(gcf);
stem3
plots elements of Z
against the same y value at equally space x values.
Column Vector Input
Create a 3-D stem plot of cosine values between -π/2 and π/2 with a column vector input.
figure
X = linspace(-pi/2,pi/2,40)';
Z = cos(X);
stem3(Z)
fig2plotly(gcf);
stem3
plots elements of Z
against the same x value at equally space y values.
Matrix Input
Create a 3-D stem plot of sine and cosine values between -π/2 and π/2 with a matrix input.
figure
X = linspace(-pi/2,pi/2,40);
Z = [sin(X); cos(X)];
stem3(Z)
fig2plotly(gcf);
stem3
plots each row of Z
against the same y value at equally space x values.
Specify Stem Locations with Vector Inputs
Create a 3-D stem plot and specify the stem locations along a curve. Use view
to adjust the angle of the axes in the figure.
figure
X = linspace(-5,5,60);
Y = cos(X);
Z = X.^2;
stem3(X,Y,Z)
view(-8,30)
fig2plotly(gcf);
X
and Y
determine the stem locations. Z
determines the marker heights.
Specify Stem Locations with Matrix Inputs
Create a 3-D stem plot with matrix data and specify the stem locations in the xy-plane.
figure
[X,Y] = meshgrid(0:.1:1);
Z = exp(X+Y);
stem3(X,Y,Z)
fig2plotly(gcf);
X
and Y
determine the stem locations. Z
determines the marker heights.
Fill in Markers
Create a 3-D stem plot of cosine values between -π and π and fill in the markers.
X = linspace(-pi,pi,40);
Z = cos(X);
stem3(Z,'filled')
fig2plotly(gcf);
Line Style, Marker Symbol, and Color Options
Create a 3-D stem plot of cosine values between -π and π. Use a dashed line style for the stem, set the marker symbols to stars, and set the color to magenta.
figure
X = linspace(-pi,pi,40);
Z = cos(X);
stem3(Z,'--*m')
fig2plotly(gcf);
To specify only two of the three LineSpec
options, omit the third option from the character vector. For example, '*m'
sets the marker symbol and the color and uses the default line style.
Create a 3-D stem plot and specify the stem locations along a circle. Set the stem to a dotted line style, the marker symbols to stars, and the color to magenta.
figure
theta = linspace(0,2*pi);
X = cos(theta);
Y = sin(theta);
Z = theta;
stem3(X,Y,Z,':*m')
fig2plotly(gcf);
X
and Y
determine the stem locations. Z
determines the marker heights.
Additional Style Options
Create a 3-D stem plot of cosine values between -π and π. Set the marker symbols to squares with green faces and magenta edges.
figure
X = linspace(-pi,pi,40);
Z = cos(X);
stem3(Z,'Marker','s',...
'MarkerEdgeColor','m',...
'MarkerFaceColor','g')
fig2plotly(gcf);
Stem Plot in Specific Axes
Starting in R2019b, you can display a tiling of plots using the tiledlayout
and nexttile
functions. Call the tiledlayout
function to create a 2-by-1 tiled chart layout. Call the nexttile
function to create the axes objects ax1
and ax2
. Create separate stem plots in the axes by specifying the axes object as the first argument to stem3
.
X = linspace(-2,2,50);
Y = X.^3;
Z = exp(X);
tiledlayout(2,1)
% Top plot
ax1 = nexttile;
stem(ax1,X,Z)
% Bottom plot
ax2 = nexttile;
stem3(ax2,X,Y,Z)
fig2plotly(gcf);
Modify Stem Series After Creation
Create a 3-D stem plot and return the stem series object.
X = linspace(0,2);
Y = X.^3;
Z = exp(X).*cos(Y);
h = stem3(X,Y,Z,'filled');
fig2plotly(gcf);
Change the color to magenta and set the marker face color to yellow. Use view
to adjust the angle of the axes in the figure. Use dot notation to set properties.
X = linspace(0,2);
Y = X.^3;
Z = exp(X).*cos(Y);
h = stem3(X,Y,Z,'filled');
h.Color = 'm';
h.MarkerFaceColor = 'y';
view(-10,35)
fig2plotly(gcf);