这里有点混乱:我想画一个风力预报图,在预报时间t(在x轴上)在风速wind(y轴)和指向风的方向的箭头。箭头的尺寸应为绘图高度的给定分数,例如任意确定为绘图高度的1/15。由于绘图会自动缩放到风列表中的最大风速,因此如下所示:
arrowlength = np.max(wind) / 15.0
这将产生以绘图Y为单位的箭头长度。问题是X单位对于绘图来说是不兼容的,因为我使用的是日期时间。因此,当我执行以下操作时,matplotlib会大吃一惊(如果x轴不是日期时间,则该代码应该可以工作):
^{pr2}$当然,当datetimet(循环中分别是x)被传递给Arrow函数的地方,这一点也不例外。在
我想也是同样的道理,这是一个非常普遍的问题:如何将直线和其他注释放置到一个坐标网格中,而这个坐标网格在X和Y中的单位不相同?在
您可以使用
matplotlib.dates
(http://matplotlib.org/api/dates_api.html)将日期转换为轴坐标,使用date2num()
方法。在下面的示例中,我创建了一个从(2015年4月5日,10日)到(2015年4月7日,20日)的箭头:相关问题 更多 >
编程相关推荐