open
如果用python提取数据做后处理,比如绘图,我们可以不使用库,用几行简单的命令来实现数据的提取 如果数据中没有其他干扰行,只有数据的简单情况
from numpy import *
import matplotlib.pyplot as plt
a=open('33.txt','r+')
f=a.readlines()
b=[list.strip().split() for list in f[1:]]
33.txt是文件名字。f[1:] 表示从第二行开始统计,第一行内容是头文件信息,不是数据。我们不读(见下图数据)。如果从开始就读数据,则将f[1:]换成f。
这样b里面就存下了数据,我们以一组简单的数据来做个示范,绘图
然后我们将读取的数据进行格式转换:
coord=array(b,dtype=float)
将数据转成浮点数组,方便数组计算
那么第一列数据就是 coord[:,0],
那么第2列数据就是 coord[:,1]以此类推
我们提取温度(第一列) 磁比热(第5列)
t=coord[:,0]
c=coord[:,4]
绘图看一下效果:
plt.plot(t,c,'b',label=r'$C
plt.scatter(t,c,color='b')
plt.legend()
plt.xlabel('Temperature',fontsize='15')
plt.ylabel('specific capacity',fontsize='15')
plt.savefig('fig.pdf')
完整代码
from numpy import *
import matplotlib.pyplot as plt
a=open('33.txt','r+')
f=a.readlines()
b=[list.strip().split() for list in f[1:]]
coord=array(b,dtype=float)
t=coord[:,0]
c=coord[:,4]
plt.plot(t,c,'b',label=r'$C