Numpy中關(guān)于arctan和arctan2的區(qū)別
Numpy中arctan和arctan2的區(qū)別
arctan
import numpy as np np.arctan(x1/x2)
- arctan是tan的反函數(shù), 輸入標(biāo)量(可以是一個(gè)數(shù),比如5)或者數(shù)組,輸出標(biāo)量或者數(shù)組.輸入正切值,輸出對(duì)應(yīng)弧度。
- arctan的值域是[−π/2 , π/2]
arctan2
import numpy as np np.arctan2(x1/x2)
1.arctan2的輸入不僅僅是正切值,而是要輸入兩個(gè)數(shù)x1和x2(比如兩個(gè)坐標(biāo)值)或者是兩者的數(shù)組,正切值是兩者的比值x1/x2
2.arctan2的值域是[−π, π]因?yàn)榭梢愿鶕?jù)x1和x2來(lái)確定點(diǎn)落在哪個(gè)象限
共同點(diǎn)
都能夠求反正切值
區(qū)別
- 兩者輸入不同, arctan僅僅輸入正切值,arctan2要輸入對(duì)邊和直角邊的具體數(shù)值,用來(lái)確定象限
- 兩者的值域不同,arctan的值域是[−π/2 , π/2], arctan2的值域是[−π , π]
math模塊下atan和atan2的區(qū)別
atan 和 atan2 都是反正切函數(shù),返回的都是弧度
對(duì)于兩點(diǎn)形成的直線,兩點(diǎn)分別是 point(x1,y1) 和 point(x2,y2),其斜率對(duì)應(yīng)角度的計(jì)算方法可以是:
angle = atan( (y2-y1)/(x2-x1) )
或
angle = atan2( y2-y1, x2-x1 )
因此可以看出 atan 和 atan2 的區(qū)別:
1、參數(shù)的個(gè)數(shù)不同;atan 為單個(gè)參數(shù),atan2為兩個(gè)參數(shù)
2、atan2 的優(yōu)點(diǎn)在于: 如果 x2-x1等于0 ,角度依然可以計(jì)算,但是atan函數(shù)則需要提前判斷,否則就會(huì)導(dǎo)致程序出錯(cuò);
結(jié)論: atan 和 atan2函數(shù),建議用 atan2函數(shù);
注意:
1、兩者返回值都是弧度;
2、atan2函數(shù)參數(shù)是y在前,x在后;
3、需要先導(dǎo)入math庫(kù)
下面再根據(jù)幾個(gè)實(shí)例來(lái)看一下它們的用法和區(qū)別
import math a=math.atan(1) b=math.atan2(1,1) print(a,b) >> 0.7853981633974483 0.7853981633974483 #垂直時(shí) b=math.atan2(1,0) print(b) >> 1.5707963267948966 #弧度轉(zhuǎn)角度 b=math.atan2(1,0) print(b/math.pi*180) >> 90.0
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python參數(shù)傳遞實(shí)現(xiàn)過(guò)程及原理詳解
這篇文章主要介紹了Python參數(shù)傳遞實(shí)現(xiàn)過(guò)程及原理詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-05-05
Python實(shí)現(xiàn)矩陣轉(zhuǎn)置的幾種方法詳解
這篇文章主要介紹了Python實(shí)現(xiàn)矩陣轉(zhuǎn)置的幾種方法詳解,zip() 函數(shù)用于將可迭代的對(duì)象作為參數(shù),將對(duì)象中對(duì)應(yīng)的元素打包成一個(gè)個(gè)元組,然后返回由這些元組組成的對(duì)象,這樣做的好處是節(jié)約了不少的內(nèi)存,需要的朋友可以參考下2023-08-08
Python異常處理與反射相關(guān)問(wèn)題總結(jié)
今天給大家?guī)?lái)的是關(guān)于Python的相關(guān)知識(shí),文章圍繞著Python異常處理與反射展開(kāi),文中有非常詳細(xì)的介紹及代碼示例,需要的朋友可以參考下2021-06-06
關(guān)于python實(shí)現(xiàn)requests接口測(cè)試的問(wèn)題
requests是一個(gè)很實(shí)用的Python HTTP客戶端庫(kù),Requests是Python語(yǔ)言的第三方的庫(kù),專門(mén)用于發(fā)送HTTP請(qǐng)求,這篇文章主要介紹了python實(shí)現(xiàn)requests接口測(cè)試,需要的朋友可以參考下2021-10-10
Python進(jìn)行數(shù)據(jù)提取的方法總結(jié)
數(shù)據(jù)提取是分析師日常工作中經(jīng)常遇到的需求。如某個(gè)用戶的貸款金額,某個(gè)月或季度的利息總收入,某個(gè)特定時(shí)間段的貸款金額和筆數(shù),大于5000元的貸款數(shù)量等等。本篇文章介紹如何通過(guò)python按特定的維度或條件對(duì)數(shù)據(jù)進(jìn)行提取,完成數(shù)據(jù)提取需求。2016-08-08
解讀opencv->tensorrt的數(shù)據(jù)排列方式
這篇文章主要介紹了解讀opencv->tensorrt的數(shù)據(jù)排列方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-02-02

