目录
  • Numpy中arctan和arctan2的区别
    • arctan
    • arctan2
  • math模块下atan和atan2的区别
    • 下面再根据几个实例来看一下它们的用法和区别
  • 总结

    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

    总结

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持本网站。

    您可能感兴趣的文章:

    • Python实现arctan换算角度的示例
    • Python之Numpy的超实用基础详细教程
    • Python之Numpy 常用函数总结