np.arctan2和np.arctan

np.arctan2 和 np.arctan 都是用于计算反正切函数的 NumPy 函数,但它们的使用和功能有所不同。

np.arctan2

np.arctan2(y, x) 计算 atan2(y,x),即从坐标 (x,y)到原点的角度(弧度)。它考虑了两个参数的符号来确定正确的象限,返回值在 [−π,π]范围内。

import numpy as np
# 计算从原点到 (1, 1) 的角度
angle = np.arctan2(1, 1)
print(angle)  # 输出 0.7853981633974483,相当于 π/4

优点

  • 可以正确处理所有象限的角度。
  • 不会因除以零而出错。

np.arctan

np.arctan(x) 计算 atan(x),即反正切函数,返回值在 [−π/2,π/2]范围内。该函数只接受一个参数,并且假定输入是正切值(即 y/x)。

import numpy as np
# 计算正切值为 1 的角度
angle = np.arctan(1)
print(angle)  # 输出 0.7853981633974483,相当于 π/4

局限性

  • 只能处理第一和第四象限的角度。
  • 无法单独判断 x 和 y 的符号,无法确定具体象限。

区别总结

  • np.arctan2 使用两个参数 y 和 x 计算角度,可以处理所有象限的角度。
  • np.arctan 仅使用一个参数,计算反正切值,返回值范围为 [−π/2,π/2],无法区分象限。

小例子

比如(-1,-1),已知在第三象限

np.arctan2(-1, -1) # -2.356194490192345,弧度
# 转成角度
np.arctan2(-1, -1)*180/np.pi # -135° 角度
np.arctan((-1)/(-1)) # 0.7853981633974483,弧度
# 转成角度
np.arctan((-1)/(-1))*180/np.pi # 45° 角度

附录

如何根据弧度判断在第几象限

可以通过以下方法判断一个给定弧度在笛卡尔坐标系的哪个象限:

第I象限: 角度在 0 和 π/2​ 之间
第II象限: 角度在 π/2​ 和 π 之间
第III象限: 角度在 −π 和 −π/2​ 之间
第IV象限: 角度在 −π/2​ 和 0 之间
  • 0.5 在第I象限
  • 2.0 在第II象限
  • -1.0 在第IV象限
  • -3.0 在第III象限 π 和 -π 位于坐标轴上
  • π/2 位于坐标轴上,或根据需要被划分为第I象限或第II象限
  • -π/2 位于坐标轴上,或根据需要被划分为第III象限或第IV象限

这里假设输入的弧度在 [−π,π]范围内。 如果弧度不在这个范围内,可以使用 np.arctan2 来计算,确保结果在 [−π,π] 范围内。

弧度和角度单位转换

  • 弧度转换为角度:角度 = 弧度 × (180 / π)
  • 角度转换为弧度:弧度 = 角度 × (π / 180)
  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AI1.0

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值