python 计算两个向量之间的夹角

使用python计算两个向量的夹角代码如下:

import numpy as np
def dot_product_angle(v1, v2):
    if np.linalg.norm(v1) == 0 or np.linalg.norm(v2) == 0:
        print("Zero magnitude vector!")
    else:
        vector_dot_product = np.dot(v1, v2)
        arccos = np.arccos(vector_dot_product / (np.linalg.norm(v1) * np.linalg.norm(v2)))
        angle = np.degrees(arccos)
        return angle
    return 0

if __name__ == '__main__':
    print(dot_product_angle(np.array([0,1,0]), np.array([1,0,0])))
    print(dot_product_angle(np.array([0,1,0]), np.array([0,1,1])))

Reference

https://stackoverflow.com/a/67253470/9492373

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐