import matplotlib.pyplot as plt import pandas as pd #names栏目抬头; delimiter 定义分隔符为' ', df = pd.read_csv('E:\PycharmProjects\muon1.txt', names=['time','id'], delimiter=' ') #有网络的话甚至可以直接给网络链接: df = pd.read_csv('http://phylab.fudan.edu.cn/lib/exe/fetch.php?media=exp:muon:muon_sifted_1.txt', names=['time','id'], delimiter=' ') df Out[20]: time id 0 1080 1072823444 1 1920 1072823553 2 3220 1072823606 3 3860 1072823639 df['time'].hist(bins=100, alpha=0.3, normed=True) plt.show()
import numpy as np #函数输出两列, 第一列为计数, 第二列为bins区间 cnts = np.histogram(df['time'],bins=range(0,20000,100))[0] plt.plot(cnts)
# -*- coding: utf-8 -*- # by whyx 2017/1 import matplotlib.pyplot as plt import pandas as pd import numpy as np #names栏目抬头; delimiter 定义分隔符为' ', #df = pd.read_csv('E:\PycharmProjects\muon1.txt', names=['time','id'], delimiter=' ') #有网络的话甚至可以直接给网络链接: df = pd.read_csv('http://phylab.fudan.edu.cn/lib/exe/fetch.php?media=exp:muon:muon_sifted_1.txt', names=['time','id'], delimiter=' ') df['time'].hist(bins=100, alpha=0.3, normed=True) plt.show() cnts = np.histogram(df['time'],bins=range(0,20000,100))[0] #plt.plot(cnts) cnts = np.log(cnts) #去掉第一个点(仪器精度所致),去掉后面的背景噪音. cnts = cnts[1:100] x= range(0,len(cnts)) z1= np.polyfit(x,cnts,1) p1= np.poly1d(z1) xp= np.linspace(0,len(cnts)) plt.plot(x, cnts, '.', xp, p1(xp), '-') plt.show()