matplotlib.lines.Line2D.set_data这个方法,是否只支持数字类型的array

问答 1644号炼丹师
Lv1 居士
发布在 Matplotlib   66   0
问答 1644号炼丹师   66   0

matplotlib.lines.Line2D.set_data这个方法,是否只支持数字类型的array

本人正在用animation中的FuncAnimation做实时数据显示,如果x和y的数据都是数字,则都没问题,但是,当我把x轴的数据(字符串型的时间)通过set_data进行设置时,就会显示以下错误:matplotlib.units.ConversionError: Failed to convert value(s) to axis units: ['11:51:21', '11:51:24', '11:51:27', '11:51:30']。

请各位大神指导

测试代码如下:

from matplotlib import pyplot as plt
from datetime import datetime as dt,timedelta
fig,ax=plt.subplots()
line,=ax.plot([],[])
x1=[(dt.today()+timedelta(seconds=i)).strftime('%H:%M:%S') for i in range(0,12,3)]
y1=[3,6,9,10]
line.set_data(x1,y1)
plt.show()
版权声明:作者保留权利,不代表意本站立场。如需转载请联系本站以及作者。

参与讨论

回复《 matplotlib.lines.Line2D.set_data这个方法,是否只支持数字类型的array

EditorJs 编辑器

沙发,很寂寞~
反馈
to-top--btn