gpt4 book ai didi

python - 在 3 点之间绘制箭头

转载 作者:太空狗 更新时间:2023-10-30 01:09:29 25 4
gpt4 key购买 nike

我正在尝试在 matplotlib 中的三点之间绘制箭头。

假设我们在 2d 中有 3 个任意点 (A1,A2,A3),我们想绘制从 A1 到 A2 以及从 A2 到 A3 的箭头。

一些代码来说明:

import numpy as np
import matplotlib.pyplot as plt
A1=np.array([10,23])
A2=np.array([20,30])
A3=np.array([45,78])
drawArrow(A1,A2);
drawArrow(A2,A3);
plt.show();

我们如何编写函数 drawArrow(tailCoord,headCoord) 来接收箭头尾部和头部的坐标并绘制它?

最佳答案

除非您对所需方法有进一步的特殊要求,否则您可以使用 pyplot's arrow function ,例如:

def drawArrow(A, B):
plt.arrow(A[0], A[1], B[0] - A[0], B[1] - A[1],
head_width=3, length_includes_head=True)

API 提到了一些更多的关键字参数;更多样式选项可以在 the API for FancyArrow 中找到(这是箭头在引擎盖下实际创建的内容)。

请注意,箭头可能偏离绘图,因为显然 pyplot 不一定会调整绘图的 x/y 限制来显示它们。您可能必须通过 plt.xlim 自己执行此操作和 plt.ylim .

关于python - 在 3 点之间绘制箭头,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13120892/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com