Подсказка на блестящей R?
Я просто хочу иметь подсказку в своем блестящем R-приложении. Есть ли простой способ достичь этого? На данный момент я создаю карту плотности, и я хочу, чтобы простой инструмент показывал "нажмите здесь, чтобы скользить по годам", наведите указатель мыши на ползунок ГОД.
Пользовательский интерфейс:
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%")
)
))
Код сервера:
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)
})
})
Спасибо за помощь.
Ответы
Ответ 1
Я думаю, вы должны это заменить:
sliderInput("slider_year", "YEAR:",
min = 2001, max = 2011, value = 2009,
format="####", locale="us"
)
с этим:
tags$div(title="Click here to slide through years",
sliderInput("slider_year", "YEAR:",
min = 2001, max = 2011, value = 2009,
format="####", locale="us"
)
)
Ответ 2
Это немного проще и элегантнее.
library(shinyBS) # Additional Bootstrap Controls
## From ui.R: Adds a tooltip to element with inputId = "someInput"
## with text, "This is an input.", that appears to the left on hover.
bsTooltip(id = "someInput", title = "This is an input",
placement = "left", trigger = "hover")
## From server.R: Add the same tooltip as above
addTooltip(session, id = "someInput", title = "This is an input.",
placement = "left", trigger = "hover")
Вы можете добавить подсказку в ui.R
или server.R
,
Дополнительно вы также можете использовать Popover.