我一直在尝试使用文件仪表.txt对于x轴值和文件数据.rei对于y轴值。我遇到了一个错误,因为这两个文件的长度不一样。我想为gages.txt
中的pestID
与data.rei
中的名称匹配时,绘制一个单独的图形。在
以下是仪表.txt在
计量日期鼠疫测量(cfd)重量组 06459175 1993年10月1日devfl1 12788474.59 1.40309E-06 devflux 06459175 1993年11月1日devfl2 12208086.39 1.40309E-06 devflux 06459175 1993年12月1日devfl3 13559062.49 1.40309E-06 devflux 06459175 1/1/1994 devfl4 12419465.45 1.40309E-06 devflux 06459175 1994年2月1日devfl5 12070242.32 1.40309E-06 devflux 06459175 1994年3月1日devfl6 14298632.14 1.40309E-06 devflux 06459175 1994年4月1日devfl7 13348094.29 1.40309E-06 devflux 06459175 1994年5月1日devfl8 13164766.46 1.40309E-06 devflux 06459175 1994年6月1日devfl9 12737079.24 1.40309E-06 devflux 06459175 1994年7月1日devfl10 12663994.86 1.40309E-06 devflux 06459175 1994年8月1日devfl11 13164849.87 1.40309E-06 devflux 06459200 10/1/1966 devfl253 17304667.25 1.20897E-06 devflux 06459200 11/1/1966 devfl254 16790039.95 1.20897E-06 devflux 06459200 12/1/1966 devfl255 13414046.27 1.20897E-06 devflux 06459200 1/1/1967 devfl256 13146007.51 1.20897E-06 devflux 06459200 2/1/1967 devfl257 15104020.28 1.20897E-06 devflux 06459200 3/1/1967 devfl258 16573573.51 1.20897E-06 devflux 06459200 4/1/1967 devfl259 18090091.13 1.20897E-06 devflux 06459200 5/1/1967 devfl260 18112268.35 1.20897E-06 devflux 06459200 6/1/1967 devfl261 16365348.96 1.20897E-06 devflux 06459200 7/1/1967 devfl262 16490349.44 1.20897E-06 devflux 06459200 8/1/1967 devfl263 16167208.44 1.20897E-06 devflux 06459200 9/1/1967 devfl264 15875425.16 1.20897E-06 devflux 06776500 1961年7月1日devfl6725 27784610.2 7.33613E-07 devflux 06776500 1961年8月1日devfl6726 27008782.61 7.33613E-07 devflux 06776500 1961年9月1日devfl6727 27727258.45 7.33613E-07 devflux 06776500 10/1/1961 devfl6728 30051668.13 7.33613E-07 devflux 06776500 11/1/1961 devfl6729 28593805.65 7.33613E-07 devflux 06776500 12/1/1961 devfl6730 20188155.91 7.33613E-07 devflux 06776500 1/1/1962 devfl6731 18106275.83 7.33613E-07 devflux 06776500 2/1/1962 devfl6732 19852941.78 7.33613E-07 devflux 06776500 1962年3月1日devfl6733 26060013.78 7.33613E-07 devflux
这是节选数据.rei公司名称:
名称组测量模型剩余重量
pdwl1 pdwls 2083.620 2089.673-6.052805 9.4067000E-04
pdwl2 pdwls 2186.748 2199.771-13.02284 8.9630800E-04
pdwl3 pdwls 2150.983 2160.259-9.275730 9.1121100E-04
pdwl4 pdwls 2133.283 2142.970-9.686504 9.1877100E-04
pdwl5 pdwls 2241.741 1769.331 472.4097 8.7432100E-04
pst_1 devwls 2191.200 2094.658 96.54200 1.000000
pst_2 devwls 2194.160 2094.070 100.0900 1.000000
pst_3 devwls 2190.790 2093.375 97.41500 1.000000
pst_4 devwls 2191.700 2092.671 99.02900 1.000000
太平洋标准普尔5 devwls 2188.260 2092.739 95.52100 1.000000
devfl1 devflux 1.2788475E+07 1.2199410E+07 589064.6 1.4030900E-06
devflux 1.2208086E+07 1.2044727E+07 163359.4 1.4030900E-06
devfl3 devflux 1.3559062E+07 1.1423958E+07 2135104。1.4030900E-06
devfl4开发焊剂1.2419465E+07 1.1141419E+07 1278046。1.4030900E-06
devfl5 devflux 1.2070242E+07 1.0925833E+07 1144409。1.4030900E-06
devfl10673德福1.5491064E+07 1.0987895E+08-9.4387886E+07 3.3832500E-07
devfl10674德福1.4034349E+07 1.0585104E+08-9.1816691E+07 3.3832500E-07
devfl10675德福1.8542658E+07 1.0808722E+08-8.9544562E+07 3.3832500E-07
devfl10676德福2.6080914E+07 1.1146742E+08-8.5386506E+07 3.3832500E-07
devfl10677 devflux 2.7600680E+07 1.1286638E+08-8.5265700E+07 3.3832500E-07
devfl10678 devflux 5.7568459E+07 1.2289897E+08-6.533051e+07 3.3832500E-07
DE577.077+077.077.07977.077+357
devfl10772 devflux 5.8896718E+07 1.3656509E+08-7.7668372E+07 3.3832500E-07
devfl10773 devflux 9.1145662E+07 1.3911792E+08-4.7972258E+07 3.3832500E-07
devfl10774德福7.6386027E+07 1.3618379E+08-5.9797763E+07 3.3832500E-07
devfl10775 devflux 8.6729650E+07 1.5717141E+08-7.0441760E+07 3.3832500E-07
devfl10776 devflux 1.3065667E+08 1.5286262E+08-2.2205948E+07 3.3832500E-07
我想做的基本循环是“如果data['Name']==gages['pestID'],那么在x轴上绘制gages['date'],在y轴上绘制数据['Measured']”
这是我的剧本:
import numpy as np
import matplotlib.pyplot as plt
data = np.genfromtxt('data.rei', dtype=None, names=True, skip_header=6)
gages = np.genfromtxt('gages.txt', dtype=None, names=True,
delimiter=('\t'), autostrip=True, usecols=(0, 1, 2))
font = {'size' : 10,}
#-----Dev BFs__________________________________
#plt.rc('axes', color_cycle=['r'])
#for gages['gage'] in gages:
if gages['pestID'] == data['Name']:
plt.scatter(gages['date'], data['Measured'],gages['date'], data['Modelled'])
plt.legend('Measured','Modelled')
#plt.plot([0,4000],[0,4000])
plt.xlabel('date', fontdict=font)
plt.ylabel('flux (cfd)', fontdict=font)
plt.title.gages(['gage'], fontdict=font)
#plt.xlim(1000,4000)
#plt.ylim(-2000,4000)
plt.show()
else:
print 'no match'
错误如下:
^{pr2}$我很困惑,因为我认为循环可以解决这个问题。在
我不得不猜测,对于}的每一行,
gages
的每一行,pestID
是不合格的,而对于{Name
是唯一的。在使用您的数据:
这个代码:
^{pr2}$你会得到:
相关问题 更多 >
编程相关推荐