如何旋转Matplotlib中的花式箭头(我不想制作动画),我尝试了旋转和变换,它们都不适合我,我想,我犯了一些错误,请提供任何帮助或其他解决方案,我已经粘贴了我的代码如下。在
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
#Arrow in degree
#Arrow represent the wind direction
degree= 45 #Arrow should rotate as per the specified degree, (0 degree is North)
#Draw Circle
#CENTER POINT
Circle1 = plt.Circle((5, 5), 0.1, color='blue', fill=True)
ax.add_artist(Circle1)
#CIRCLE
Circle2 = plt.Circle((5, 5), 6, color='blue', fill=False)
ax.add_artist(Circle2)
x3=5.0
y3=6.8
x4=5.0
y4=9.0
#Wind Direction Arrow
#LEFT ARROW
ax.annotate('',
xy=(x3-0.5, y3), xycoords='data',
xytext=(-20, 50), textcoords='offset points', rotation=degree,
size=20,
# bbox=dict(boxstyle="round", fc="0.8"),
arrowprops=dict(arrowstyle="fancy",
fc="0.6", ec="none",
connectionstyle="angle3,angleA=0,angleB=-90"))
#CENTER ARROW
ax.annotate('',
xy=(x3, y3), xycoords='data',
xytext=(0, 50), textcoords='offset points', rotation=degree,
size=20,
# bbox=dict(boxstyle="round", fc="0.8"),
arrowprops=dict(arrowstyle="fancy",
fc="0.6", ec="none",
connectionstyle="angle3,angleA=0,angleB=-90"))
#RIGHT ARROW
ax.annotate('',
xy=(x3+0.5, y3), xycoords='data',
xytext=(20, 50), textcoords='offset points', rotation=degree,
size=20,
# bbox=dict(boxstyle="round", fc="0.8"),
arrowprops=dict(arrowstyle="fancy",
fc="0.6", ec="none",
connectionstyle="angle3,angleA=0,angleB=-90"))
ax.set_aspect('equal')
ax.set_xlim([-2.5,12.5])
ax.set_ylim([-3,15])
plt.show()
我的要求:
所有3个箭头(代表风向的箭头)都应旋转到指定的角度,保持中心点为锚。在
由于箭头的头和尾是在不同的坐标系中指定的,所以我似乎唯一的选择就是围绕圆的中心分别旋转坐标。在
相关问题 更多 >
编程相关推荐