Code360 powered by Coding Ninjas X Naukri.com. Code360 powered by Coding Ninjas X Naukri.com
1.
Introduction
2.
3.
Syntax of numpy.gradient() Method
4.
Parameters
5.
Return Type
6.
Example
6.1.
Find the gradient of a single array.
6.2.
Code
6.3.
Python
6.3.1.
Output
6.4.
Explanation
6.5.
Find the gradient of an N-dimensional array.
6.6.
Code
6.7.
Python
6.7.1.
Output
6.8.
Explanation
6.9.
Uniform Spacing using Fixed Values
6.10.
Code
6.11.
Python
6.11.1.
Output
6.12.
Explanation
7.
7.1.
What is the purpose of using the numpy.gradient() method?
7.2.
How do multi-dimensional arrays get handled by the numpy.gradient() function?
7.3.
What does edge_order in numpy.gradient() mean?
7.4.
8.
Conclusion
Last Updated: Mar 27, 2024
Easy

numpy.gradient() Method in Numpy

Vidhi Sareen
0 upvote
Basics of Python
Free guided path
7 chapters
99+ problems
Earn badges and level up

Introduction

Have you ever wondered how computers calculate the rate of change within arrays of data? Whether you are into scientific analysis, data manipulation, or numerical calculations, understanding the complexities of such operations is essential. It is where the numpy.gradient() method comes into play.

The NumPy gradient() function determines how things change using differences between numbers. It's like figuring out the fastest way to go through a lot of information quickly.

Picture yourself wearing a blindfold while you're in a jogging park. All you are aware of is the height and distance traveled. You need to figure out the most intelligent path based on those clues to finish the lap in the least time. It is similar to how the NumPy gradient() function performs.

Get the tech career you deserve, faster!
Connect with our expert counsellors to understand how to hack your way to success
User rating 4.7/5
1:1 doubt support
95% placement record
Akash Pal
Senior Software Engineer
326% Hike After Job Bootcamp
Himanshu Gusain
Programmer Analyst
32 LPA After Job Bootcamp
After Job
Bootcamp

Syntax of numpy.gradient() Method

``numpy.gradient(array, axis=None, edge_order=1)``

Parameters

The parameters that are involved in numpy.gradient() method are:

• Array: This is the list of numbers you want to encounter the gradient for. It is mandatory to use it.

• Axis: You can choose a direction to calculate the gradient. It is an optional parameter.

• edge_order: It is an optional parameter that affects how the gradient is calculated at the ends of the list.

Return Type

It returns an â€˜n-dimensionalâ€™ array. Arrays showing how a main array changes in each direction. These new arrays have the exact shapes of those parts and tell you how those parts change.

Example

Here are some examples to understand the working of the numpy.gradient() method.

Find the gradient of a single array.

In this case, we will operate the numpy.gradient() method to calculate the gradient of a single array.

• Python

Python

``# Create an arraycn_array = np.array([1, 2, 7, 11, 17])# Calculate the gradientcn_gradient = np.gradient(cn_array)# Print the original arrayprint("Original Array:", cn_array)# Print the gradient arrayprint("Gradient Array:", cn_gradient)``

Explanation

We build an array named 'cn_array' having values [1, 2, 7, 11, 17]. Using the â€˜np. gradient()â€™ function, we calculate the rate of change between consecutive elements to estimate the gradient of this array. The code prints the original and computed gradient array to the console.

Find the gradient of an N-dimensional array.

In this case, we'll use a numpy.gradient() method to determine how fast values vary across various directions in a multi-dimensional data set.

• Python

Python

``cn_arr_3d = np.array([[[1, 2, 3],                                     [4, 5, 6]],                                    [[7, 8, 9],                                     [10, 11, 12]]])cn_grad_x, cn_grad_y, cn_grad_z = np.gradient(cn_arr_3d)#Print the arraysprint("Gradient along X-axis:")print(cn_grad_x)print("\nGradient along Y-axis:")print(cn_grad_y)print("\nGradient along Z-axis:")print(cn_grad_z)``

Explanation

This code uses the NumPy library to create a 3D array called 'cn_arr_3d'. After that, it figures out and keeps track of how the values change in the array separately along the horizontal, vertical, and depth directions. It stores these changes in 'cn_grad_x,' 'cn_grad_y,' and 'cn_grad_z.' Finally, it prints these gradients to show how the values change in each direction.

Uniform Spacing using Fixed Values

In this case, we'll use a numpy.gradient() method to determine how fast values vary across various directions in a multi-dimensional data set.

• Python

Python

``# Create arraycn_arr = np.array([1, 4, 7, 10, 13])# Set Uniform Spacing of 2cn_spacing = 2cn_grad = np.gradient(cn_arr, cn_spacing)# Print arrayprint("Original Array:")print(cn_arr)print("\nGradient with uniform spacing:")print(cn_grad)``

Explanation

This code follows the following steps:

• First, construct a list having some values.
• Then, it shows that the gap between these numbers is always 2.
• Next, it calculates using the "numpy.gradient()" method, showing how these numbers change.

Finally, it shows us the original list of numbers and the calculated changes between them. It helps us see how the numbers change by 2 points each time.

What is the purpose of using the numpy.gradient() method?

By calculating how values vary quickly across different positions in an array, we may better understand trends and variations by utilizing the numpy.gradient() technique.

How do multi-dimensional arrays get handled by the numpy.gradient() function?

Arrays of any size or form can be used using the numpy.gradient() function. The gradient is independently computed along each specified axis when utilizing multi-dimensional arrays. For each axis you supply, we will receive several gradient arrays.

What does edge_order in numpy.gradient() mean?

The edge_order parameter specifies the accuracy of the border computations. It displays the sequential usage of the finite difference method along the array's edges.

The NumPy library contains a function called numpy.gradient that determines an array's values along particular axes. Calculating the distinction between nearby values in the array approximates the derivative. It is helpful when calculating the rate of change of a dataset in various dimensions.

Conclusion

In this article, we learn about the numpy.gradient() method. We also discussed the syntax, parameters involved, and what will be the return value of numpy.gradient() method. The syntax involved three important parameters like array, axis, and edge_order. Among this array is a mandatory parameter and while others are optional. If you don't pass, the mandatory parameter will result in an error. We further discuss the numpy.gradient() method working through different examples.