# atan2() function in Python

atan2(y, x) returns value of atan(y/x) in radians. The atan2() method returns a numeric value between – and representing the angle of a (x, y) point and positive x-axis.

Syntax :

atan2(y, x)

Parameter :

(y, x) - Both must be a numeric value.

Returns :

Returns atan(y / x), in radians.
The double value is from polar coordinate (r, theta). 

TypeError :

Returns a TypeError if anything other than float is passed.

Code #1 :

 # Python3 program to demonstrate  # the atan2() method      # imports math   import math     # prints the theta value of  # two negative co-ordinates   theta1 = math.atan2(-0.9, -0.9)   print("atan2(-0.9, -0.9) : ", theta1)      # prints the theta value of  # two positive co-ordinates   theta2 = math.atan2(1.2, 1.5)   print("atan2(1.2, 1.5) : ", theta2)      # prints the theta value of one  # positive and one negative co-ordinates   theta3 = math.atan2(1.2, -1.5)   print("atan2(1.2, -1.5):", theta3)

Output :

atan2(-0.5, -0.5): -2.356194490192345
atan2(1.2, 1.5): 0.6747409422235526
atan2(1.2, -1.5): 2.4668517113662407


Code #2 :

 # Python3 program to demonstrate the atan() method      # imports math   import math     # list containing x and y coordinates   y = [1, 2, 3, 4]   x = [6, 3, 7, 8]      # traversing in range to get theta   # for all y and x co-ordinates   for i in range(len(x)):      theta = math.atan2(y[i], x[i])       print(theta)

Output :

0.16514867741462683
0.5880026035475675
0.40489178628508343
0.4636476090008061


Code #3 : Program demonstrating the error

 # Python3 program to demonstrate the    # TypeError in atan() method      # importing math   import math     y, x = 3, 6    # when integer values are passed   # it returns a TypeError  theta = math.atan2([y], [x])   print(theta)

Output :

Traceback (most recent call last):
File "/home/622586ab389561bcdbfff258aca01e65.py", line 9, in
theta = math.atan2([y],[x])
TypeError: a float is required


Practical Application :
This function is used to find the slope in radians when Y and X co-ordinates are given.

Code #4 :

 # Let's find the slope when X  # and Y co-ordinates are given      # imports math   import math     # X and Y are co-ordinates  X = 2; Y = 2     # slope in radians   theta1 = math.atan2(Y, X)      # print the Slope in radians  print(theta1)

Output :

0.7853981633974483


My Personal Notes arrow_drop_up Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.

Article Tags :

Be the First to upvote.

Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.