How to Use linspace in MATLAB: Syntax and Examples
In MATLAB, use
linspace(start, end, n) to create a vector of n linearly spaced points between start and end. This function is useful for generating evenly spaced values over an interval.Syntax
The basic syntax of linspace is:
linspace(start, end): Creates 100 points betweenstartandendby default.linspace(start, end, n): Createsnpoints betweenstartandend.
Here, start is the first value, end is the last value, and n is the number of points you want.
matlab
y = linspace(1, 10, 5)
Output
y =
1.0000 3.2500 5.5000 7.7500 10.0000
Example
This example creates 7 points evenly spaced between 0 and 3. It shows how linspace generates values including the start and end points.
matlab
x = linspace(0, 3, 7) disp(x)
Output
x =
0 0.5000 1.0000 1.5000 2.0000 2.5000 3.0000
Common Pitfalls
Common mistakes include:
- Forgetting to specify the number of points, which defaults to 100 and may be more than needed.
- Using
linspacewhen:operator is better for integer steps. - Expecting
linspaceto exclude the end value; it always includes it.
Example of a wrong and right way:
matlab
% Wrong: expecting 5 points but only 3 are created x_wrong = linspace(1, 5, 3) % Right: specify correct number of points x_right = linspace(1, 5, 5)
Output
x_wrong =
1 3 5
x_right =
1 2 3 4 5
Quick Reference
| Usage | Description |
|---|---|
| linspace(a, b) | 100 points between a and b (default) |
| linspace(a, b, n) | n points between a and b |
| Includes start and end | Always includes both a and b |
| Use for floats | Best for non-integer evenly spaced values |
| Not for step size | Does not specify step size, only number of points |
Key Takeaways
Use linspace(start, end, n) to create n evenly spaced points between start and end.
linspace always includes the start and end values in the output vector.
If you omit n, linspace defaults to 100 points.
For integer steps, the colon operator (start:step:end) may be simpler.
Avoid assuming linspace controls step size; it controls number of points.