To find the inverse cosine, a solution is to use either math's acos() or numpy's arccos(). Examples:

Table of contents

## Using Math acos()

To calculate inverse cosine in python, first use the "math" module to find the inverse cosine of a given angle. The syntax for this is

`import math`

`math.acos(x)`

This takes as its argument a number between -1 and 1 and returns the arc-cosine of that number in radians. For example, if you wanted to calculate the inverse cosine of root suqre of 3 divided by 2, your code would look like this:

Example 1:

`import math`

`x = math.sqrt(3) / 2`

`y = math.acos(x)`

`print(y)`

The above code will print out

`0.5235987755982989`

which is the arc-cosine expressed in radians. You can also convert this result into degrees by multiplying it by 180/math.pi. Alternatively, you can use the math module's "degrees" function, which directly converts radians into degrees:

`math.degrees(y)`

This will print out

`30.000000000000004`

degrees

Example 2:

`x = math.sqrt(2) / 2`

`y = math.acos(x)`

`print( math.degrees(y) )`

Output

`45.0`

Example 3:

`x = 1.0 / 2`

`y = math.acos(x)`

`print( math.degrees(y) )`

Output

`59.99999999999999`

It is important to note that if the input number is outside of the range -1 and 1, then an error will be raised since it cannot be calculated with this function.

## Using Numpy arccos()

Numpy's arccos() function enables to calculate the inverse cosine of a given number within [-1, 1].

The syntax for Numpy’s arccos() function is as follows:

`import numpy as np`

`np.arccos(x)`

An example of using the arccos() function can be seen below:

`x = 1.0 / 2`

`y = np.arccos(x)`

`print( math.degrees(y) )`

The above code will print out

`59.99999999999999`

## Plot inverse cosine using matplotlib

If you wish to plot the inverse cosine graphically, then you can use the matplotlib library within python.

`import matplotlib.pyplot as plt`

`import numpy as np`

`X = np.linspace(-1,1,100)`

`Y = np.arccos(X)`

`plt.plot(X,Y)`

`plt.grid()`

`plt.title('How to calculate and plot the inverse cosine in python ?')`

`plt.savefig("inverse_cosine_01.png", bbox_inches='tight',dpi=200, facecolor='white')`

`plt.show()`

Another example

`from pylab import *`

`from scipy import misc`

`ax = subplot(111)`

`plt.plot(X,Y)`

`grid(True)`

`ax.spines['left'].set_position('zero')`

`ax.spines['right'].set_color('none')`

`ax.spines['bottom'].set_position('zero')`

`ax.spines['top'].set_color('none')`

`y_label_list = [r'$\pi/4$', r'$\pi/2$', r'$3\pi/4$', r'$\pi$']`

`ax.set_yticks([math.pi/4,math.pi/2,3*math.pi/4,math.pi])`

`ax.set_yticklabels(y_label_list)`

`title('How to calculate and plot the inverse cosine in python ?')`

`savefig("inverse_cosine_02.png", bbox_inches='tight',dpi=200, facecolor='white')`

`show()`

## References

Links | Site |
---|---|

math | docs.python.org |

numpy.arccos | numpy.org |

numpy.radians() | numpy.org |

How to calculate the cosine of an angle in python ? | moonbooks.org |