Sabin Sabin - 3 months ago 17
R Question

tooltip on shiny R?

I simply want to have a tool-tip in my shiny R application. Is there any easy way to achieve that? For now, I am creating a density map and I want a simple tool-tip showing "click here to slide through years" while hovering the mouse over slider YEAR.

User Interface:


library(shiny)
shinyUI(pageWithSidebar(
headerPanel("Density Map"),
sidebarPanel(
sliderInput("slider_year", "YEAR:",
min = 2001, max = 2011, value = 2009,
format="####", locale="us"
)
)
),

mainPanel(
plotOutput("event_heatmap_map", width = "100%", height = "100%")
)
))




Server Code:

library(shiny)
library(ggmap)
library(ggplot2)
mydata <- read.csv("/var/shiny-server/www/dMetrics.csv")
shinyServer(function(input, output) {
output$event_heatmap_map <- renderPlot(width = "auto", height = 640,{

slice_year <- mydata[mydata$YEAR==input$slider_year,]
map <- get_map(c(lon = -55.3632715, lat = 31.7632836), zoom = 3, source = 'google', maptype = c("terrain"), messaging = FALSE, color = 'color')
world <- ggmap(map)
world <- world + stat_density2d(data = slice_year, aes(x = WEST, y = NORTH, fill = ..level.., alpha = ..level..), show_guide = FALSE, geom = "polygon", na.rm = TRUE) + scale_fill_gradient(name="Density", low="maroon", high="yellow", guide = 'colorbar')
plot(world)
})
})


Thanks for the help.

Answer

I think you should be able to replace this:

sliderInput("slider_year", "YEAR:", 
            min = 2001, max = 2011, value = 2009, 
            format="####", locale="us"
)

with this:

tags$div(title="Click here to slide through years",
    sliderInput("slider_year", "YEAR:", 
                min = 2001, max = 2011, value = 2009, 
                format="####", locale="us"
    )
)