我正在尝试使用quiver3在Matlab中重新创建一个3d箭图。数据是完全相同的,但是当绘制箭头似乎指向0,没有箭头,X和Y轴出现切换(因为你必须在Python中反转X轴,而不是在Matlab中的Y以获得相同的轴值)。有人知道为什么会这样吗?
matlab代码是:
quiver3(zeros(size(binrange)), zeros(size(binrange)), binrange, v,u, zeros(size(v)),0);
set(gca,'YDir','reverse');
matlab图为:
python代码是:
ax.quiver3D(np.zeros(len(binrange)), np.zeros(len(binrange)), binrange, aa, bb, np.zeros(len(bb)), length=0.1, color='tomato')
plt.gca().invert_xaxis()
python的情节是:
最佳答案
更改pivot
。从docs:“pivot: [ ‘tail’ | ‘middle’ | ‘tip’ ]
箭头中位于网格点的部分;箭头围绕该点旋转,因此命名为pivot。“我想您已经设置了tip
(可能是默认值?),您需要tail
。