# load data in 'global' chunk so it can be shared by all users of the dashboard library(shiny) library(semantic.dashboard) library(ggplot2) library(plotly) library(DT) suppressMessages(library(rgbif)) suppressMessages(library(sp)) suppressMessages(library(spatialEco)) suppressMessages(library(ggmap)) suppressMessages(library(plyr)) suppressMessages(library(htmlTable)) suppressMessages(library(bdvis)) suppressMessages(library(plotly)) suppressMessages(library(pracma)) suppressMessages(library(xtable)) suppressMessages(library(htmlTable)) suppressMessages(library(taxize)) suppressMessages(library(rgbif)) suppressMessages(library(sp)) suppressMessages(library(spatialEco)) suppressMessages(library(ggmap)) suppressMessages(library(plyr)) suppressMessages(library(htmlTable)) suppressMessages(library(bdvis)) suppressMessages(library(plotly)) suppressMessages(library(pracma)) suppressMessages(library(xtable)) suppressMessages(library(htmlTable)) # d1 <- occ_data( # country = "AU", # Country code for australia # classKey= 359, # Class code for mammalia # limit=1000, # hasCoordinate = T # # ) # # # d1$data$taxonRank[20]<-NA # # d1$data$taxonRank[40]<-NA # # d1$data$taxonRank[100]<-NA # # d1$data$taxonRank[150]<-NA # X<-d1$data # # colscale <- c(semantic_palette[["red"]], semantic_palette[["green"]], semantic_palette[["blue"]])
BIODIVERSITY DATA INPUT
textInput("countryCode", label=h3("CountryCode"), value = "AU", placeholder = "Enter the country code for example AU for Australia")
numericInput("classID", label = h3("ClassID"),value = 359, min = 10, max = 1000)
numericInput("obs", label = h3("Number of Observations"),value = 1000, min = 100, max = 10000)
selectCountry<-reactive({ num<-reactive(input$countryCode) return(num()) })
selectClassID<-reactive({ num<-reactive(input$classID) return(num()) })
selectObservations<-reactive({ num<-reactive(input$obs) return(num()) })
DATA<-reactive({ d1 <- occ_data( country = selectCountry(), # Country code for australia classKey= selectClassID(), # Class code for mammalia limit=selectObservations(), hasCoordinate = T ) # d1$data$taxonRank[20]<-NA # d1$data$taxonRank[40]<-NA # d1$data$taxonRank[100]<-NA # d1$data$taxonRank[150]<-NA return(X<-d1$data) })
BIODIVERSITY DATA VISUALIZATION
selectInput("clusterNum", label = h3("Taxonomic Level"), choices = list( "KINGDOM" = "KINGDOM", "PHYLUM" = "PHYLUM", "CLASS" = "CLASS", "ORDER" = "ORDER","FAMILY" = "FAMILY","GENUS"="GENUS","SPECIES"="SPECIES","SUBSPECIES"="SUBSPECIES"), selected = "GENUS")
Plotting the data based on taxon rank. Default data used is Australian Mammals.
# selectedData <- reactive({ #X<-subset(X,select=c(eventDate,month,year)) X<-DATA() num <- reactive((input$clusterNum)) data_taxon<-subset(X,X$taxonRank==num()) return(data_taxon) })
# selectedColumn <- reactive({ #X<-subset(X,select=c(eventDate,month,year)) X<-DATA() num <- reactive((input$clusterNum)) #num1<-num() #col_num col_num<-which( colnames(X)==(tolower(num()))) return(col_num) })
library(ggplot2) renderPlot({ #X1<-selectedData() X<-DATA() ggplot(X, aes(X$taxonRank)) +geom_bar(fill = semantic_palette[["green"]])+ labs(y="Count", x = "Taxonomic Level") #c_2<-ddply(selectedData(),~year,summarise,frequency=length((year))) #ggplot(c_2, aes(x=year,y=frequency)) + geom_bar(stat="identity") })
library(ggplot2) renderPlotly({ X2<-selectedData() var<-selectedColumn() #X3<-X2[!is.na(X2$var),] if(var>0){ dat<-X2[,var] Z<-count(X2[,var]) plot_ly(Z, labels = Z[,1],values=~freq, type = 'pie', textposition = 'inside', textinfo = 'label+percent', insidetextfont = list(color = '#FFFFFF'), hoverinfo = 'text') }else{ NULL } })
library(bdvis) renderPlot({ data_bdvis<-selectedData() data_bdvis<-subset(data_bdvis,select=c(eventDate,month,year)) if(nrow(data_bdvis)==0){ NULL }else{ names(data_bdvis)[names(data_bdvis) == "eventDate"] <- "Date_collected" chronohorogram(data_bdvis) } })
library(bdvis) renderPlot({ data_tempolar<-selectedData() data_tempolar<-subset(data_tempolar,select=c(eventDate,month,year)) if(nrow(data_tempolar)==0){ NULL }else{ names(data_tempolar)[names(data_tempolar) == "eventDate"] <- "Date_collected" tempolar(data_tempolar,timescale = "m",plottype = "r") } })
library(bdvis) renderPlot({ data_taxotree<-selectedData() data_taxotree<-subset(data_taxotree,select=c(family,genus)) data_taxotree_na<-na.omit(data_taxotree) if(nrow(data_taxotree_na)==0 || ncol(data_taxotree_na)<2){ NULL }else{ names(data_taxotree)[names(data_taxotree) == "family"] <- "Family" names(data_taxotree)[names(data_taxotree) == "genus"] <- "Genus" taxotree(data_taxotree) } })
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.