#### Previous topic

scipy.integrate.IntegrationWarning

#### Next topic

scipy.integrate.cumtrapz

# scipy.integrate.trapz

`scipy.integrate.``trapz`(y, x=None, dx=1.0, axis=-1)

  Integrate along the given axis using the composite trapezoidal rule.

  Integrate y (x) along given axis.

  Parameters:

  y : array_like

  > Input array to integrate.

  x : array_like, optional

  > The sample points corresponding to the y values. If x is None, the sample points are assumed to be evenly spaced dx apart. The default is None.

  dx : scalar, optional

  > The spacing between sample points when x is None. The default is 1.

  axis : int, optional

  > The axis along which to integrate.

  Returns:

  trapz : float

  > Definite integral as approximated by trapezoidal rule.

  See also

  `sum`, `cumsum`

  Notes

  Image [R51] illustrates trapezoidal rule – y-axis locations of points will be taken from y array, by default x-axis distances between points will be 1.0, alternatively they can be provided with x array or with dx scalar. Return value will be equal to combined area under the red lines.

  References

  [R50] | Wikipedia page: http://en.wikipedia.org/wiki/Trapezoidal_rule

  [R51] | (1, 2) Illustration image: http://en.wikipedia.org/wiki/File:Composite_trapezoidal_rule_illustration.png

  Examples

      >>> np.trapz([1,2,3])
      4.0
      >>> np.trapz([1,2,3], x=[4,6,8])
      8.0
      >>> np.trapz([1,2,3], dx=2)
      8.0
      >>> a = np.arange(6).reshape(2, 3)
      >>> a
      array([[0, 1, 2],
             [3, 4, 5]])
      >>> np.trapz(a, axis=0)
      array([ 1.5,  2.5,  3.5])
      >>> np.trapz(a, axis=1)
      array([ 2.,  8.])