📖 Scenario: You are working on a simple 3D visualization for a small engineering project. You want to draw a line in 3D space to represent a wire connecting two points.
🎯 Goal: Build a MATLAB script that uses plot3 to draw a 3D line between two points with given coordinates.
📋 What You'll Learn
Create vectors for the x, y, and z coordinates of the two points
Create a variable for line color
Use plot3 to draw the 3D line connecting the points
Display the plot with axis labels
💡 Why This Matters
🌍 Real World
3D line plots are useful in engineering and science to visualize paths, trajectories, or connections in space.
💼 Career
Knowing how to plot 3D data helps in fields like mechanical engineering, robotics, and data visualization.
Progress0 / 4 steps
1
DATA SETUP: Define the coordinates of two points
Create three vectors called x, y, and z each containing exactly two values: x = [1 4], y = [2 5], and z = [3 6].
MATLAB
Hint
Use square brackets to create vectors in MATLAB, for example: x = [1 4];
2
CONFIGURATION: Define the line color
Create a variable called lineColor and set it to the string 'r' to represent a red line.
MATLAB
Hint
Use single quotes to define a character vector for color in MATLAB, like 'r' for red.
3
CORE LOGIC: Plot the 3D line using plot3
Use plot3 with the vectors x, y, and z and the color variable lineColor to draw the 3D line.
MATLAB
Hint
Use plot3(x, y, z, lineColor) to plot a 3D line with the specified color.
4
OUTPUT: Add axis labels and display the plot
Add labels to the x, y, and z axes using xlabel, ylabel, and zlabel with the texts 'X-axis', 'Y-axis', and 'Z-axis' respectively. Then run the script to display the plot.
MATLAB
Hint
Use xlabel('X-axis'), ylabel('Y-axis'), and zlabel('Z-axis') to label the axes.
Practice
(1/5)
1. What does the MATLAB function plot3(X, Y, Z) do?
easy
A. Plots a 3D line or points using vectors X, Y, and Z as coordinates.
B. Creates a 2D plot using X and Y only.
C. Generates a histogram of the data in X, Y, and Z.
D. Plots a pie chart based on the values in X, Y, and Z.
Solution
Step 1: Understand the function purpose
plot3 is designed to plot lines or points in three-dimensional space using three vectors: X, Y, and Z.
Step 2: Compare options with function behavior
Only Plots a 3D line or points using vectors X, Y, and Z as coordinates. correctly describes plotting in 3D using X, Y, and Z coordinates. Other options describe 2D plots or unrelated chart types.
Final Answer:
Plots a 3D line or points using vectors X, Y, and Z as coordinates. -> Option A
Quick Check:
plot3 = 3D line plot [OK]
Hint: Remember plot3 needs three coordinate vectors X, Y, Z [OK]
Common Mistakes:
Thinking plot3 creates 2D plots
Confusing plot3 with histogram or pie chart functions
Using only two vectors instead of three
2. Which of the following is the correct syntax to plot a red dashed 3D line using plot3?
easy
A. plot3(X, Y, Z, 'rd')
B. plot3(X, Y, Z, 'r--')
C. plot3(X, Y, Z, color='red', linestyle='dashed')
D. plot3(X, Y, Z, 'red-dash')
Solution
Step 1: Recall MATLAB LineSpec format
MATLAB uses short codes like 'r' for red and '--' for dashed lines combined as 'r--' in plot3.
Step 2: Evaluate each option
plot3(X, Y, Z, 'r--') uses correct LineSpec syntax. plot3(X, Y, Z, 'red-dash') uses invalid string. plot3(X, Y, Z, color='red', linestyle='dashed') uses Python-like syntax, invalid in MATLAB. plot3(X, Y, Z, 'rd') 'rd' means red diamond marker, not dashed line.
Final Answer:
plot3(X, Y, Z, 'r--') -> Option B
Quick Check:
LineSpec 'r--' = red dashed line [OK]
Hint: Use 'r--' for red dashed line in plot3 [OK]
Common Mistakes:
Using full words like 'red' or 'dashed' instead of codes
Confusing marker codes with line style codes
Trying Python-style named arguments
3. What will be the output of the following MATLAB code?
X = 1:3; Y = [2 4 6]; Z = [3 6 9]; plot3(X, Y, Z, 'g-o'); grid on; xlabel('X-axis'); ylabel('Y-axis'); zlabel('Z-axis');
medium
A. An error because vectors X, Y, Z have different lengths.
B. A 2D green line plot with circle markers on X and Y only.
C. A 3D scatter plot without lines connecting points.
D. A green 3D line with circle markers connecting points (1,2,3), (2,4,6), (3,6,9) with grid and axis labels.
Solution
Step 1: Analyze vectors and plot3 call
X, Y, Z are vectors of equal length 3. plot3 with 'g-o' plots green lines with circle markers connecting points in 3D.
Step 2: Understand grid and labels
grid on adds grid lines. xlabel, ylabel, and zlabel add axis labels. So the plot is a labeled 3D line with markers and grid.
Final Answer:
A green 3D line with circle markers connecting points (1,2,3), (2,4,6), (3,6,9) with grid and axis labels. -> Option D
Quick Check:
plot3 with equal vectors and 'g-o' = green line with circles [OK]
Hint: Equal length vectors plot connected 3D lines with markers [OK]
Common Mistakes:
Assuming 2D plot instead of 3D
Thinking different vector lengths cause error here
Confusing scatter plot with plot3 line plot
4. Identify the error in this MATLAB code snippet:
X = 1:4; Y = [2 3 4]; Z = [5 6 7 8]; plot3(X, Y, Z);
medium
A. Vectors X, Y, and Z must have the same length to plot3.
B. plot3 requires the vectors to be row vectors only.
C. The plot3 function cannot plot more than 3 points.
D. Missing line style argument causes syntax error.
Solution
Step 1: Check vector lengths
X has length 4, Y has length 3, Z has length 4. plot3 requires all three vectors to have the same length.
Step 2: Understand consequences of length mismatch
Because Y is shorter, MATLAB will throw an error about vector size mismatch when calling plot3.
Final Answer:
Vectors X, Y, and Z must have the same length to plot3. -> Option A
Quick Check:
Equal vector lengths required for plot3 [OK]
Hint: Check all coordinate vectors have same length before plot3 [OK]
Common Mistakes:
Assuming plot3 accepts different length vectors
Thinking row vs column vector matters here
Believing line style argument is mandatory
5. You want to plot two 3D lines on the same figure: one blue solid line and one red dashed line. Which code correctly does this?
hard
A. plot3(X1, Y1, Z1, 'b-'); hold off; plot3(X2, Y2, Z2, 'r--');
B. plot3(X1, Y1, Z1, 'b-'); plot3(X2, Y2, Z2, 'r--');
C. plot3(X1, Y1, Z1, 'b-'); hold on; plot3(X2, Y2, Z2, 'r--'); hold off;
D. plot3(X1, Y1, Z1, 'b-'); hold on; plot3(X2, Y2, Z2, 'r--'); hold on;
Solution
Step 1: Understand hold on/off usage
To plot multiple lines on the same figure, hold on keeps the current plot so new plots add to it. hold off releases it.
Step 2: Analyze each option's hold usage
plot3(X1, Y1, Z1, 'b-'); hold on; plot3(X2, Y2, Z2, 'r--'); hold off; correctly uses hold on before second plot and hold off after to finish. plot3(X1, Y1, Z1, 'b-'); plot3(X2, Y2, Z2, 'r--'); misses hold so second plot overwrites first. plot3(X1, Y1, Z1, 'b-'); hold off; plot3(X2, Y2, Z2, 'r--'); calls hold off too early. plot3(X1, Y1, Z1, 'b-'); hold on; plot3(X2, Y2, Z2, 'r--'); hold on; calls hold on twice unnecessarily.
Final Answer:
plot3(X1, Y1, Z1, 'b-'); hold on; plot3(X2, Y2, Z2, 'r--'); hold off; -> Option C
Quick Check:
Use hold on/off to plot multiple lines [OK]
Hint: Use hold on before second plot, hold off after [OK]
Common Mistakes:
Not using hold on causes plots to overwrite
Calling hold off too early removes previous plots
Calling hold on multiple times unnecessarily
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.