如何使用 matplotlib 绘制与比例无关的箭头
How to draw scale-independent arrows with matplotlib
我在 python 中使用船的 matplotlib 绘制了轨迹图,如下所示:
现在我想添加一些箭头,例如风向、真实航向等。但是,无论绘图处于哪个缩放级别,我都希望箭头具有相同的大小。我试过 matplotlib.pyplot.arrow,但是我必须定义箭头的长度。我可以使 matplotlib.pyplot.arrow 工作,但是我必须获得绘图的高度和宽度,并相应地缩放我的箭头,所以我想知道是否有更好的方法来为这些点获取与比例无关的箭头?
您想改用 matplotlib.axes.Axes.annotate
。有关详细信息,请参阅 the docs!
基本上,将 xycoords
参数设置为 "axes fraction"
以指示它使用坐标轴本身的相对分数而不是数据坐标进行绘图。
我在 python 中使用船的 matplotlib 绘制了轨迹图,如下所示:
现在我想添加一些箭头,例如风向、真实航向等。但是,无论绘图处于哪个缩放级别,我都希望箭头具有相同的大小。我试过 matplotlib.pyplot.arrow,但是我必须定义箭头的长度。我可以使 matplotlib.pyplot.arrow 工作,但是我必须获得绘图的高度和宽度,并相应地缩放我的箭头,所以我想知道是否有更好的方法来为这些点获取与比例无关的箭头?
您想改用 matplotlib.axes.Axes.annotate
。有关详细信息,请参阅 the docs!
基本上,将 xycoords
参数设置为 "axes fraction"
以指示它使用坐标轴本身的相对分数而不是数据坐标进行绘图。