NTC Bathy Conversion

This commit is contained in:
Alexander Rey 2021-09-09 17:57:25 -04:00
parent 060345d111
commit 785f39de3e
4 changed files with 270 additions and 0 deletions

View File

@ -5,4 +5,7 @@
<orderEntry type="jdk" jdkName="Python 3.8 (D3DFM)" jdkType="Python SDK" /> <orderEntry type="jdk" jdkName="Python 3.8 (D3DFM)" jdkType="Python SDK" />
<orderEntry type="sourceFolder" forTests="false" /> <orderEntry type="sourceFolder" forTests="false" />
</component> </component>
<component name="PyDocumentationSettings">
<option name="renderExternalDocumentation" value="true" />
</component>
</module> </module>

7
NTC_DFM/.idea/other.xml Normal file
View File

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="PySciProjectComponent">
<option name="PY_SCI_VIEW" value="true" />
<option name="PY_SCI_VIEW_SUGGESTED" value="true" />
</component>
</project>

6
NTC_DFM/.idea/vcs.xml Normal file
View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$/.." vcs="Git" />
</component>
</project>

View File

@ -0,0 +1,254 @@
# -*- coding: utf-8 -*-
"""
Created on Wed Sep 16 12:25:31 2020
@author: aforsythe
Copied from "\\srv-ott3\Projects\11934.201 Newtown Creek TPP Privileged and Confidential\06_Models\02_EFDC\01_Bathy\Bathy_Conversion.py"
_AJMR
"""
import pandas as pd
import cartopy.crs as ccrs
import contextily as ctx
import matplotlib.pyplot as plt
# Assign path
dataPath = '//srv-ott3/Projects/11934.201 Newtown Creek TPP Privileged and Confidential/06_Models/02_EFDC/01_Bathy/'
mapbox = 'https://api.mapbox.com/styles/v1/alexander0042/ckemxgtk51fgp19nybfmdcb1e/tiles/256/{z}/{x}/{y}@2x?access_token=pk.eyJ1IjoiYWxleGFuZGVyMDA0MiIsImEiOiJjazVmdG4zbncwMHY4M2VrcThwZGUzZDFhIn0.w6oDHoo1eCeRlSBpwzwVtw'
#%% Read in Source 1
S1 = pd.read_csv(dataPath + '2012_March_LiDAR_XYZ_V2.csv')
# Process Source 1
S1 = S1.rename(columns={'ELEV':'Z_FT'})
#delete all rows where elevation is above 0 from S1
PlusZero = S1[S1['Z_FT'] >= 0].index
S1 = S1.drop(PlusZero)
S1['Z_FT'] *=-1
#%% Plot Source 1
# Create plot
fig, axes = plt.subplots(nrows=1, ncols=1,subplot_kw={'projection': ccrs.epsg(32118)}, figsize=(12, 12))
#axes.set_xlim(297579, 309365)
#axes.set_ylim(58211, 67565)
axes.set_xlim(305900, 306400)
axes.set_ylim(61500, 62200)
pltDat = axes.scatter(pd.to_numeric(S1.X)*0.3048, pd.to_numeric(S1.Y)*0.3048,
c=pd.to_numeric(S1.Z_FT)*0.3048, vmin=0, vmax=10, marker='.', s=40)
ctx.add_basemap(axes, source=mapbox, crs='EPSG:32118')
cbar = fig.colorbar(pltDat, ax=axes, shrink=0.95)
cbar.set_label('Elevation [mNAVD88]')
axes.set_title('2012_March_LiDAR_XYZ_V2')
plt.show()
#%% Read in source 2, drop columns and rename
S2 = pd.read_csv(dataPath + 'H11353_2m_NAD83SP_NY_LongIsland3104_USFT_depth.csv')
S2 = S2.drop(['FID'], axis=1)
S2 = S2.rename(columns={'X_SP':'X','Y_SP':'Y'})
#%% Plot Source 2
fig, axes = plt.subplots(nrows=1, ncols=1,subplot_kw={'projection': ccrs.epsg(32118)}, figsize=(12, 12))
axes.set_xlim(297579, 309365)
axes.set_ylim(58211, 67565)
pltDat = axes.scatter(pd.to_numeric(S2.X)*0.3048, pd.to_numeric(S2.Y)*0.3048,
c=pd.to_numeric(S2.Z_FT)*0.3048, vmin=0, vmax=40)
ctx.add_basemap(axes, source=mapbox, crs='EPSG:32118')
cbar = fig.colorbar(pltDat, ax=axes, shrink=0.95)
cbar.set_label('Elevation [mNAVD88]')
axes.set_title('H11353_2m_NAD83SP_NY_LongIsland3104_USFT_depth')
plt.show()
#%% read in source 3 and rename
col_names = ["X","Y","Z_FT"]
S3 = pd.read_csv(dataPath + 'NC_2012_MBES_NAVD88_P2_average_2ft.csv', sep=' ',names=col_names)
#%% Plot Source 3
fig, axes = plt.subplots(nrows=1, ncols=1,subplot_kw={'projection': ccrs.epsg(32118)}, figsize=(12, 12))
#axes.set_xlim(297579, 309365)
#axes.set_ylim(58211, 67565)
axes.set_xlim(305900, 306500)
axes.set_ylim(61500, 62200)
pltDat = axes.scatter(pd.to_numeric(S3.X)*0.3048, pd.to_numeric(S3.Y)*0.3048,
c=pd.to_numeric(S3.Z_FT)*0.3048, vmin=0, vmax=10, marker='.', s=40)
ctx.add_basemap(axes, source=mapbox, crs='EPSG:32118')
cbar = fig.colorbar(pltDat, ax=axes, shrink=0.95)
cbar.set_label('Elevation [mNAVD88]')
axes.set_title('NC_2012_MBES_NAVD88_P2_average_2ft')
plt.show()
#%% read in source 4, drop columns and rename
S4 = pd.read_csv(dataPath + 'Harbour_Sounding_point_NAD83SP_NY_LongIsland3104_USFT.csv')
S4 = S4.drop(['FID'], axis=1)
S4 = S4.drop(['Zm'], axis=1)
S4 = S4.rename(columns={'Zft':'Z_FT'})
#%% Plot Source 4
fig, axes = plt.subplots(nrows=1, ncols=1,subplot_kw={'projection': ccrs.epsg(32118)}, figsize=(12, 12))
axes.set_xlim(297579, 309365)
axes.set_ylim(58211, 67565)
pltDat = axes.scatter(pd.to_numeric(S4.X)*0.3048, pd.to_numeric(S4.Y)*0.3048,
c=pd.to_numeric(S4.Z_FT)*0.3048, vmin=0, vmax=40, marker='.', s=20)
ctx.add_basemap(axes, source=mapbox, crs='EPSG:32118')
cbar = fig.colorbar(pltDat, ax=axes, shrink=0.95)
cbar.set_label('Elevation [mNAVD88]')
axes.set_title('Harbour_Sounding_point_NAD83SP_NY_LongIsland3104_USFT')
plt.show()
#%% read in source 5, drop columns and rename
S5 = pd.read_csv(dataPath + 'Harbour_Sounding_point_EastRiver.csv')
S5 = S5.drop(['FID'], axis=1)
S5 = S5.drop(['Zm'], axis=1)
S5 = S5.rename(columns={'Z_ft':'Z_FT'})
#%% Plot Source 5
fig, axes = plt.subplots(nrows=1, ncols=1,subplot_kw={'projection': ccrs.epsg(32118)}, figsize=(12, 12))
axes.set_xlim(297579, 309365)
axes.set_ylim(58211, 67565)
pltDat = axes.scatter(pd.to_numeric(S5.X)*0.3048, pd.to_numeric(S5.Y)*0.3048,
c=pd.to_numeric(S5.Z_FT)*0.3048, vmin=0, vmax=40, marker='.', s=20)
ctx.add_basemap(axes, source=mapbox, crs='EPSG:32118')
cbar = fig.colorbar(pltDat, ax=axes, shrink=0.95)
cbar.set_label('Elevation [mNAVD88]')
axes.set_title('Harbour_Sounding_point_EastRiver')
plt.show()
#%% Merged basin plot
fig, axes = plt.subplots(nrows=1, ncols=1,subplot_kw={'projection': ccrs.epsg(32118)}, figsize=(12, 12))
#axes.set_xlim(297579, 309365)
#axes.set_ylim(58211, 67565)
axes.set_xlim(305900, 306600)
axes.set_ylim(61500, 62200)
pltDat = axes.scatter(pd.to_numeric(S3.X)*0.3048, pd.to_numeric(S3.Y)*0.3048,
c=pd.to_numeric(S3.Z_FT)*0.3048, vmin=0, vmax=10, marker='.', s=40)
pltDat2 = axes.scatter(pd.to_numeric(S1.X)*0.3048, pd.to_numeric(S1.Y)*0.3048,
c=pd.to_numeric(S1.Z_FT)*0.3048, vmin=0, vmax=10, marker='o', s=100, edgecolors='k')
ctx.add_basemap(axes, source=mapbox, crs='EPSG:32118')
cbar = fig.colorbar(pltDat, ax=axes, shrink=0.95)
cbar.set_label('Elevation [mNAVD88]')
axes.set_title('Merged Basin Plot: S3 base, S1')
plt.show()
#%% Merged Creek Mouth
fig, axes = plt.subplots(nrows=1, ncols=1,subplot_kw={'projection': ccrs.epsg(32118)}, figsize=(12, 12))
axes.set_xlim(302206, 304408)
axes.set_ylim(62354, 64085)
pltDat = axes.scatter(pd.to_numeric(S2.X)*0.3048, pd.to_numeric(S2.Y)*0.3048,
c=pd.to_numeric(S2.Z_FT)*0.3048, vmin=0, vmax=40, marker='.', s=40)
pltDat2 = axes.scatter(pd.to_numeric(S4.X)*0.3048, pd.to_numeric(S4.Y)*0.3048,
c=pd.to_numeric(S4.Z_FT)*0.3048, vmin=0, vmax=40, marker='o', s=100, edgecolors='k')
ctx.add_basemap(axes, source=mapbox, crs='EPSG:32118')
cbar = fig.colorbar(pltDat, ax=axes, shrink=0.95)
cbar.set_label('Elevation [mNAVD88]')
axes.set_title('Merged NTC Mouth Plot: S2 base, S4')
plt.show()
#%% Merged South End
fig, axes = plt.subplots(nrows=1, ncols=1,subplot_kw={'projection': ccrs.epsg(32118)}, figsize=(12, 12))
axes.set_xlim(301319, 303261)
axes.set_ylim(59067, 60555)
pltDat = axes.scatter(pd.to_numeric(S2.X)*0.3048, pd.to_numeric(S2.Y)*0.3048,
c=pd.to_numeric(S2.Z_FT)*0.3048, vmin=0, vmax=40, marker='.', s=40)
pltDat2 = axes.scatter(pd.to_numeric(S5.X)*0.3048, pd.to_numeric(S5.Y)*0.3048,
c=pd.to_numeric(S5.Z_FT)*0.3048, vmin=0, vmax=40, marker='o', s=100, edgecolors='k')
ctx.add_basemap(axes, source=mapbox, crs='EPSG:32118')
cbar = fig.colorbar(pltDat, ax=axes, shrink=0.95)
cbar.set_label('Elevation [mNAVD88]')
axes.set_title('Merged East River Plot: S2 base, S5')
plt.show()
#%% Export
# Priority Order:
# S3: NC_2012_MBES_NAVD88_P2_average_2ft
# Complete set for creek
Out3 = S3
Out3.iloc[:,0] = Out3.iloc[:,0]*0.3048
Out3.iloc[:,1] = Out3.iloc[:,1]*0.3048
Out3.iloc[:,2] = Out3.iloc[:,2]*0.3048
Out3.to_csv('C:/Users/arey/files/Projects/Newtown/ModelBathy/S3_NC_2012_MBES_NAVD88_P2_average_2ft.xyz',sep=' ',header=False,index=False)
# S1: 2012_March_LiDAR_XYZ_V2
# Scattered points covering additional creek areas
Out1 = S1
Out1.iloc[:,0] = Out1.iloc[:,0]*0.3048
Out1.iloc[:,1] = Out1.iloc[:,1]*0.3048
Out1.iloc[:,2] = Out1.iloc[:,2]*0.3048
Out1.to_csv('C:/Users/arey/files/Projects/Newtown/ModelBathy/S1_2012_March_LiDAR_XYZ_V2.xyz',sep=' ',header=False,index=False)
# S2: H11353_2m_NAD83SP_NY_LongIsland3104_USFT_depth
# Complete East River Set
Out2 = S2
Out2.iloc[:,0] = Out2.iloc[:,0]*0.3048
Out2.iloc[:,1] = Out2.iloc[:,1]*0.3048
Out2.iloc[:,2] = Out2.iloc[:,2]*0.3048
Out2.to_csv('C:/Users/arey/files/Projects/Newtown/ModelBathy/S2_H11353_2m_NAD83SP_NY_LongIsland3104_USFT_depth.xyz',sep=' ',header=False,index=False)
# S4: Harbour_Sounding_point_NAD83SP_NY_LongIsland3104_USFT
# Sounding Points at mouth of river
Out4 = S4
Out4.iloc[:,0] = Out4.iloc[:,0]*0.3048
Out4.iloc[:,1] = Out4.iloc[:,1]*0.3048
Out4.iloc[:,2] = Out4.iloc[:,2]*0.3048
Out4.to_csv('C:/Users/arey/files/Projects/Newtown/ModelBathy/S4_Harbour_Sounding_point_NAD83SP_NY_LongIsland3104_USFT.xyz',sep=' ',header=False,index=False)
# S5: Harbour_Sounding_point_NAD83SP_NY_LongIsland3104_USFT
# Sounding Points in East River
Out5 = S5
Out5.iloc[:,0] = Out5.iloc[:,0]*0.3048
Out5.iloc[:,1] = Out5.iloc[:,1]*0.3048
Out5.iloc[:,2] = Out5.iloc[:,2]*0.3048
Out5.to_csv('C:/Users/arey/files/Projects/Newtown/ModelBathy/S5_Harbour_Sounding_point_EastRiver.xyz',sep=' ',header=False,index=False)