当前位置:  开发笔记 > 编程语言 > 正文

传单renderLeaflet不起作用

如何解决《传单renderLeaflet不起作用》经验,为你挑选了1个好方法。

我正在使用传单包绘制地图并在情节上绘制lat和long.我在R中做跟随

m <- leaflet() %>%
addTiles() %>%  # Add default OpenStreetMap map tiles
addMarkers(lng=df_final$order_long, lat=df_final$order_lat)
m

它在R控制台中运行得非常好.但是当我在闪亮中使用它时它不起作用这是我的ui.r代码片段

tabPanel("Order Locations", leafletOutput("map", width = "80%", height =  
"80%"))

这是server.r代码片段

 output$map<- renderLeaflet({

 dataset<-dataUpload()
 leaflet() %>%
 addTiles() %>%  # Add default OpenStreetMap map tiles
 addMarkers(lng=dataset$order_long,lat=dataset$order_lat)
 })

它没有显示任何内容.我哪里弄错了.请帮忙



1> Mike Wise..:

这是有效的,我尽可能接近你的.它显然不喜欢百分比高度:

library(shiny)
library(leaflet)

r_colors <- rgb(t(col2rgb(colors()) / 255))
names(r_colors) <- colors()

ui <- fluidPage(
  actionButton("recalc", "New points"),
  mainPanel(
    tabsetPanel(
      tabPanel("Order Locations", leafletOutput("map",,)),
      tabPanel("Markers", verbatimTextOutput("markers"))
    )
  )
)

if (!file.exists("df_final.csv")){
  nmark <- 50
  hv <- 80
  df_final <- data.frame(order_long=runif(nmark,-hv,hv),
                         order_lat=runif(nmark,-hv,hv))
  write.csv(df_final,"df_final.csv",row.names=F)
}

server <- function(input, output, session) {

  dataUpload <- reactiveFileReader(1000, session, 'df_final.csv', read.csv)

  output$map <- renderLeaflet({
    leaflet() %>%
      addTiles() %>%
      addMarkers(lng=dataUpload()$order_long,lat=dataUpload()$order_lat)
  })
  output$markers <- renderPrint({print(dataUpload())})
}

shinyApp(ui, server)

产量:

在此输入图像描述

推荐阅读
kikokikolove
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有