Skip to content

Instantly share code, notes, and snippets.

View dbuscombe-usgs's full-sized avatar
🎯
Focusing

Daniel Buscombe dbuscombe-usgs

🎯
Focusing
View GitHub Profile
@dbuscombe-usgs
dbuscombe-usgs / dat2mat.py
Created October 16, 2015 16:39
Utility for converting PyHum's memory mapped numpy arrays into matlab/octave format files
from Tkinter import Tk
from tkFileDialog import askopenfilename, askdirectory
import tkMessageBox
import os
from scipy.io import loadmat, savemat
import numpy as np
def get_mmap_data(filename, dtype, shape):
with open(filename, 'r') as ff:
fp = np.memmap(ff, dtype=dtype, mode='r', shape=shape)
@dbuscombe-usgs
dbuscombe-usgs / plot_merge_crop.py
Created September 17, 2015 18:37
plot a merged port and sidescan, cropping to a user-specified maximum range
import matplotlib.pyplot as plt
import os
import numpy as np
from scipy.io import loadmat
sonpath = '/home/mydata/sonpath'
humfile = '/home/mydata/humfile.DAT'
# maximum range in m to shwo
maxy = 35
@dbuscombe-usgs
dbuscombe-usgs / nonsmooth_kml.py
Created September 9, 2015 18:27
creating a trackline kml in PyHum using non-smoothed easting/northings
from scipy.io import loadmat
import simplekml
import pyproj
import numpy as np
my_meta_file = '/home/dbuscombe/pyhum_test/testclipmeta.mat'
cs2cs_args="epsg:26949"
metadat = loadmat(my_meta_file)
@dbuscombe-usgs
dbuscombe-usgs / hillshade.py
Created March 27, 2015 12:48
shaded relief algorithm in python
import numpy as np
def cart2pol(x, y):
'''
cartesian to polar coordinates
'''
theta = np.arctan2(y, x)
rho = np.sqrt(x**2 + y**2)
return (theta, rho)
@dbuscombe-usgs
dbuscombe-usgs / running_stats.py
Last active August 29, 2015 14:02
example application of using RunningStats class for running mean calcs
import numpy as np
import matplotlib.pylab as plt
# generate some data
x = np.random.rand(1000,1)
# get the class
import RunningStats
# get an instance of the class
@dbuscombe-usgs
dbuscombe-usgs / conv_stats.py
Created June 8, 2014 22:27
example to show convergence on global mean using runningstats
import numpy as np
import matplotlib.pylab as plt
# generate some data
x = np.random.rand(1000,1)
# get the class
import RunningStats
# get an instance of the class
@dbuscombe-usgs
dbuscombe-usgs / simple_stats.py
Created June 8, 2014 22:24
simple implementation of runningstats class
import numpy as np
# generate some data
x = np.random.rand(1000,1)
# get the class
import RunningStats
# get an instance of the class
rs = RunningStats.RunningStats()
@dbuscombe-usgs
dbuscombe-usgs / swig_runningstats.sh
Created June 8, 2014 22:20
swig command to create RunningStats module
swig -c++ -python RunningStats.i
@dbuscombe-usgs
dbuscombe-usgs / RunningStats.i
Created June 8, 2014 22:19
SWIG file for RunningStats.cpp
/* File: RunningStats.i */
%module RunningStats
%{
#define SWIG_FILE_WITH_INIT
#include "RunningStats.h"
%}
%include "RunningStats.h"
@dbuscombe-usgs
dbuscombe-usgs / setup.py
Created June 8, 2014 22:16
distutils setup for for compiling RunningStats C++ module (http://www.johndcook.com/standard_deviation.html) using SWIG
"""
setup.py file for RunningStats
"""
from distutils.core import setup, Extension
RunningStats_module = Extension('_RunningStats',
sources=['RunningStats_wrap.cxx', 'RunningStats.cpp'],
)