In [ ]:
from PyPDF2 import PdfFileMerger
from glob import glob
from natsort import natsorted, ns
import numpy as np
import shutil
import os
In [ ]:
# flights = ['20150617','20150620','20150701','20150702','20150706','20150709']
flights = ['20150617','20150702','20150709']
doVertProfs = True
if doVertProfs:
# varStrs = ['ARatio','Dmm','Nt','RE','RH','RjcR','TWC','FL-RH-Temp','FL-Temp-Alt','FL-WS-Alt','FL-WS-Temp',
# 'ARatio-wAllSprls','Dmm-wAllSprls','Nt-wAllSprls','RE-wAllSprls','RH-wAllSprls','RjcR-wAllSprls',
# 'TWC-wAllSprls','FL-RH-Temp-wAllSprls','FL-Temp-Alt-wAllSprls','FL-WS-Alt-wAllSprls','FL-WS-Temp-wAllSprls']
varStrs = ['ARatio-wAllSprls','Dmm-wAllSprls','Nt-wAllSprls','RE-wAllSprls','RH-wAllSprls','RjcR-wAllSprls',
'TWC-wAllSprls','FL-RH-Temp-wAllSprls','FL-Temp-Alt-wAllSprls','FL-WS-Alt-wAllSprls','FL-WS-Temp-wAllSprls']
else:
varStrs = ['CIP_MD','CIP_MD','CIP_MD','CIP_MD-TempB',
'CIP_ND','CIP_ND','CIP_ND','CIP_ND-TempB',
'CIP-IWC-LWC-Temp','CIP_TWCextndRatio']
dirStrs = ['CIP-MD_10s','CIP-MD-All_10s','CIP-MD-avg_10s','CIP-MD-TempBinned',
'CIP-ND_10s','CIP-ND-All_10s','CIP-ND-avg_10s','CIP-ND-TempBinned',
'CIP-IWC-LWC-Temp_10s','CIP-TWCextndRatio_10s']
if doVertProfs:
for flight in flights:
print('\nMerging plots for {}...'.format(flight))
for varStr in varStrs:
print('\tMerging {}...'.format(varStr))
pdfDir = '/Users/danstechman/GoogleDrive/School/Research/PECAN/Microphysics/plots/vertical_profiles/{}'.format(flight)
mvDir = pdfDir + '/' + varStr
if not os.path.exists(mvDir):
os.makedirs(mvDir)
pdfList = natsorted(glob('{}/*{}_sprl*.pdf'.format(pdfDir,varStr)))
merger = PdfFileMerger()
for pdf in pdfList:
merger.append(pdf)
merger.write('{}/{}_{}_All.pdf'.format(pdfDir,flight,varStr))
for f in pdfList:
shutil.move(f,mvDir)
else:
for flight in flights:
print('\nMerging plots for {}...'.format(flight))
for varStr,dirStr in zip(varStrs,dirStrs):
print('\tMerging {}...'.format(dirStr))
pdfDir = '/Users/danstechman/GoogleDrive/School/Research/PECAN/Microphysics/plots/{}/CIP-Ext/{}'.format(flight,dirStr)
mvDir = pdfDir + '/IndvFiles'
if not os.path.exists(mvDir):
os.makedirs(mvDir)
if flight == '20150617':
numSprls = 7
if flight == '20150620':
numSprls = 7
if flight == '20150701':
numSprls = 1
if flight == '20150702':
numSprls = 3
if flight == '20150706':
numSprls = 8
if flight == '20150709':
numSprls = 16
if dirStr in ['CIP-ND-TempBinned','CIP-MD-TempBinned']:
for ix in range(1,numSprls+1):
pdfList = natsorted(glob('{}/*S{:02d}_*degC.pdf'.format(pdfDir,ix)))
# pdfListZ = natsorted(glob('{}/*S{:02d}_*_zoom.pdf'.format(pdfDir,ix)))
merger = PdfFileMerger()
for pdf in pdfList:
merger.append(pdf)
merger.write('{}/{}_{}_S{:02d}.pdf'.format(pdfDir,flight,varStr,ix))
for f in pdfList:
shutil.move(f,mvDir)
# mergerZ = PdfFileMerger()
# for pdfZ in pdfListZ:
# mergerZ.append(pdfZ)
# mergerZ.write('{}/{}_{}_S{:02d}_zoom.pdf'.format(pdfDir,flight,varStr,ix))
# for fZ in pdfListZ:
# shutil.move(fZ,mvDir)
if dirStr in ['CIP-ND-All_10s','CIP-MD-All_10s']:
for ix in range(1,numSprls+1):
pdfList = natsorted(glob('{}/*S{:02d}_*.pdf'.format(pdfDir,ix)))
# pdfListZ = natsorted(glob('{}/*S{:02d}_*_zoom.pdf'.format(pdfDir,ix)))
merger = PdfFileMerger()
for pdf in pdfList:
merger.append(pdf)
merger.write('{}/{}_{}_S{:02d}.pdf'.format(pdfDir,flight,varStr,ix))
for f in pdfList:
shutil.move(f,mvDir)
# mergerZ = PdfFileMerger()
# for pdfZ in pdfListZ:
# mergerZ.append(pdfZ)
# mergerZ.write('{}/{}_{}_S{:02d}_zoom.pdf'.format(pdfDir,flight,varStr,ix))
# for fZ in pdfListZ:
# shutil.move(fZ,mvDir)
if dirStr in ['CIP-ND-avg_10s','CIP-MD-avg_10s']:
pdfList = natsorted(glob('{}/*S[0-1][0-9].pdf'.format(pdfDir)))
pdfListZ = natsorted(glob('{}/*S[0-1][0-9]_zoom.pdf'.format(pdfDir)))
merger = PdfFileMerger()
for pdf in pdfList:
merger.append(pdf)
for pdfZ in pdfListZ:
merger.append(pdfZ)
merger.write('{}/{}_{}_SprlAvg_All.pdf'.format(pdfDir,flight,varStr))
for f in pdfList:
shutil.move(f,mvDir)
for fZ in pdfListZ:
shutil.move(fZ,mvDir)
if dirStr in ['CIP-ND_10s','CIP-MD_10s']:
pdfListA = natsorted(glob('{}/*S[0-1][0-9]_all.pdf'.format(pdfDir)))
pdfListAZ = natsorted(glob('{}/*S[0-1][0-9]_all_zoom.pdf'.format(pdfDir)))
mergerA = PdfFileMerger()
for pdfA in pdfListA:
mergerA.append(pdfA)
for pdfAZ in pdfListAZ:
mergerA.append(pdfAZ)
mergerA.write('{}/{}_{}_SepPSDs_All.pdf'.format(pdfDir,flight,varStr))
for fA in pdfListA:
shutil.move(fA,mvDir)
for fAZ in pdfListAZ:
shutil.move(fAZ,mvDir)
if dirStr in ['CIP-IWC-LWC-Temp_10s','CIP-TWCextndRatio_10s']:
pdfList = natsorted(glob('{}/*{}*.pdf'.format(pdfDir,varStr)))
merger = PdfFileMerger()
for pdf in pdfList:
merger.append(pdf)
merger.write('{}/{}_{}_All.pdf'.format(pdfDir,flight,varStr))
for f in pdfList:
shutil.move(f,mvDir)