R 闪亮应用程序未生成地图

R 闪亮应用程序未生成地图,r,layout,shiny,R,Layout,Shiny,我有一个巨大的数据集,但即使我只使用5个数据点,我的地图也不会生成。下面显示的代码运行良好,但我只是没有得到地图。我可能错过了一个很小的要点,希望能得到一些帮助 library(shiny) library(leaflet) library(data.table) dd<- data.table(entitynum=c(400, 201, 602, 304,401), londd=c(42.3, 42.4, 43.5, 42.6,42.2),

我有一个巨大的数据集,但即使我只使用5个数据点,我的地图也不会生成。下面显示的代码运行良好,但我只是没有得到地图。我可能错过了一个很小的要点,希望能得到一些帮助

library(shiny)
library(leaflet)
library(data.table)

dd<- data.table(entitynum=c(400, 201, 602, 304,401),
            londd=c(42.3, 42.4, 43.5, 42.6,42.2),
            latdd=c(-71.1, -71.2, -71.3, -71.4,-71),
            DAY_WEEK=c("Sunday", "Monday", "Tuesday", "Wednesday","Thursday"))

#Set up ui
ui <- shinyUI(fluidPage(title="",

#App title 
titlePanel(h3("My tool", align="left")),

#App layout
sidebarLayout(position="left",

#App sidePanel content and styles
sidebarPanel(h5("Hello", width=2),
checkboxGroupInput(inputId="InFlags", label=h4("DAYS"), 
choices=setNames(object=c("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"),
 nm=c("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"))),
position="left"),

#App mainPanel content and styles
 mainPanel(fluidRow(leafletOutput(outputId="lmap", width="100%",height = "100%")))

)
)
)



server <- function(input, output){


#Build leaflet map
lmap <- leaflet(data=dd)%>%
#addTiles()%>% 
#setView(lng="-71.094824",lat="42.343479",zoom=10) %>%
addProviderTiles(provider="MapQuestOpen.OSM")
fitBounds(~min(londd), ~min(latdd), ~max(londd), ~max(latdd))

 #Filter data
 datFilt <- reactive(dd[DAY_WEEK%in%input$InFlags])

#Add markers based on selected flags
observe({
 if(nrow(datFilt())==0) {
   print("Nothing selected")
   leafletProxy("lmap") %>% clearMarkerClusters()
 }
 else{
  print(paste0("Selected: ", unique(input$InFlags)))
  leafletProxy("lmap", data=datFilt()) %>%
    clearMarkerClusters() %>%
    addCircleMarkers(lng=~londd, lat=~latdd,
                     clusterOptions=markerClusterOptions(), weight=3,
                     color="#33CC33", opacity=1, fillColor="#FF9900", 
                     fillOpacity=0.8)
}
})

output$lmap <- renderLeaflet(lmap)
}
库(闪亮)
图书馆(单张)
库(数据表)
dd%
clearMarkerClusters()%>%
addCircleMarkers(液化天然气=~londd,纬度=~latdd,
clusterOptions=markerClusterOptions(),权重=3,
color=“#33CC33”,不透明度=1,fillColor=“#FF9900”,
fillOpacity=0.8)
}
})

输出$lmap您的
height
参数不能是百分比

请注意,对于高度,使用“自动”或“100%”通常不会像预期的那样工作,因为高度是用HTML/CSS计算的

使用类似于:

leafletOutput(outputId="lmap", width="100%", height = 500)))

此外,还需要调整地图代码。
setView
中的lat/lng需要是数字

lmap <- leaflet(data=dd)%>%
setView(lng=-71.094824,lat=42.343479,zoom=10) %>%
addProviderTiles(provider="MapQuestOpen.OSM") 

非常感谢。我能解决这个问题。现在可以了。虽然我还有另一个问题,但当我通过闪亮的服务器运行这个应用程序以便能够与其他人共享它时,它并没有生成地图。当我在我的机器上运行时,应用程序运行得非常好。你能告诉我是什么原因吗?@Yatish我想不出为什么会是这样。你最好接受这个答案,然后再问一个新的/单独的问题,这样更多的人会看到它,并且可能会有所帮助。我得到了它。谢谢很高兴我能帮上忙:)
lmap <- leaflet(data=dd)%>%
setView(lng=-71.094824,lat=42.343479,zoom=10) %>%
addProviderTiles(provider="MapQuestOpen.OSM") 
lmap <- leaflet(data=dd)%>%
    #addTiles()%>% 
#    setView(lng=-71.094824,lat=42.343479,zoom=10) %>%
    addProviderTiles(provider="MapQuestOpen.OSM") %>%
  fitBounds(~min(londd), ~min(latdd), ~max(londd), ~max(latdd))