Numpy中关于arctan和arctan2的区别

 更新时间:2023年09月11日 11:31:23   作者:花生是豆类  
这篇文章主要介绍了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

总结

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

相关文章

  • OpenAI Function Calling特性示例详解

    OpenAI Function Calling特性示例详解

    这篇文章主要为大家介绍了OpenAI Function Calling特性作用详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-07-07
  • Python中HTTP请求的全面指南

    Python中HTTP请求的全面指南

    在现代网络应用中,HTTP(HyperText Transfer Protocol)协议是客户端与服务器之间数据传输的核心,本文都将从基础到高级,逐步引导你成为HTTP请求处理的高手,快跟随小编一起学习起来吧
    2024-10-10
  • Python参数传递实现过程及原理详解

    Python参数传递实现过程及原理详解

    这篇文章主要介绍了Python参数传递实现过程及原理详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-05-05
  • Python的None和C++的NULL用法解读

    Python的None和C++的NULL用法解读

    这篇文章主要介绍了Python的None和C++的NULL用法,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05
  • Matplotlib绘制子图的常见几种方法

    Matplotlib绘制子图的常见几种方法

    Matplotlib的可以把很多张图画到一个显示界面,在作对比分析的时候非常有用。本文就介绍了几种方法,需要的朋友们下面随着小编来一起学习学习吧
    2021-05-05
  • Python实现矩阵转置的几种方法详解

    Python实现矩阵转置的几种方法详解

    这篇文章主要介绍了Python实现矩阵转置的几种方法详解,zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的对象,这样做的好处是节约了不少的内存,需要的朋友可以参考下
    2023-08-08
  • Python异常处理与反射相关问题总结

    Python异常处理与反射相关问题总结

    今天给大家带来的是关于Python的相关知识,文章围绕着Python异常处理与反射展开,文中有非常详细的介绍及代码示例,需要的朋友可以参考下
    2021-06-06
  • 关于python实现requests接口测试的问题

    关于python实现requests接口测试的问题

    requests是一个很实用的Python HTTP客户端库,Requests是Python语言的第三方的库,专门用于发送HTTP请求,这篇文章主要介绍了python实现requests接口测试,需要的朋友可以参考下
    2021-10-10
  • Python进行数据提取的方法总结

    Python进行数据提取的方法总结

    数据提取是分析师日常工作中经常遇到的需求。如某个用户的贷款金额,某个月或季度的利息总收入,某个特定时间段的贷款金额和笔数,大于5000元的贷款数量等等。本篇文章介绍如何通过python按特定的维度或条件对数据进行提取,完成数据提取需求。
    2016-08-08
  • 解读opencv->tensorrt的数据排列方式

    解读opencv->tensorrt的数据排列方式

    这篇文章主要介绍了解读opencv->tensorrt的数据排列方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-02-02

最新评论