library('NOAAEQ') library(ggplot2) library(leaflet)
__NOAA EQ_ is package used to ultimately visualize data related to historic earthquakes. The data set comes from the National Oceanic and Atmospheric Administration (NOAA) set of historical data.
One of the primary components to any analysis in R is importing data into an R
object. Due to the standard naming convenctions of the file formats in NOAA data
and the static nature of the fields, the steps to import data have been built
into custom fuction: eq_clean_data
This function will not only read in the data
but also clean it for the repeatable analysis and visualization built into the package.
eq_clean_data()
provides multiple ways to read in the data due to the underlying
use of the reader::read_delim()
. The default is set to the standard .txt
file
layout of tab delimited; however, any delimted nature can be used when providing a
file
argument. Alternatively, one can proivde a data.frame
directly to be cleaned
if the data is already read into R
. An example data set from NOAA has been included in the package
and can be accessed as follows:
EQdata<-eq_clean_data(file=system.file("extdata", "signif.txt", package = "NOAAEQ")) print(head(EQdata))
eq_location_clean()
is used within eq_clean_data()
to split the Country from
the Location data. You should never need to use this function directly.
EQdata<-EQdata<-eq_clean_data(file=system.file("extdata", "signif.txt", package = "NOAAEQ")) #Compare the split location to original print(head(EQdata[,c("I_D","COUNTRY","LOCATION_NAME")]))
geom_timeline()
and geom_timeline_label()
are shorthand ways of adding a an
annotated timeline to the strong graphical arsenal of ggplot2
. The calls take
date filter arguments xmindate
and xmaxdate
that will limit the amount of data
that gets plotted. At this time, you need to pass consistent x, y, xmindate, and xmaxdate
to geom_timeline()
and geom_timeline_label()
so the timeilne makes sense.
Per standard ggplot2
functionality, many arguments can be passed through aes()
to control the
points and line colors, transparency, and so on.
p<- EQplotCountry<-ggplot2::ggplot(dplyr::filter(EQdata,COUNTRY %in% c("USA","CHINA")), mapping=ggplot2::aes(x=DATE,y=COUNTRY))+ geom_timeline(xmindate=lubridate::make_date(2015,1,1))+ geom_timeline_label(ggplot2::aes(orderdata=EQ_PRIMARY, label=LOCATION_NAME), xmindate=lubridate::make_date(2015,1,1),n_max=1) print(p)
NOAAEQ
leverages leaflet
package and leverages the longitude and latitude fields
to make interactive geographic map of the EQ data. The hovers are controlled with the annot_col
argument. Using the eq_create_label()
function, elaborate hover/pop-up informatoion can be
passed into annot_col
by simply stating the columns desired.
EQdata$hover_labels<-eq_create_label(EQdata) eq_map(EQdata,annot_col = "hover_labels")
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.