Skip to content

Instantly share code, notes, and snippets.

View SwampThingPaul's full-sized avatar

Paul Julian SwampThingPaul

View GitHub Profile
@SwampThingPaul
SwampThingPaul / recurrence_example
Created October 19, 2022 18:52
recurrence interval analysis
## Example Recurrence (or return) interval analysis
## functions to calculate return interval for
## empirical, Gumbel and Log Pearson distributions
library(lmom)
recur.fun=function(x){
#Sorting data by decreasing order
sorted.values<-sort(x,decreasing=T)
@SwampThingPaul
SwampThingPaul / ExampleKrig.R
Last active September 26, 2022 16:58
Example Krige interpolation
## Example spatial interpolation
# GIS libraries
library(rgdal)
library(rgeos)
library(raster)
# kriging
library(gstat)
@SwampThingPaul
SwampThingPaul / ArcGIS_surverEx.R
Created June 14, 2022 16:41
Example to Query FDEP ArcGIS REST Server for blue-green algae
## Objective: To query FDEP's ArcGIS REST server via R
## You must have server link and know a little about the dataset.
##
## Due to the query limit and area of interest, query is broken into two regions
### Libraries
library(httr)
library(jsonlite)
path <- 'https://services1.arcgis.com/nRHtyn3uE1kyzoYc/arcgis/rest/services/VIEW_FL_Algal_Bloom_Site_Visits_1/FeatureServer/0/query?'
@SwampThingPaul
SwampThingPaul / Map_Hist.R
Last active June 7, 2022 14:31
Multi panel plot
library(sp)
library(rgeos)
library(rworldmap)
# epsg.io
wgs=CRS("+init=epsg:4326")
map_dat=getMap()
map_dat=spTransform(map_dat,wgs)
# This is a very general script to perform gif animations from
# space-time Generalized Additive Model predictions
# GIS libraries
library(rgdal)
library(rgeos)
library(raster)
library(tmap)
# GAM libraries
@SwampThingPaul
SwampThingPaul / RasterPlotting.R
Last active April 21, 2022 19:04
generalized code for plotting rasters/interpolated maps
# GIS libraries
library(sp)
library(rgdal)
library(rgeos)
library(raster)
library(mapmisc)
## defines the coordinate reference system
utm17=CRS("+init=epsg:26917")
@SwampThingPaul
SwampThingPaul / delimExample.jl
Created March 24, 2022 12:08
Learning Julia
using DelimitedFiles
using DataFrames
# HTML Path for data
dat_path="http://recondata.sccf.org/cgi-data/nph-data.cgi?x=utc_date&amp;y=salinity,temperature&amp;min_date=20210101&amp;max_date=20220301&amp;node=11&amp;data_format=text"
# Just to read the data as a tab delimited file
recon_data=readdlm(download(dat_path),'\t',skipstart=1,header=true)
## From what I can find on how to change the file
@SwampThingPaul
SwampThingPaul / seaPlot.R
Last active February 4, 2022 13:10
seasonal plot with trend line
# Load Library
library(mblm); # For trend line
# Commented out - added function in script
# devtools::install_github("SwampThingPaul/AnalystHelper")
# library(AnalystHelper); # some plotting helper functions like axis_fun(...), pt_lines(...), etc
## axis function from AnalystHelper package
axis_fun=function (side, at, at2, labels, cex.axis = 1, line = -0.25,
lwd = 1, maj.tcl = -0.6, min.tcl = -0.3, las = 1, axisLine = 0,
## Using as.Date with an arbitrary year you can define each peirod
pre.emg.period=seq(as.Date("2021-03-01"),as.Date("2021-03-20"),"1 days")
emg.period=seq(as.Date("2021-03-21"),as.Date("2021-04-14"),"1 days")
mate.period=seq(as.Date("2021-04-15"),as.Date("2021-05-15"),"1 days")
gest.period=seq(as.Date("2021-05-16"),as.Date("2021-08-23"),"1 days")
post.part.period=seq(as.Date("2021-08-24"),as.Date("2021-10-31"),"1 days")
# fake data
dat=data.frame(Date=seq(as.Date("2019-01-01"),as.Date("2022-12-31"),"1 days"))
dat$Yr=as.numeric(format(dat$Date,'%Y'))
b2=seq(-100,500,20)
pal2=c(colorRampPalette(c("blue","grey90"))(length(b2[b2<0])),
colorRampPalette(c("grey90",'red'))(length(b2[b2>0])))
plot(1:length(pal2),pch=21,cex=2,bg=pal2)