Numpy中关于arctan和arctan2的区别
Numpy中arctan和arctan2的区别
arctan
import numpy as np np.arctan(x1/x2)
- arctan是tan的反函数, 输入标量(可以是一个数,比如5)或者数组,输出标量或者数组.输入正切值,输出对应弧度。
- arctan的值域是[−π/2 , π/2]
arctan2
import numpy as np np.arctan2(x1/x2)
1.arctan2的输入不仅仅是正切值,而是要输入两个数x1和x2(比如两个坐标值)或者是两者的数组,正切值是两者的比值x1/x2
2.arctan2的值域是[−π, π]因为可以根据x1和x2来确定点落在哪个象限
共同点
都能够求反正切值
区别
- 两者输入不同, arctan仅仅输入正切值,arctan2要输入对边和直角边的具体数值,用来确定象限
- 两者的值域不同,arctan的值域是[−π/2 , π/2], arctan2的值域是[−π , π]
math模块下atan和atan2的区别
atan 和 atan2 都是反正切函数,返回的都是弧度
对于两点形成的直线,两点分别是 point(x1,y1) 和 point(x2,y2),其斜率对应角度的计算方法可以是:
angle = atan( (y2-y1)/(x2-x1) )
或
angle = atan2( y2-y1, x2-x1 )
因此可以看出 atan 和 atan2 的区别:
1、参数的个数不同;atan 为单个参数,atan2为两个参数
2、atan2 的优点在于: 如果 x2-x1等于0 ,角度依然可以计算,但是atan函数则需要提前判断,否则就会导致程序出错;
结论: atan 和 atan2函数,建议用 atan2函数;
注意:
1、两者返回值都是弧度;
2、atan2函数参数是y在前,x在后;
3、需要先导入math库
下面再根据几个实例来看一下它们的用法和区别
import math a=math.atan(1) b=math.atan2(1,1) print(a,b) >> 0.7853981633974483 0.7853981633974483 #垂直时 b=math.atan2(1,0) print(b) >> 1.5707963267948966 #弧度转角度 b=math.atan2(1,0) print(b/math.pi*180) >> 90.0
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
pandas.DataFrame.from_dict直接从字典构建DataFrame的方法
本文主要介绍了pandas.DataFrame.from_dict直接从字典构建DataFrame的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2022-06-06
Python使用Windows API创建窗口示例【基于win32gui模块】
这篇文章主要介绍了Python使用Windows API创建窗口操作,结合实例形式分析了Python基于win32gui模块调用Windows API创建窗口具体操作步骤与相关实现技巧,需要的朋友可以参考下2018-05-05
Python中模块(Module)和包(Package)的区别详解
这篇文章主要介绍了Python中模块(Module)和包(Package)的区别详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2019-08-08


最新评论