如何根据坐标创建向量?

我有一组经纬度格式的坐标和一组基于这些坐标的方向。我可以使用 ax.quivers 将它们绘制为箭头,但是我可以制作一个记录这些箭袋方向的向量集吗?

ax.quiver(lons,lats,dx,dy,headwidth=0.8,headlength=0,scale=35,width=0.008,
      transform=ccrs.PlateCarree())

这里我有经度、纬度和 dx,dy 作为箭头方向。我可以将这些箭头提取为向量并创建一个数组吗?

添加 - 我试图获取这些箭头的方向(以度为单位)。

非常感谢!


慕容森
浏览 46回答 1
1回答

幕布斯7119047

给定两个向量 dx 和 dy,您可以使用以下方法计算方向:dir_rad = np.arctan2(dy, dx)它以弧度为单位,所以如果你想将其转换为度数:dir_deg = dir_rad*180/np.pi此外,这将用+/-符号表示,指示方向是在上象限还是下象限。例如,-45°表示右下象限。如果您想要 0 到 360 度范围内的值,请使用:dir_360deg = (dir_deg+360)%360例子:x = np.arange(-10,10)y = np.arange(-10,10)xx,yy = np.meshgrid(x,y)plt.quiver(xx,yy)dir_360deg = (360+np.arctan2(yy,xx)*180/np.pi)%360plt.imshow(dir_360deg)plt.colorbar()
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python