#### Previous topic

numpy.ediff1d

#### Next topic

numpy.cross

# numpy.gradient

`numpy.``gradient`(f, *varargs)

  Return the gradient of an N-dimensional array.

  The gradient is computed using central differences in the interior and first differences at the boundaries. The returned gradient hence has the same shape as the input array.

  Parameters : | f : array_like An N-dimensional array containing samples of a scalar function. `*varargs` : scalars 0, 1, or N scalars specifying the sample distances in each direction, that is: dx, dy, dz, ... The default distance is 1.
  Returns : | gradient : ndarray N arrays of the same shape as f giving the derivative of f with respect to each dimension.

  Examples

      >>> x = np.array([1, 2, 4, 7, 11, 16], dtype=np.float)
      >>> np.gradient(x)
      array([ 1. ,  1.5,  2.5,  3.5,  4.5,  5. ])
      >>> np.gradient(x, 2)
      array([ 0.5 ,  0.75,  1.25,  1.75,  2.25,  2.5 ])

      >>> np.gradient(np.array([[1, 2, 6], [3, 4, 5]], dtype=np.float))
      [array([[ 2.,  2., -1.],
             [ 2.,  2., -1.]]),
      array([[ 1. ,  2.5,  4. ],
             [ 1. ,  1. ,  1. ]])]