Nothing
## ---- echo = FALSE------------------------------------------------------------
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>",
eval = Sys.getenv("PRISM_AUTHOR") == "true"
)
# knitr hook to truncate long output. See:
# https://stackoverflow.com/q/23114654/3362993
hook_output <- knitr::knit_hooks$get("output")
knitr::knit_hooks$set(output = function(x, options) {
if (!is.null(n <- options$out.lines)) {
x <- unlist(strsplit(x, "\n"))
if (length(x) > n) {
# truncate the output
x <- c(head(x, n), "....\n")
}
x <- paste(x, collapse = "\n")
}
hook_output(x, options)
})
## ----eval=FALSE---------------------------------------------------------------
# install.packages("prism")
## ----start, eval=FALSE--------------------------------------------------------
# # install.packages("devtools")
# library(devtools)
# install_github("ropensci/prism")
## ----prism setup--------------------------------------------------------------
# library(prism)
# prism_set_dl_dir("~/prismtmp")
## ----get normals,results=FALSE, eval=FALSE------------------------------------
# # Download the January - June 30-year averages at 4km resolution
# get_prism_normals(type="tmean", resolution = "4km", mon = 1:6, keepZip = FALSE)
#
# # Download the 30-year annual average precip and annual average temperature
# get_prism_normals("ppt", "4km", annual = TRUE, keepZip = FALSE)
# get_prism_normals("tmean", "4km", annual = TRUE, keepZip = FALSE)
## ----get daily monthly, message=FALSE, results=FALSE, eval=FALSE--------------
# get_prism_dailys(
# type = "tmean",
# minDate = "2013-06-01",
# maxDate = "2013-06-14",
# keepZip = FALSE
# )
# get_prism_monthlys(type = "tmean", year = 1982:2014, mon = 1, keepZip = FALSE)
# get_prism_annual("ppt", years = 2000:2015, keepZip = FALSE)
## ----listingFiles, out.lines=10-----------------------------------------------
# ## Truncated to keep file list short
# prism_archive_ls()
## ----moreListing, out.lines=5-------------------------------------------------
# ## Truncated to keep file list short
# pd_to_file(prism_archive_ls())
#
# pd_get_name(prism_archive_ls())
## -----------------------------------------------------------------------------
# # we know we have downloaded June 2013 daily data, so lets search for those
# prism_archive_subset("tmean", "daily", mon = 6)
#
# # or we can look for days between June 7 and June 10
# prism_archive_subset(
# "tmean", "daily", minDate = "2013-06-07", maxDate = "2013-06-10"
# )
## ----quick_plot,fig.height=5,fig.width=7--------------------------------------
# # Plot the January 30-year average temperatures
# # grab only the first value, just in case multiple values are returned
# jmean <- prism_archive_subset(
# "tmean", "monthly normals", mon = 1, resolution = "4km"
# )
# pd_image(jmean)
## ----raster_math,fig.height=5,fig.width=7-------------------------------------
# library(raster)
# # knowing the name of the files you are after allows you to find them in the
# # list of all files that exist
# # jnorm_name <- "PRISM_tmean_30yr_normal_4kmM2_01_bil"
# # j2013_name <- "PRISM_tmean_stable_4kmM3_201301_bil"
# # but we will use prism_archive_subset() to find the files we need
#
# jnorm <- prism_archive_subset(
# "tmean", "monthly normals", mon = 1, resolution = "4km"
# )
# j2013 <- prism_archive_subset("tmean", "monthly", years = 2013, mon = 1)
#
# # raster needs a full path, not the "short" prism data name
# jnorm <- pd_to_file(jnorm)
# j2013 <- pd_to_file(j2013)
#
# ## Now we'll load the rasters.
# jnorm_rast <- raster(jnorm)
# j2013_rast <- raster(j2013)
#
# # Now we can do simple subtraction to get the anomaly by subtracting 2014
# # from the 30 year normal map
# anomCalc <- function(x, y) {
# return(x - y)
# }
#
# anom_rast <- raster::overlay(j2013_rast,jnorm_rast,fun = anomCalc)
#
# plot(anom_rast)
## ----plot_Boulder,fig.height=5,fig.width=7, results=FALSE---------------------
# library(ggplot2)
# # data already exist in the prism dl dir
# boulder <- c(-105.2797, 40.0176)
#
# # prism_archive_subset() will return prism data that matches the specified
# # variable, time step, years, months, days, etc.
# to_slice <- prism_archive_subset("tmean", "monthly", mon = 1)
# p <- pd_plot_slice(to_slice, boulder)
#
# # add a linear average and title
# p +
# stat_smooth(method="lm", se = FALSE) +
# theme_bw() +
# ggtitle("Average January temperature in Boulder, CO 1982-2014")
## ----leaflet,eval=F-----------------------------------------------------------
# library(leaflet)
# library(raster)
# library(prism)
#
# # 30-year normal average temperature have already been downloaded for
# norm <- prism_archive_subset(
# "tmean", "annual normals", resolution = "4km"
# )
# rast <- raster(pd_to_file(norm))
#
# # Create color palette and plot
# pal <- colorNumeric(
# c("#0000FF", "#FFFF00", "#FF0000"),
# values(rast),
# na.color = "transparent"
# )
#
# leaflet() %>%
# addTiles(
# urlTemplate = 'http://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}'
# ) %>%
# addRasterImage(rast, colors = pal, opacity=.65) %>%
# addLegend(pal = pal, values = values(rast), title = "Deg C")
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.