欢迎来到NumPy 三角函数系列的第三篇教程。在本教程中,我们将了解 NumPy Tan 函数。Tan是切线的简称。
- 当给定的输入是 pi/2 的奇数倍(即 pi/2、-pi/2、3pi/2、-3pi/2 等)时,Tan 未定义。
- 有一个有趣的关系:tan(x) = sin(x)/cos(x)。
我们将练习不同类型的示例,并使用Python 的Matplotlib 库绘制 NumPy Tan 的图形。
什么是 NumPy Tan?
- NumPy Tan 也是 NumPy 库提供的三角函数之一,它计算单个数字和 NumPy 角度数组的三角正切。
- NumPy Tan 相当于
np.sin(x)/np.cos(x)
element-wise。 - NumPy Tan 函数可以作为
numpy.tan
.
NumPy Tan 的语法
语法: numpy.tan(input)
其中输入可以是单个角度和 NumPy 角度数组。
使用 Numpy Tan 处理不同类型的值
让我们尝试一些 NumPy Tan 函数的示例来帮助我们更好地理解它。
NumPy Tan 关于 Pi 值
1
2
3
4
5
6
7
8
9
10
11
|
import numpy as np print ( "Tan of 0 is :" ,np.tan( 0 )) print ( "Tan of pi/6 is :" ,np.tan(np.pi / 6 )) print ( "Tan of pi/4 is :" ,np.tan(np.pi / 4 )) print ( "Tan of pi/3 is :" ,np.tan(np.pi / 3 )) print ( "Tan of pi is :" ,np.tan(np.pi)) |
输出
Tan of 0 is : 0.0 Tan of pi/6 is : 0.5773502691896257 Tan of pi/4 is : 0.9999999999999999 Tan of pi/3 is : 1.7320508075688767 Tan of pi is : -1.2246467991473532e-16 |
- NumPy pi 的正切提供了不同的输出 – 输出采用科学计数法并且等于 0。
任务:计算np.tan(np.pi/2)
并np.tan(3*np.pi/2)
观察输出。
现在,让我们看看如何将角度(以度为单位)作为参数传递给 numpy.tan 函数。
具有 Deg2Rad 函数的 NumPy Tan
为了计算角度的正切, 使用tan 函数的参数以度为单位的 函数 。deg2rad
1
2
3
4
5
6
7
8
9
|
import numpy as np print ( "Tangent of 30 degrees is :" ,np.sin(np.deg2rad( 30 ))) print ( "Tangent of 45 degrees is :" ,np.sin(np.deg2rad( 45 ))) print ( "Tangent of 60 degrees is :" ,np.sin(np.deg2rad( 60 ))) print ( "Tangent of 180 degrees is :" ,np.sin(np.deg2rad( 180 ))) |
输出
Tangent of 30 degrees is : 0.49999999999999994 Tangent of 45 degrees is : 0.7071067811865476 Tangent of 60 degrees is : 0.8660254037844386 Tangent of 180 degrees is : 1.2246467991473532e-16 |
注意:一个类似的函数是以rad2deg
弧度为单位的角度并将其转换为度数。此函数可与 NumPy 库的三角函数一起使用 。尝试使用具有不同输入值的函数并观察输出 🙂
现在,让我们看看如何计算角度数组的正切。
角度数组上的 NumPy Tan
tan 函数还接受 NumPy 数组作为参数,但我们必须确保角度转换为弧度。
1
2
3
4
5
6
7
8
9
10
11
|
import numpy as np # A NumPy array with all the angles in degrees a = np.array(( 0 , 30 , 45 , 60 , 180 )) print ( "Tangent Values :\n" ,np.tan(a * np.pi / 180 )) # A NumPy array with all the angles is radians b = np.array(( 0 , np.pi / 2 , np.pi / 3 , np.pi)) print ( "Tangent Values :\n" ,np.tan(b)) |
输出
Tangent Values : [ 0.00000000e+00 5.77350269e-01 1.00000000e+00 1.73205081e+00 -1.22464680e-16] Tangent Values : [ 0.00000000e+00 1.63312394e+16 1.73205081e+00 -1.22464680e-16] |
在上面的代码片段中,输出是 NumPy 数组,值采用科学记数法。
均匀分布的 NumPy 数组上的 NumPy Tan
在此示例中,我们将使用 .创建一个包含 30 个均匀间隔值的 NumPy 数组numpy.linspace
。
1
2
3
4
5
|
import numpy as np a = np.linspace( - (np.pi / 4 ) , np.pi / 4 , 30 ) print ( "Tangent Values: " ,np.tan(a)) |
输出
Tangent Values: [-1. -0.89714006 -0.80382248 -0.71829915 -0.63918754 -0.5653756 -0.49595431 -0.43016871 -0.36738181 -0.30704735 -0.24868885 -0.19188316 -0.13624728 -0.08142734 -0.02708932 0.02708932 0.08142734 0.13624728 0.19188316 0.24868885 0.30704735 0.36738181 0.43016871 0.49595431 0.5653756 0.63918754 0.71829915 0.80382248 0.89714006 1. ] |
- 在这里,我们创建了一个 NumPy 数组
numpy.linspace
,它具有 30 个均匀间隔的角度(弧度范围从-pi/4到pi/4)。
- 输出也是一个 NumPy 数组,它是数组元素的正切。
现在,让我们使用Matplotlib Library来可视化 Tan 函数的实际外观。
可视化 Numpy Tan 函数
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
import numpy as np # Importing the Matplotlib Library import matplotlib.pyplot as plt # Creating a NumPy Array of 30 evenly-spaced elements a = np.linspace(( - np.pi / 4 ),(np.pi / 4 ), 30 ) # Storing the tangent values in a NumPy Array b = np.tan(a) plt.plot(a, b, color = "green" , marker = "o" ) plt.title( "numpy.tan()" ) plt.xlabel( "X" ) plt.ylabel( "Y" ) plt.show() |
输出
至此,您已经成功绘制了正切曲线。
概括
因此,这就是关于 NumPy Tan 函数的内容,练习代码并阅读教程将有助于更好地理解 NumPy Tan 函数。不要忘记执行教程中给出的任务。
在下一个教程中,我们将从反三角函数开始。到那时请继续关注。