web-dev-qa-db-ja.com

光沢のあるRのツールチップ?

ShinyRアプリケーションにツールチップが必要です。それを達成する簡単な方法はありますか?今のところ、密度マップを作成していますが、スライダーYEARの上にマウスを置くと、「ここをクリックして何年もスライドする」という簡単なツールチップが必要です。

ユーザーインターフェース:

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)
    })
})

助けてくれてありがとう。

53
Sabin

これを置き換えることができるはずだと思います:

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"
    )
)
57
Joe Cheng

これは少し簡単でエレガントな方法です。

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を使用することもできます。

42