初接触Numpy中三角函数的朋友常犯的错误之一就是误认为函数的输入值为角度,比如 numpy.sin(90),实际上90这个值如果放在这里,不是角度,而是弧长,因此我们就会得到如下错误结果:

numpy.sin(90) ≈ 0.894

还有人会犯如下的另一种错误:

numpy.degrees(numpy.sin(90)) ≈ 51.2

这显然是知道输入值为弧长,但在弧长与角度的转换之间凌乱了心绪。。。。

最简单的方式其实是一句话 -- 用numpy提供的deg2rad函数(php玩家不陌生吧?)将角度转换为弧长并代入公式,如:

numpy.sin(numpy.deg2rad(90)) =  1

这不就对了么?不用那么折腾了吧?

当然,我的至少得知道原理:

deg2rad帮我们所做的事情实际上就是:角度 * numpy.pi / 180