Remove deprecated functions and imports

etta-drone
Dan Howe 6 years ago
parent d704e47ca5
commit def491cea5

@ -13,102 +13,19 @@
import os import os
import io import io
import re import re
import math
import datetime
import subprocess import subprocess
import pandas as pd
import numpy as np import numpy as np
import neilson_volumes import pandas as pd
from cycler import cycler
import matplotlib.pyplot as plt import matplotlib.pyplot as plt
from matplotlib.ticker import MultipleLocator from matplotlib.ticker import MultipleLocator
import datetime
import xlsxwriter
import math
from cycler import cycler
import neilson_volumes
from survey_tools import call_lastools, extract_pts, update_survey_output from survey_tools import call_lastools, extract_pts, update_survey_output
def profile_plots_volume(csv_loc, LL_xlsx, output_xlsx, graph_location):
#get a list of all csvs which will each be analysed
file_list=[]
for file in os.listdir(csv_loc):
if file.endswith(".csv"):
file_list.append(os.path.join(csv_loc, file))
#now read the LL file
LL_limit_file=pd.read_excel(LL_xlsx, 'profile_locations')
LL_info={}
for i in range(0, len(LL_limit_file)):
#make a dictionary that alllows you to search the LL
prof="%s_%s" % (LL_limit_file['Profile'][i].split(" ")[0], LL_limit_file['Profile'][i].split(" ")[-1])
LL_info[prof]=LL_limit_file['Landward Limit'][i]
all_dates=[]
results_volume={}
for file in file_list:
#read the profile data - this should have all dates
profile_data=CC_split_profile(file)
profile=profile_data['info']['Profile']
#plot all of the profiles
print(profile)
plot_profiles(profile_data, profile, graph_location,LL_info[profile])
results_volume[profile]={}
#nowgo through each date and do a neilson volume calculations
for date in profile_data.keys():
if date!='info':
if date not in all_dates:
all_dates.append(date)
chainage=profile_data[date]['Chainage']
elevation=[0 if pd.isnull(profile_data[date]['Elevation'][i]) else profile_data[date]['Elevation'][i] for i in range(0, len(profile_data[date]['Elevation']))]
LL_limit=LL_info[profile]
#do a neilson calculation to get the ZSA volume
if len(elevation)>2:
#if there aren't enough available points don't do it
volume=neilson_volumes.volume_available(chainage, elevation, LL_limit)
if volume<0:
volume=0
print('%s %s has a negative volume available' % (profile, date))
else:
volume=0
results_volume[profile][date]=volume
#write an excel sheet which summarises the data
workbook = xlsxwriter.Workbook(output_xlsx)
worksheet=workbook.add_worksheet('Volumes')
row=0
col=0
worksheet.write(row, col, 'Profile')
for date in all_dates:
col=col+1
worksheet.write(row, col, date)
col=0
row=1
for prof in results_volume.keys():
worksheet.write(row, col, prof)
for date in all_dates:
col=col+1
try:
vol=results_volume[prof][date]
except KeyError:
print("error with profile %s on %s" % (prof, date))
vol=None
worksheet.write(row, col, vol)
col=0
row=row+1
return results_volume
def remove_temp_files(directory): def remove_temp_files(directory):
for f in os.listdir(directory): for f in os.listdir(directory):
os.unlink(os.path.join(directory, f)) os.unlink(os.path.join(directory, f))

Loading…
Cancel
Save