我不知道为什么我的 PDF 文件中多了一个页面。我只加载了 7 个文件,但在 PDF 输出文件中创建了 8 个文件。下面是我正在使用的代码。正在加载的文件实际上是一个文件的副本,每个文件都重命名为不同的名称以避免出现问题我认为实际内容相同的事实并不重要吗?
编辑:我已经能够验证它是加载并添加到两次创建的 PDF 文件中的最后一个文件,但我仍然不明白为什么..
def processFiles():
##Set some vars
global kdeData
counter = 0
sColumn = selectCol()
sSamples = setSamples()
rfName = raw_input("Name of file to save results to: ")+".pdf"
createPDF = PdfPages(rfName)
##Iterate for each file
for file in fileList:
valid = [sColumn]
matrix = np.loadtxt(file, skiprows=1, usecols=valid)
colCount = np.loadtxt(file, dtype=object)
totalCols = colCount.shape[1]
ldlValid = [i for i in range(totalCols)]
lDL = np.loadtxt(file, usecols=ldlValid, dtype=object)
kdeData = np.array(matrix)
gkde = stats.gaussian_kde(kdeData)
ind = np.linspace(-int(getRange()), int(getRange()), len(kdeData) * sSamples)
kdepdf = gkde.evaluate(ind)
plt.figure()
##plot histogram of sample
plt.hist(kdeData, len(kdeData), normed=1, alpha=0.20)
##plot data generating density
plt.plot(ind, stats.norm.pdf(ind), 'r', linewidth=0.8, label='DGP normal')
##plot estimated density
plt.plot(ind, kdepdf, 'g', linewidth=0.8, label='kde')
plt.title('KDE for '+str(nameList[counter]))
plt.legend()
plt.savefig(createPDF, format='pdf')
counter += 1
##Save PDF and open it
createPDF.savefig()
createPDF.close()
os.startfile(rfName)