【发布时间】:2021-03-13 21:30:06
【问题描述】:
我在闪亮的应用程序中使用传单,我希望应用程序在用户单击地图后打开一个窗口,其中包含一个绘图。我写了以下代码:
library(shiny)
library(leaflet)
library(plotly)
library(dplyr)
ui <- fluidPage(
leafletOutput("mymap"),
)
server <- function(input, output, session) {
points <- eventReactive(input$recalc, {
cbind(rnorm(40) * 2 + 13, rnorm(40) + 48)
}, ignoreNULL = FALSE)
output$mymap <- renderLeaflet({
leaflet() %>%
addProviderTiles(providers$Stamen.TonerLite,
options = providerTileOptions(noWrap = TRUE)
) %>%
addMarkers(data = points())
})
observeEvent(input$mymap_marker_click,{
df <- data.frame(x = 1:10, y = 1:10)
plt <- ggplot(df, aes(x,y)) + geom_line()
pltly <- ggplotly(plt)
showModal(modalDialog(
title = "Important message", size = "l",
pltly ))
})
}
shinyApp(ui, server)
这种代码可以完成这项工作,但它显示的情节非常压缩!如果您将窗口的边界稍微向左或向右拖动,那么它将被修复,但我希望它可以正常工作,而无需这样做来修复情节!有谁知道更好的方法吗?
【问题讨论】:
标签: r shiny leaflet interactive