在matplotlib中,有没有办法以图形单位而不是数据单位来指定箭头的大小?
使用情形为:我正在制作一个多面板图形,其中每个面板都有不同的轴大小(例如,一个面板在X轴上从0到1,另一个面板从0到10)。我希望每个面板中的箭头都相同。我还希望箭头无论方向如何都相同。
对于纵横比不等于1的轴,尾部的宽度(因此头部的大小)随方向而变化。
我最接近的是,在画布上画完之后:
dx = ax.get_xlim()[1] - ax.get_xlim()[0]
for arrow in ax.patches:
arrow.set_data(width=dx/50)
但这不起作用;结果是这样的:
1条答案
按热度按时间0yg35tkg1#
只需使用
ax.annotate()
代替ax.arrow()
:第一节第一节第一节第一节第一次