MHa*_*rdy 5 python visualization matplotlib
我试图在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();
Run Code Online (Sandbox Code Playgroud)
我们如何编写一个函数drawArrow(tailCoord,headCoord)来接收尾部坐标和箭头并绘制它?
除非您对所需方法有进一步的特殊要求,否则可以使用pyplot的箭头功能,例如:
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)
Run Code Online (Sandbox Code Playgroud)
API提到了一些关键字参数; 在FancyArrow的API中可以找到更多的样式选项(箭头实际上是在引擎盖下创建的).
请注意,箭头可能是偏离绘图的,因为显然pyplot不一定会调整绘图的x/y限制来显示它们.您可能必须通过plt.xlim和plt.ylim自己完成此操作.
| 归档时间: |
|
| 查看次数: |
5958 次 |
| 最近记录: |