如何在matplotlib中使用plotfile?

时间:2013-02-22 23:31:14

标签: python matplotlib

我试图用matplotlib的plotfile函数绘制一些数据,即

#!/usr/bin/env python
# -*- coding: utf-8 -*-

from matplotlib.pyplot import *
from numpy import *

x = arange(0,10,0.001)
y = sin(x)
savetxt("test.dat",column_stack((x,y)))

plotfile("test.dat",(0,))
show()

这给了我以下错误

ValueError: invalid literal for float(): 1.000000000000000021e-03 9.99999833333341681

使用genfromtxt()函数可以很好地处理生成的数据,所以我看不到 为什么会出现错误。谢谢你的帮助。

1 个答案:

答案 0 :(得分:1)

默认情况下,numpy.savetxt使用单个空格作为列分隔符。

但是,matplotlib.pyplot.plotfile的默认分隔符是逗号。

一种解决方法是在调用savetxt时将逗号指定为列分隔符,例如:

import numpy as np 
np.savetxt("test.dat", np.column_stack((x, y)), delimiter=',')