输入改变后的R Shiny Leaflet Map圈子

时间:2016-06-13 19:59:55

标签: r shiny leaflet

我有一个Shiny App,它根据与邮政编码输入相关联的lat lng在地图上插入一个圆圈。加载时地图呈现;但是,当我尝试通过selectInput对象更改邮政编码的值时,地图会呈现一个空白窗口 - 即selectedZip变量。

任何有助于解决此问题的帮助都将受到赞赏:

library(shiny)
library(leaflet)

# Data
data <- read.csv('VENDOR_PERFORMANCE_EX.csv')

ui <- fluidPage(
  titlePanel("VPD"),
  sidebarLayout(
    sidebarPanel("Inputs"),
    mainPanel("Results")),
  selectInput("zipInput", "Select Zip Code", data$Zip),
  selectInput("vendorInput", "Select Vendor", as.character(data$Vendor)),
  leafletOutput("CLEmap", width = "75%", height = 600)
)

server <- function(input, output, session) {
    selectedZip <- reactive({
      data[data$Zip == input$zipInput, ]
    })
    output$CLEmap <- renderLeaflet({
      leaflet() %>% 
      addTiles() %>% 
      setView(-81.730844, 41.430102, zoom = 11) %>% 
      addCircles(data = selectedZip(), lng = ~ Y, lat = ~ X, radius = 1069)
  })
}

shinyApp(ui=ui, server = server)

1 个答案:

答案 0 :(得分:1)

虽然有一些非常奇怪的事情发生,但仍有效。虽然我不能确定它解决了你所遇到的同样问题,因为我没有你的数据,但似乎很可能。

一旦我添加了数据并得到了一些听起来像你的错误的东西,我就狩猎了一下。我最后做的唯一更改是在unique zipInput selectInput实例中添加了selectInput语句,我被selectInput未正确初始化的事实所吸引,虽然它实际上工作,但初始值是空白。

我认为choices控件无法正确处理unique向量中的重复条目,并且导致闪亮控件在某种程度上表现得很奇怪,从而破坏......一些东西。不太确定是什么。

怪异。并不确定究竟发生了什么。无论如何这是有效的。如果您取出library(shiny) library(leaflet) # Data #data <- read.csv('VENDOR_PERFORMANCE_EX.csv') data <- data.frame(Zip=c("44102","44102","44109"), Vendor=c("Vendor1","Vendor2","vendor3"), X=c(41.475,41.477,41.467),Y=c(-81.742,-81.748,-81.697)) ui <- fluidPage( titlePanel("VPD"), sidebarLayout( sidebarPanel("Inputs"), mainPanel("Results")), selectInput("vendorInput", "Select Vendor", as.character(data$Vendor)), selectInput("zipInput", "Select Zip Code", unique(as.character(data$Zip)) ), leafletOutput("CLEmap", width = "75%", height = 600) ) server <- function(input, output, session) { selectedZips <- reactive({ data[data$Zip == input$zipInput, ] }) output$CLEmap <- renderLeaflet({ leaflet() %>% addTiles() %>% setView(-81.730844, 41.430102, zoom = 11) %>% addCircles(data=selectedZips(),lng = ~Y, lat = ~X,radius = 300 ) }) } shinyApp(ui=ui, server = server) 无法正常工作并收到您所描述的错误。

代码:

col1_3x_xxx
col2_3y_xyz
col3_3z_zyx

输出:

enter image description here