# bspline

Plot B-spline and its polynomial pieces

## Description

`bspline(`

plots the B-spline with
knot sequence `t`

)`t`

, as well as the polynomial pieces of which it
is composed. For more information about spline fitting, see About Splines in Curve Fitting
Toolbox.

## Examples

### Plot a B-spline of Order 4

This example shows how to create a B-spline of order 4 using the `bspline`

function.

**Create a Knot Sequence and Plot the B-spline**

This figure shows a B-spline of order 4 and the four cubic polynomials that composes it.

To replicate this figure in MATLAB ®, first create a knot sequence. A knot sequence must be non-decreasing.

t = [0 1.5 2.3 4 5];

As you have defined five knots, the B-spline will be of order 4.

Then plot the B-spline with knot sequence `t`

, as well as its polynomial pieces, by using the `bspline`

function.

bspline(t)

This B-spline consists of 4 polynomial pieces: the red, green, purple, and black curves in the plot, each of degree 3.

The vertical lines mark the knots `t`

that you have previously defined.

The B-spline with knots t(*i*)≤····≤ t(*i*+*k*) is positive on the interval (t(*i*)..t(*i*+*k*)) and is zero outside that interval. It is piecewise-polynomial of order `k`

with breaks at the sites t(*i*),...,t(*i*+*k*). These knots may coincide, and the precise *multiplicity* governs the smoothness with which the two polynomial pieces join there.

**Plot Another B-spline in a New Subplot**

Create a second knot sequence.

t2=[2 3 4 5];

Plot the B-spline with knot sequence `t2`

in the same figure but in a different subplot.

bspline(t,1) bspline(t2 ,2)

*Copyright 2019 The MathWorks, Inc. *

## Input Arguments

`t`

— Knot sequence of spline

vector (default)

Non-decreasing sequence of the knots of the B-spline, specified as a vector.

**Data Types: **`single`

| `double`

`window`

— Subplot window

scalar (default)

Index of the subplot of a 2x2 window, specified as a scalar. This value must be less than 5.

**Data Types: **`single`

| `double`

## Output Arguments

`pp`

— Spline in ppform

spline structure

Spline in ppform, returned as a structure with these fields. For more information on ppform, see The ppform

`Form`

— Form of spline

`pp`

Form of the spline, returned as `pp`

.
`pp`

indicates that the spline is given
in piecewise polynomial form.

`Breaks`

— Knot locations of spline

vector | cell array

Knot positions of the spline, returned as a vector or as a cell array of vectors for multivariate data. Vectors contain strictly increasing elements that represent the start and end of each of the intervals over which the polynomial pieces are defined.

`Coefs`

— Coefficients of polynomials

matrix | array

Coefficients of polynomials for each piece, returned as a matrix or as an array for multivariate data.

`Pieces`

— Number of polynomial pieces

scalar | vector

Number of polynomial pieces describing the spline, returned as a scalar or as a vector of numbers of pieces in each variable for multivariate data.

`Order`

— Order of polynomials

scalar | vector

Order of the polynomial function describing each polynomial piece of the spline, returned as a scalar or as a vector containing the order in each variable for multivariate data.

`Dim`

— Dimensionality

scalar

Dimensionality of the target function, returned as a scalar.

## Version History

**Introduced in R2006b**

## Open Example

You have a modified version of this example. Do you want to open this example with your edits?

## MATLAB Command

You clicked a link that corresponds to this MATLAB command:

Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.

Select a Web Site

Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .

You can also select a web site from the following list:

## How to Get Best Site Performance

Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.

### Americas

- América Latina (Español)
- Canada (English)
- United States (English)

### Europe

- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)

- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)