我的输出看起来像这样:
(1, 0) 5.15280812642e-42
(2, 0) -6.31593498364e-35
(3, 0) 4.1137215863e-33
(4, 0) 4.11347362121e-33
(5, 0) 1.15690910918e-33
(6, 0) 2.14943418749e-33
: :
(4498, 0) 4.16882551974e-30
(4499, 0) 4.16882551974e-30
(4500, 0) 4.16882551114e-30
(4501, 0) 4.16882786295e-30
如果我可以将稀疏矩阵转换为包含所有浮点数的列表,那么情况将很容易。因此,我使用
output = [ output[i][0] for i in range(0,4502)]
plt.plot(t,output)
其中t是[0,1,2,3 .... 4501] 但它不起作用。这是绘制这些数据的更好方法吗?谢谢。
答案 0 :(得分:0)
您的输出向量太短,len(output) == 4999
。 Matplotlib不会那样。我认为对稀疏矩阵和结果向量使用相同的名称output
是个坏主意。
答案 1 :(得分:0)
无论如何,只需删除t
,matplotlib图对整数索引:
plt.plot( [ output[i][0] for i in range(0,4999)])
或者如果你真的打算绘制整个事物:
plt.plot([output[i][0] for i in range(len(output)))
或更多pythonically
plt.plot([i[0] for i in output])