首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何关闭matplotlib抖动缩放?

如何关闭matplotlib抖动缩放?
EN

Stack Overflow用户
提问于 2018-11-26 16:02:19
回答 1查看 1.2K关注 0票数 1

matplotlib.pyplot.quiver函数接受一组“原点”和一组“目的地”点,并绘制从“原点”指向“目的地”点的箭头。然而,有一个缩放因子,所以箭头不一定以“目标”点结束,它们只是指向那个方向。

例如:

代码语言:javascript
运行
复制
import matplotlib.pyplot as plt
import numpy as np

pts = np.array([[1, 2], [3, 4]])
end_pts = np.array([[2, 4], [6, 8]])

plt.quiver(pts[:,0], pts[:,1], end_pts[:,0], end_pts[:,1])

注意,左下角的向量从(1,2) (我想要的)开始,但不以(2,4)结尾。这由scale函数的quiver参数控制,该参数使箭头更长或更短。如何使箭头精确地(2,4)结束?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-11-26 16:38:51

颤栗文献

若要绘制x-y平面上的向量,且u和v具有与x和y相同的单位,请使用angles='xy', scale_units='xy', scale=1

不过,请注意,uv相对于位置而言是可以理解的。因此,您需要先得到差额。

代码语言:javascript
运行
复制
import matplotlib.pyplot as plt
import numpy as np

pts = np.array([[1, 2], [3, 4]])
end_pts = np.array([[2, 4], [6, 8]])
diff = end_pts - pts

plt.quiver(pts[:,0], pts[:,1], diff[:,0], diff[:,1],
           angles='xy', scale_units='xy', scale=1.)

plt.show()

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53484900

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档