Generate linearly spaced vector




y = linspace(x1,x2) returns a row vector of 100 evenly spaced points between x1 and x2.


y = linspace(x1,x2,n) generates n points. The spacing between the points is (x2-x1)/(n-1).

linspace is similar to the colon operator, ":", but gives direct control over the number of points and always includes the endpoints. "lin" in the name "linspace" refers to generating linearly spaced values as opposed to the sibling function logspace, which generates logarithmically spaced values.


collapse all

Vector of Evenly Spaced Numbers

Create a vector of 100 evenly spaced points in the interval [-5,5].

y = linspace(-5,5);

Vector with Specified Number of Values

Create a vector of 7 evenly spaced points in the interval [-5,5].

y1 = linspace(-5,5,7)
y1 =

   -5.0000   -3.3333   -1.6667         0    1.6667    3.3333    5.0000

Vector of Evenly Spaced Complex Numbers

Create a vector of complex numbers with 8 evenly spaced points between 1+2i and 10+10i.

y = linspace(1+2i,10+10i,8)
y =

  Columns 1 through 5

   1.0000 + 2.0000i   2.2857 + 3.1429i   3.5714 + 4.2857i   4.8571 + 5.4286i   6.1429 + 6.5714i

  Columns 6 through 8

   7.4286 + 7.7143i   8.7143 + 8.8571i  10.0000 +10.0000i

Input Arguments

collapse all

x1,x2 — Point intervalpair of numeric scalars

Point interval, specified as a pair of numeric scalars. x1 and x2 define the interval over which linspace generates points. x1 and x2 can be real or complex, and x2 can be either larger or smaller than x1. If x2 is smaller than x1, then the vector contains descending values.

Data Types: single | double | datetime | duration
Complex Number Support: Yes

n — Number of points100 (default) | real numeric scalar

Number of points, specified as a real numeric scalar.

  • If n is 1, linspace returns x2.

  • If n is zero or negative, linspace returns an empty 1-by-0 matrix.

  • If n is not an integer, linspace rounds down and returns floor(n) points.

See Also


Introduced before R2006a

Was this topic helpful?