我如何隐藏matplotlib.quiver()的轴

时间:2019-03-16 21:24:31

标签: python matplotlib

我想隐藏matplotlib.pyplot.quiver()绘制的箭头的轴。完全没有拆卸轴的参数,因为箭头的大小与轴的大小成正比。

如何卸下或隐藏轴,所以箭头是唯一可见的组件?

import matplotlib.pyplot as plt
u = v = 2
plt.quiver(0, 0, u, v, angles='xy', scale_units='xy', scale=1)
plt.axis([-u-1, u+1, v-1, v+1])

snippet output

1 个答案:

答案 0 :(得分:0)

一种方法是设置箭头大小headaxislengthheadlength,以使箭头完全覆盖轴。这里的长度与向量长度'xy'成正比,因此我们必须用向量长度1. / width

来缩放np.sqrt(u**2 + v**2)(反比例)
import matplotlib.pyplot as plt
import numpy as np
u = v = 2
length = np.sqrt(u**2 + v**2)
width=0.005
hal = hl = 1. / width * length
plt.quiver(0, 0, u, v, angles='xy', scale_units='xy', scale=1, 
           headwidth=hl,
           headaxislength=hal,
           headlength=hl,
           width=width)
plt.axis([-2, u+1, -2, v+1])

enter image description here