library(shiny) library(leaflet) library(shinydashboard) library(rgdal) library(dplyr) library(gsheet) library(DT) library(sf) library(tidyverse) library(shapefiles) library(htmltools)

data = gsheet2tbl(‘https://docs.google.com/spreadsheets/d/1EDk3Ofi1M6U4Piv_QU8tA65WtrLo0OWtr9nUEhMHXnc/edit?usp=sharing’)

dataparaunir = data baseb31 = st_read(“b31_3.shp”) baseb31_basic = baseb31 %>% select(SECTOR,MANZANA,PARCELA,ID,geometry)%>% mutate(Manzana_num =as.numeric(MANZANA))

#Los bis sirven para definir la escala de colores, y se crea la variable pal para definir los que columna usar

bins <- c(1,2,5,6,7,8,9) pal <- colorBin(“YlOrRd”, domain = baseb31_basic$Manzana_num, bins = bins)

ui = dashboardPage( skin = “red”, dashboardHeader(title = “Barrio 31”), dashboardSidebar( sliderInput(“Manzana_num”, label = “FiltroManzana”, min =min(baseb31_basic\(Manzana_num), max = max(baseb31_basic\)Manzana_num), value = c(min(baseb31_basic\(Manzana_num),max(baseb31_basic\)Manzana_num)), sep = "", step = 1)

),
dashboardBody(
    fluidRow(box(width = 12, leafletOutput(outputId = "mymap"))),
    fluidRow(box(width = 12, dataTableOutput(outputId = "summary_table")))
)

)

Define server logic required to draw a histogram

server <- function(input, output) {

data_input = reactive({  
    baseb31_basic %>%
        filter(Manzana_num >= input$Manzana_num[1])%>%
        filter(Manzana_num <= input$Manzana_num[2])        

})

data_input_ordered = reactive({ 
    data_input()[order(match(data_input()$Manzana_num, baseb31_basic$Manzana_num))]
})


    labels <- reactive ({ sprintf(
      "<strong>%d</strong>",
     baseb31_basic$Manzana_num 
    ) %>% lapply(htmltools::HTML)
    
 

})

output$mymap = renderLeaflet(
    leaflet(st_zm(baseb31_basic) %>% st_transform(4326)) %>% 
        addProviderTiles(providers$CartoDB.Positron) %>% 
        addPolygons(color = "black", fill = FALSE, weight = 2,group = "Borde") %>% 
        addPolygons(
            fillColor = ~pal(data_input_ordered()$Manzana_num),
            weight = 2,
            opacity = 1,
            color = "black",
            dashArray = "3",
            fillOpacity = 0.7,
            highlight = highlightOptions(
                weight = 5,
                color = "red",
                dashArray = "",
                fillOpacity = 0.7,
                bringToFront = TRUE
            ),
            label = labels) %>% 
    addLegend(pal = pal, 
              values = ~data_input_ordered()$Manzana_num, 
              opacity = 0.7, 
              title = NULL,
              position = "bottomright")
    
   )
output$summary_table = renderDataTable(data_input())

}

Run the application

shinyApp(ui = ui, server = server)


Eror que me da en shiny app

Listening on http://127.0.0.1:5877 Warning: Error in as.vector: cannot coerce type ‘closure’ to vector of type ‘character’ 113: as.character.default 111: htmltools::htmlEscape 110: safeLabel 103: addPolygons 102: function_list[[i]] 101: freduce 100: _fseq 99: eval 98: eval 96: %>% 95: func 82: origRenderFunc 81: output$mymap 1: runApp

El codigo ejecutado en otro lado sin problema

library(shiny)
library(leaflet)
library(shinydashboard)
## 
## Attaching package: 'shinydashboard'
## The following object is masked from 'package:graphics':
## 
##     box
library(rgdal)
## Loading required package: sp
## rgdal: version: 1.5-12, (SVN revision 1018)
## Geospatial Data Abstraction Library extensions to R successfully loaded
## Loaded GDAL runtime: GDAL 3.0.4, released 2020/01/28
## Path to GDAL shared files: C:/Users/User/Documents/R/win-library/4.0/rgdal/gdal
## GDAL binary built with GEOS: TRUE 
## Loaded PROJ runtime: Rel. 6.3.1, February 10th, 2020, [PJ_VERSION: 631]
## Path to PROJ shared files: C:/Users/User/Documents/R/win-library/4.0/rgdal/proj
## Linking to sp version:1.4-2
## To mute warnings of possible GDAL/OSR exportToProj4() degradation,
## use options("rgdal_show_exportToProj4_warnings"="none") before loading rgdal.
library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
library(gsheet)
library(DT)
## 
## Attaching package: 'DT'
## The following objects are masked from 'package:shiny':
## 
##     dataTableOutput, renderDataTable
library(sf)
## Linking to GEOS 3.8.0, GDAL 3.0.4, PROJ 6.3.1
library(tidyverse)
## -- Attaching packages --------------------------------------------------------------- tidyverse 1.3.0 --
## v ggplot2 3.3.2     v purrr   0.3.4
## v tibble  3.0.1     v stringr 1.4.0
## v tidyr   1.1.0     v forcats 0.5.0
## v readr   1.3.1
## -- Conflicts ------------------------------------------------------------------ tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag()    masks stats::lag()
library(shapefiles)
## Loading required package: foreign
## 
## Attaching package: 'shapefiles'
## The following objects are masked from 'package:foreign':
## 
##     read.dbf, write.dbf
library(htmltools)

data = gsheet2tbl('https://docs.google.com/spreadsheets/d/1EDk3Ofi1M6U4Piv_QU8tA65WtrLo0OWtr9nUEhMHXnc/edit?usp=sharing')

dataparaunir = data
baseb31 = st_read("b31_3.shp")
## Reading layer `b31_3' from data source `C:\Users\User\Desktop\POSTgis\b31_3.shp' using driver `ESRI Shapefile'
## Simple feature collection with 190 features and 13 fields
## geometry type:  POLYGON
## dimension:      XYZ
## bbox:           xmin: -58.3777 ymin: -34.58472 xmax: -58.37582 ymax: -34.58332
## z_range:        zmin: -0.01046138 zmax: 307.3997
## geographic CRS: WGS 84
baseb31_basic = baseb31 %>%
  select(SECTOR,MANZANA,PARCELA,ID,geometry)%>%
  mutate(Manzana_num =as.numeric(MANZANA))


labels <- sprintf(
  "<strong> ID %s</strong><br/>Sector %s<br/>Manzana %g<br/>Parcela %s",
  baseb31_basic$ID, baseb31_basic$SECTOR, baseb31_basic$Manzana_num, baseb31_basic$PARCELA
) %>% lapply(htmltools::HTML)

labels <- sprintf(
  "<strong>%d</strong>",
  baseb31_basic$Manzana_num 
) %>% lapply(htmltools::HTML)

#Los bis sirven para definir la escala de colores, y se crea la variable pal para definir los que columna usar

bins <- c(1,2,5,6,7,8,9)
pal <- colorBin("YlOrRd", domain = baseb31_basic$Manzana_num, bins = bins)

leaflet(st_zm(baseb31_basic) %>% st_transform(4326)) %>% 
  addProviderTiles(providers$CartoDB.Positron) %>% 
  addPolygons(color = "black", fill = FALSE, weight = 2,group = "Borde") %>% 
  addPolygons(
    fillColor = ~pal(Manzana_num),
    weight = 2,
    opacity = 1,
    color = "black",
    dashArray = "3",
    fillOpacity = 0.7,
    highlight = highlightOptions(
      weight = 5,
      color = "red",
      dashArray = "",
      fillOpacity = 0.7,
      bringToFront = TRUE
    ),
    label = labels) %>% 
  addLegend(pal = pal, 
            values = ~(Manzana_num), 
            opacity = 0.7, 
            title = NULL,
            position = "bottomright")