Polygons not getting plotted in leaflet r map since update











up vote
3
down vote

favorite
1












I have a shiny app that has a leaflet map in it with two different polygons. The leaflet map was working all good and fine until I updated my leaflet package to 2.0.1. Now when I run the app... the polygons aren't getting plotted and there are no errors being thrown at me. I have looked around and haven't found anything that fixes my problem. I would appreciate it if anyone can give me some guidance or point me in the right direction!



Link to access shapefiles:
https://drive.google.com/drive/folders/1bPHrAu6Wae1y5uiZCsSMtSi6Rja157bj?usp=sharing



Code:



library(shiny)
library(shinydashboard)
library(leaflet)
library(sf)
library(rmapshaper)
### Read in shapefiles ###
NJ_Map_Road<-st_read(getwd(),layer="2014_NJ_Integrated_Report_AU")
Impaired_HUCS<-st_read(getwd(),layer = "Impaired_HUCS_Shapefile")
### Change projection to work with leaflet ###
map_df <- st_transform(NJ_Map_Road, crs="+init=epsg:4326")
map_impaired_df<-st_transform(Impaired_HUCS,crs="+init=epsg:4326")
###########################################################################################
### simplify shapefiles ###
map_df<-ms_simplify(map_df)
map_impaired_df<-ms_simplify(map_impaired_df)
###########################################################################################
### This drop Z and M dimensions
good_map_df<- st_zm(map_df, drop = T, what = "ZM")
good_imp_map_df<- st_zm(map_impaired_df, drop = T, what = "ZM")
#################################################################

ui<- dashboardPage(
header = dashboardHeader(),
sidebar = dashboardSidebar(),
body = dashboardBody(
box(width=12,leafletOutput("leaf"))))
### Server ###
server<- function(input,output,session){
### This creates interactive map ###
output$leaf<- renderLeaflet({
leaflet(options = leafletOptions(minZoom = 7))%>%
addTiles()%>%
addTiles(group = "OSM (default)") %>%
addProviderTiles(providers$OpenStreetMap.BlackAndWhite, group = "Grey") %>%
addProviderTiles(providers$Esri.WorldImagery, group = "Satellite") %>%
setView(lng = -74.4 ,lat =40, zoom = 7)%>%
addPolygons(data= good_map_df,color = "#636060",weight = 1,smoothFactor = 1,
opacity = 0.5, fillOpacity = 0.1,group = "HUCs",fillColor = "white",
highlightOptions = highlightOptions(color = "blue",
weight = 2,bringToFront = TRUE))%>%

addPolygons(data = good_imp_map_df,color = "#F3161B",weight = 1,smoothFactor = 1,
opacity = 0.5, fillOpacity = 2,
group = "Impaired HUCs",
highlightOptions = highlightOptions(color = "blue",
weight = 2,bringToFront = TRUE),
label = ~ paste(HUC14TXT,AU_name),
layerId = ~ good_imp_map_df$AU_name)%>%
addLayersControl(
baseGroups = c("OSM (default)", "Grey", "Satellite"),
overlayGroups = c("HUCs","Impaired HUCs"),
options = layersControlOptions(collapsed = FALSE))%>%
addLegend("bottomright",colors = c("#636060","#F3161B"),opacity = 2,
labels = c("HUC14s","Impaired HUCs"))
})
###########################################################################################
### Allows user to have map zoomed in when impaired HUC is clicked ###
observe({
click <- input$leaf_shape_click
if(is.null(click))
return()
else
leafletProxy("leaf")%>%
setView(lng = click$lng , lat = click$lat, zoom=10)
})

}

shinyApp(ui,server)









share|improve this question
























  • Can someone please help me !!! I have been trying to figure this out for days !!!
    – KWANGER
    Nov 10 at 14:16










  • this may be related: github.com/r-spatial/sf/issues/880#issuecomment-435304536
    – lbusett
    Nov 10 at 19:12















up vote
3
down vote

favorite
1












I have a shiny app that has a leaflet map in it with two different polygons. The leaflet map was working all good and fine until I updated my leaflet package to 2.0.1. Now when I run the app... the polygons aren't getting plotted and there are no errors being thrown at me. I have looked around and haven't found anything that fixes my problem. I would appreciate it if anyone can give me some guidance or point me in the right direction!



Link to access shapefiles:
https://drive.google.com/drive/folders/1bPHrAu6Wae1y5uiZCsSMtSi6Rja157bj?usp=sharing



Code:



library(shiny)
library(shinydashboard)
library(leaflet)
library(sf)
library(rmapshaper)
### Read in shapefiles ###
NJ_Map_Road<-st_read(getwd(),layer="2014_NJ_Integrated_Report_AU")
Impaired_HUCS<-st_read(getwd(),layer = "Impaired_HUCS_Shapefile")
### Change projection to work with leaflet ###
map_df <- st_transform(NJ_Map_Road, crs="+init=epsg:4326")
map_impaired_df<-st_transform(Impaired_HUCS,crs="+init=epsg:4326")
###########################################################################################
### simplify shapefiles ###
map_df<-ms_simplify(map_df)
map_impaired_df<-ms_simplify(map_impaired_df)
###########################################################################################
### This drop Z and M dimensions
good_map_df<- st_zm(map_df, drop = T, what = "ZM")
good_imp_map_df<- st_zm(map_impaired_df, drop = T, what = "ZM")
#################################################################

ui<- dashboardPage(
header = dashboardHeader(),
sidebar = dashboardSidebar(),
body = dashboardBody(
box(width=12,leafletOutput("leaf"))))
### Server ###
server<- function(input,output,session){
### This creates interactive map ###
output$leaf<- renderLeaflet({
leaflet(options = leafletOptions(minZoom = 7))%>%
addTiles()%>%
addTiles(group = "OSM (default)") %>%
addProviderTiles(providers$OpenStreetMap.BlackAndWhite, group = "Grey") %>%
addProviderTiles(providers$Esri.WorldImagery, group = "Satellite") %>%
setView(lng = -74.4 ,lat =40, zoom = 7)%>%
addPolygons(data= good_map_df,color = "#636060",weight = 1,smoothFactor = 1,
opacity = 0.5, fillOpacity = 0.1,group = "HUCs",fillColor = "white",
highlightOptions = highlightOptions(color = "blue",
weight = 2,bringToFront = TRUE))%>%

addPolygons(data = good_imp_map_df,color = "#F3161B",weight = 1,smoothFactor = 1,
opacity = 0.5, fillOpacity = 2,
group = "Impaired HUCs",
highlightOptions = highlightOptions(color = "blue",
weight = 2,bringToFront = TRUE),
label = ~ paste(HUC14TXT,AU_name),
layerId = ~ good_imp_map_df$AU_name)%>%
addLayersControl(
baseGroups = c("OSM (default)", "Grey", "Satellite"),
overlayGroups = c("HUCs","Impaired HUCs"),
options = layersControlOptions(collapsed = FALSE))%>%
addLegend("bottomright",colors = c("#636060","#F3161B"),opacity = 2,
labels = c("HUC14s","Impaired HUCs"))
})
###########################################################################################
### Allows user to have map zoomed in when impaired HUC is clicked ###
observe({
click <- input$leaf_shape_click
if(is.null(click))
return()
else
leafletProxy("leaf")%>%
setView(lng = click$lng , lat = click$lat, zoom=10)
})

}

shinyApp(ui,server)









share|improve this question
























  • Can someone please help me !!! I have been trying to figure this out for days !!!
    – KWANGER
    Nov 10 at 14:16










  • this may be related: github.com/r-spatial/sf/issues/880#issuecomment-435304536
    – lbusett
    Nov 10 at 19:12













up vote
3
down vote

favorite
1









up vote
3
down vote

favorite
1






1





I have a shiny app that has a leaflet map in it with two different polygons. The leaflet map was working all good and fine until I updated my leaflet package to 2.0.1. Now when I run the app... the polygons aren't getting plotted and there are no errors being thrown at me. I have looked around and haven't found anything that fixes my problem. I would appreciate it if anyone can give me some guidance or point me in the right direction!



Link to access shapefiles:
https://drive.google.com/drive/folders/1bPHrAu6Wae1y5uiZCsSMtSi6Rja157bj?usp=sharing



Code:



library(shiny)
library(shinydashboard)
library(leaflet)
library(sf)
library(rmapshaper)
### Read in shapefiles ###
NJ_Map_Road<-st_read(getwd(),layer="2014_NJ_Integrated_Report_AU")
Impaired_HUCS<-st_read(getwd(),layer = "Impaired_HUCS_Shapefile")
### Change projection to work with leaflet ###
map_df <- st_transform(NJ_Map_Road, crs="+init=epsg:4326")
map_impaired_df<-st_transform(Impaired_HUCS,crs="+init=epsg:4326")
###########################################################################################
### simplify shapefiles ###
map_df<-ms_simplify(map_df)
map_impaired_df<-ms_simplify(map_impaired_df)
###########################################################################################
### This drop Z and M dimensions
good_map_df<- st_zm(map_df, drop = T, what = "ZM")
good_imp_map_df<- st_zm(map_impaired_df, drop = T, what = "ZM")
#################################################################

ui<- dashboardPage(
header = dashboardHeader(),
sidebar = dashboardSidebar(),
body = dashboardBody(
box(width=12,leafletOutput("leaf"))))
### Server ###
server<- function(input,output,session){
### This creates interactive map ###
output$leaf<- renderLeaflet({
leaflet(options = leafletOptions(minZoom = 7))%>%
addTiles()%>%
addTiles(group = "OSM (default)") %>%
addProviderTiles(providers$OpenStreetMap.BlackAndWhite, group = "Grey") %>%
addProviderTiles(providers$Esri.WorldImagery, group = "Satellite") %>%
setView(lng = -74.4 ,lat =40, zoom = 7)%>%
addPolygons(data= good_map_df,color = "#636060",weight = 1,smoothFactor = 1,
opacity = 0.5, fillOpacity = 0.1,group = "HUCs",fillColor = "white",
highlightOptions = highlightOptions(color = "blue",
weight = 2,bringToFront = TRUE))%>%

addPolygons(data = good_imp_map_df,color = "#F3161B",weight = 1,smoothFactor = 1,
opacity = 0.5, fillOpacity = 2,
group = "Impaired HUCs",
highlightOptions = highlightOptions(color = "blue",
weight = 2,bringToFront = TRUE),
label = ~ paste(HUC14TXT,AU_name),
layerId = ~ good_imp_map_df$AU_name)%>%
addLayersControl(
baseGroups = c("OSM (default)", "Grey", "Satellite"),
overlayGroups = c("HUCs","Impaired HUCs"),
options = layersControlOptions(collapsed = FALSE))%>%
addLegend("bottomright",colors = c("#636060","#F3161B"),opacity = 2,
labels = c("HUC14s","Impaired HUCs"))
})
###########################################################################################
### Allows user to have map zoomed in when impaired HUC is clicked ###
observe({
click <- input$leaf_shape_click
if(is.null(click))
return()
else
leafletProxy("leaf")%>%
setView(lng = click$lng , lat = click$lat, zoom=10)
})

}

shinyApp(ui,server)









share|improve this question















I have a shiny app that has a leaflet map in it with two different polygons. The leaflet map was working all good and fine until I updated my leaflet package to 2.0.1. Now when I run the app... the polygons aren't getting plotted and there are no errors being thrown at me. I have looked around and haven't found anything that fixes my problem. I would appreciate it if anyone can give me some guidance or point me in the right direction!



Link to access shapefiles:
https://drive.google.com/drive/folders/1bPHrAu6Wae1y5uiZCsSMtSi6Rja157bj?usp=sharing



Code:



library(shiny)
library(shinydashboard)
library(leaflet)
library(sf)
library(rmapshaper)
### Read in shapefiles ###
NJ_Map_Road<-st_read(getwd(),layer="2014_NJ_Integrated_Report_AU")
Impaired_HUCS<-st_read(getwd(),layer = "Impaired_HUCS_Shapefile")
### Change projection to work with leaflet ###
map_df <- st_transform(NJ_Map_Road, crs="+init=epsg:4326")
map_impaired_df<-st_transform(Impaired_HUCS,crs="+init=epsg:4326")
###########################################################################################
### simplify shapefiles ###
map_df<-ms_simplify(map_df)
map_impaired_df<-ms_simplify(map_impaired_df)
###########################################################################################
### This drop Z and M dimensions
good_map_df<- st_zm(map_df, drop = T, what = "ZM")
good_imp_map_df<- st_zm(map_impaired_df, drop = T, what = "ZM")
#################################################################

ui<- dashboardPage(
header = dashboardHeader(),
sidebar = dashboardSidebar(),
body = dashboardBody(
box(width=12,leafletOutput("leaf"))))
### Server ###
server<- function(input,output,session){
### This creates interactive map ###
output$leaf<- renderLeaflet({
leaflet(options = leafletOptions(minZoom = 7))%>%
addTiles()%>%
addTiles(group = "OSM (default)") %>%
addProviderTiles(providers$OpenStreetMap.BlackAndWhite, group = "Grey") %>%
addProviderTiles(providers$Esri.WorldImagery, group = "Satellite") %>%
setView(lng = -74.4 ,lat =40, zoom = 7)%>%
addPolygons(data= good_map_df,color = "#636060",weight = 1,smoothFactor = 1,
opacity = 0.5, fillOpacity = 0.1,group = "HUCs",fillColor = "white",
highlightOptions = highlightOptions(color = "blue",
weight = 2,bringToFront = TRUE))%>%

addPolygons(data = good_imp_map_df,color = "#F3161B",weight = 1,smoothFactor = 1,
opacity = 0.5, fillOpacity = 2,
group = "Impaired HUCs",
highlightOptions = highlightOptions(color = "blue",
weight = 2,bringToFront = TRUE),
label = ~ paste(HUC14TXT,AU_name),
layerId = ~ good_imp_map_df$AU_name)%>%
addLayersControl(
baseGroups = c("OSM (default)", "Grey", "Satellite"),
overlayGroups = c("HUCs","Impaired HUCs"),
options = layersControlOptions(collapsed = FALSE))%>%
addLegend("bottomright",colors = c("#636060","#F3161B"),opacity = 2,
labels = c("HUC14s","Impaired HUCs"))
})
###########################################################################################
### Allows user to have map zoomed in when impaired HUC is clicked ###
observe({
click <- input$leaf_shape_click
if(is.null(click))
return()
else
leafletProxy("leaf")%>%
setView(lng = click$lng , lat = click$lat, zoom=10)
})

}

shinyApp(ui,server)






r shiny leaflet shinydashboard sf






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Nov 9 at 14:09

























asked Nov 9 at 14:04









KWANGER

1749




1749












  • Can someone please help me !!! I have been trying to figure this out for days !!!
    – KWANGER
    Nov 10 at 14:16










  • this may be related: github.com/r-spatial/sf/issues/880#issuecomment-435304536
    – lbusett
    Nov 10 at 19:12


















  • Can someone please help me !!! I have been trying to figure this out for days !!!
    – KWANGER
    Nov 10 at 14:16










  • this may be related: github.com/r-spatial/sf/issues/880#issuecomment-435304536
    – lbusett
    Nov 10 at 19:12
















Can someone please help me !!! I have been trying to figure this out for days !!!
– KWANGER
Nov 10 at 14:16




Can someone please help me !!! I have been trying to figure this out for days !!!
– KWANGER
Nov 10 at 14:16












this may be related: github.com/r-spatial/sf/issues/880#issuecomment-435304536
– lbusett
Nov 10 at 19:12




this may be related: github.com/r-spatial/sf/issues/880#issuecomment-435304536
– lbusett
Nov 10 at 19:12












1 Answer
1






active

oldest

votes

















up vote
3
down vote



accepted










Digging a bit more, the problem seems related to the fact that ms_simplify() adds names to the geometry column:



polys_sf<-st_read(system.file("shape/nc.shp", package="sf") ) %>% 
st_transform(crs="+init=epsg:4326") %>%
ms_simplify(.)

names(st_geometry(polys_sf))

[1] "0" "1" "2" "3" "4" "5" "6" "7" "8" "9" "10" "11" "12" "13" "14" "15" "16" "17" "18" "19" "20" "21" "22" "23" "24" "25"
[27] "26" "27" "28" "29" "30" "31" "32" "33" "34" "35" "36" "37" "38" "39" "40" "41" "42" "43" "44" "45" "46" "47" "48" "49" "50" "51"
[53] "52" "53" "54" "55" "56" "57" "58" "59" "60" "61" "62" "63" "64" "65" "66" "67" "68" "69" "70" "71" "72" "73" "74" "75" "76" "77"
[79] "78" "79" "80" "81" "82" "83" "84" "85" "86" "87" "88" "89" "90" "91" "92" "93" "94" "95" "96" "97" "98" "99"


as suggested in https://github.com/r-spatial/sf/issues/880#issuecomment-435304536, removing the names will solve the issue. Therefore, this works:



library(shiny)
library(shinydashboard)
library(leaflet)
library(sf)
library(rmapshaper)
### Read in shapefiles ###
polys_sf<-st_read(system.file("shape/nc.shp", package="sf") ) %>%
st_transform(crs="+init=epsg:4326") %>%
ms_simplify(.)

names(st_geometry(polys_sf)) = NULL

ui<- dashboardPage(
header = dashboardHeader(),
sidebar = dashboardSidebar(),
body = dashboardBody(
box(width=12,leafletOutput("leaf"))))
### Server ###
server<- function(input,output,session){
### This creates interactive map ###
output$leaf<- renderLeaflet({
leaflet(options = leafletOptions(minZoom = 7))%>%
addPolygons(data= polys_sf)
})
}

shinyApp(ui,server)


, while if you comment out the names(st_geometry(polys_sf)) = NULL line the polygons are not shown.



HTH!



(BTW, as a sidenote/suggestion: building a minimal reproducible example based on "test" datasets available in "R" packages can help both in pinpointing the problem and in allowing others to easily reproduce/understand it.






share|improve this answer





















    Your Answer






    StackExchange.ifUsing("editor", function () {
    StackExchange.using("externalEditor", function () {
    StackExchange.using("snippets", function () {
    StackExchange.snippets.init();
    });
    });
    }, "code-snippets");

    StackExchange.ready(function() {
    var channelOptions = {
    tags: "".split(" "),
    id: "1"
    };
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function() {
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled) {
    StackExchange.using("snippets", function() {
    createEditor();
    });
    }
    else {
    createEditor();
    }
    });

    function createEditor() {
    StackExchange.prepareEditor({
    heartbeatType: 'answer',
    convertImagesToLinks: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    bindNavPrevention: true,
    postfix: "",
    imageUploader: {
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    },
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    });


    }
    });














     

    draft saved


    draft discarded


















    StackExchange.ready(
    function () {
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53227205%2fpolygons-not-getting-plotted-in-leaflet-r-map-since-update%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes








    up vote
    3
    down vote



    accepted










    Digging a bit more, the problem seems related to the fact that ms_simplify() adds names to the geometry column:



    polys_sf<-st_read(system.file("shape/nc.shp", package="sf") ) %>% 
    st_transform(crs="+init=epsg:4326") %>%
    ms_simplify(.)

    names(st_geometry(polys_sf))

    [1] "0" "1" "2" "3" "4" "5" "6" "7" "8" "9" "10" "11" "12" "13" "14" "15" "16" "17" "18" "19" "20" "21" "22" "23" "24" "25"
    [27] "26" "27" "28" "29" "30" "31" "32" "33" "34" "35" "36" "37" "38" "39" "40" "41" "42" "43" "44" "45" "46" "47" "48" "49" "50" "51"
    [53] "52" "53" "54" "55" "56" "57" "58" "59" "60" "61" "62" "63" "64" "65" "66" "67" "68" "69" "70" "71" "72" "73" "74" "75" "76" "77"
    [79] "78" "79" "80" "81" "82" "83" "84" "85" "86" "87" "88" "89" "90" "91" "92" "93" "94" "95" "96" "97" "98" "99"


    as suggested in https://github.com/r-spatial/sf/issues/880#issuecomment-435304536, removing the names will solve the issue. Therefore, this works:



    library(shiny)
    library(shinydashboard)
    library(leaflet)
    library(sf)
    library(rmapshaper)
    ### Read in shapefiles ###
    polys_sf<-st_read(system.file("shape/nc.shp", package="sf") ) %>%
    st_transform(crs="+init=epsg:4326") %>%
    ms_simplify(.)

    names(st_geometry(polys_sf)) = NULL

    ui<- dashboardPage(
    header = dashboardHeader(),
    sidebar = dashboardSidebar(),
    body = dashboardBody(
    box(width=12,leafletOutput("leaf"))))
    ### Server ###
    server<- function(input,output,session){
    ### This creates interactive map ###
    output$leaf<- renderLeaflet({
    leaflet(options = leafletOptions(minZoom = 7))%>%
    addPolygons(data= polys_sf)
    })
    }

    shinyApp(ui,server)


    , while if you comment out the names(st_geometry(polys_sf)) = NULL line the polygons are not shown.



    HTH!



    (BTW, as a sidenote/suggestion: building a minimal reproducible example based on "test" datasets available in "R" packages can help both in pinpointing the problem and in allowing others to easily reproduce/understand it.






    share|improve this answer

























      up vote
      3
      down vote



      accepted










      Digging a bit more, the problem seems related to the fact that ms_simplify() adds names to the geometry column:



      polys_sf<-st_read(system.file("shape/nc.shp", package="sf") ) %>% 
      st_transform(crs="+init=epsg:4326") %>%
      ms_simplify(.)

      names(st_geometry(polys_sf))

      [1] "0" "1" "2" "3" "4" "5" "6" "7" "8" "9" "10" "11" "12" "13" "14" "15" "16" "17" "18" "19" "20" "21" "22" "23" "24" "25"
      [27] "26" "27" "28" "29" "30" "31" "32" "33" "34" "35" "36" "37" "38" "39" "40" "41" "42" "43" "44" "45" "46" "47" "48" "49" "50" "51"
      [53] "52" "53" "54" "55" "56" "57" "58" "59" "60" "61" "62" "63" "64" "65" "66" "67" "68" "69" "70" "71" "72" "73" "74" "75" "76" "77"
      [79] "78" "79" "80" "81" "82" "83" "84" "85" "86" "87" "88" "89" "90" "91" "92" "93" "94" "95" "96" "97" "98" "99"


      as suggested in https://github.com/r-spatial/sf/issues/880#issuecomment-435304536, removing the names will solve the issue. Therefore, this works:



      library(shiny)
      library(shinydashboard)
      library(leaflet)
      library(sf)
      library(rmapshaper)
      ### Read in shapefiles ###
      polys_sf<-st_read(system.file("shape/nc.shp", package="sf") ) %>%
      st_transform(crs="+init=epsg:4326") %>%
      ms_simplify(.)

      names(st_geometry(polys_sf)) = NULL

      ui<- dashboardPage(
      header = dashboardHeader(),
      sidebar = dashboardSidebar(),
      body = dashboardBody(
      box(width=12,leafletOutput("leaf"))))
      ### Server ###
      server<- function(input,output,session){
      ### This creates interactive map ###
      output$leaf<- renderLeaflet({
      leaflet(options = leafletOptions(minZoom = 7))%>%
      addPolygons(data= polys_sf)
      })
      }

      shinyApp(ui,server)


      , while if you comment out the names(st_geometry(polys_sf)) = NULL line the polygons are not shown.



      HTH!



      (BTW, as a sidenote/suggestion: building a minimal reproducible example based on "test" datasets available in "R" packages can help both in pinpointing the problem and in allowing others to easily reproduce/understand it.






      share|improve this answer























        up vote
        3
        down vote



        accepted







        up vote
        3
        down vote



        accepted






        Digging a bit more, the problem seems related to the fact that ms_simplify() adds names to the geometry column:



        polys_sf<-st_read(system.file("shape/nc.shp", package="sf") ) %>% 
        st_transform(crs="+init=epsg:4326") %>%
        ms_simplify(.)

        names(st_geometry(polys_sf))

        [1] "0" "1" "2" "3" "4" "5" "6" "7" "8" "9" "10" "11" "12" "13" "14" "15" "16" "17" "18" "19" "20" "21" "22" "23" "24" "25"
        [27] "26" "27" "28" "29" "30" "31" "32" "33" "34" "35" "36" "37" "38" "39" "40" "41" "42" "43" "44" "45" "46" "47" "48" "49" "50" "51"
        [53] "52" "53" "54" "55" "56" "57" "58" "59" "60" "61" "62" "63" "64" "65" "66" "67" "68" "69" "70" "71" "72" "73" "74" "75" "76" "77"
        [79] "78" "79" "80" "81" "82" "83" "84" "85" "86" "87" "88" "89" "90" "91" "92" "93" "94" "95" "96" "97" "98" "99"


        as suggested in https://github.com/r-spatial/sf/issues/880#issuecomment-435304536, removing the names will solve the issue. Therefore, this works:



        library(shiny)
        library(shinydashboard)
        library(leaflet)
        library(sf)
        library(rmapshaper)
        ### Read in shapefiles ###
        polys_sf<-st_read(system.file("shape/nc.shp", package="sf") ) %>%
        st_transform(crs="+init=epsg:4326") %>%
        ms_simplify(.)

        names(st_geometry(polys_sf)) = NULL

        ui<- dashboardPage(
        header = dashboardHeader(),
        sidebar = dashboardSidebar(),
        body = dashboardBody(
        box(width=12,leafletOutput("leaf"))))
        ### Server ###
        server<- function(input,output,session){
        ### This creates interactive map ###
        output$leaf<- renderLeaflet({
        leaflet(options = leafletOptions(minZoom = 7))%>%
        addPolygons(data= polys_sf)
        })
        }

        shinyApp(ui,server)


        , while if you comment out the names(st_geometry(polys_sf)) = NULL line the polygons are not shown.



        HTH!



        (BTW, as a sidenote/suggestion: building a minimal reproducible example based on "test" datasets available in "R" packages can help both in pinpointing the problem and in allowing others to easily reproduce/understand it.






        share|improve this answer












        Digging a bit more, the problem seems related to the fact that ms_simplify() adds names to the geometry column:



        polys_sf<-st_read(system.file("shape/nc.shp", package="sf") ) %>% 
        st_transform(crs="+init=epsg:4326") %>%
        ms_simplify(.)

        names(st_geometry(polys_sf))

        [1] "0" "1" "2" "3" "4" "5" "6" "7" "8" "9" "10" "11" "12" "13" "14" "15" "16" "17" "18" "19" "20" "21" "22" "23" "24" "25"
        [27] "26" "27" "28" "29" "30" "31" "32" "33" "34" "35" "36" "37" "38" "39" "40" "41" "42" "43" "44" "45" "46" "47" "48" "49" "50" "51"
        [53] "52" "53" "54" "55" "56" "57" "58" "59" "60" "61" "62" "63" "64" "65" "66" "67" "68" "69" "70" "71" "72" "73" "74" "75" "76" "77"
        [79] "78" "79" "80" "81" "82" "83" "84" "85" "86" "87" "88" "89" "90" "91" "92" "93" "94" "95" "96" "97" "98" "99"


        as suggested in https://github.com/r-spatial/sf/issues/880#issuecomment-435304536, removing the names will solve the issue. Therefore, this works:



        library(shiny)
        library(shinydashboard)
        library(leaflet)
        library(sf)
        library(rmapshaper)
        ### Read in shapefiles ###
        polys_sf<-st_read(system.file("shape/nc.shp", package="sf") ) %>%
        st_transform(crs="+init=epsg:4326") %>%
        ms_simplify(.)

        names(st_geometry(polys_sf)) = NULL

        ui<- dashboardPage(
        header = dashboardHeader(),
        sidebar = dashboardSidebar(),
        body = dashboardBody(
        box(width=12,leafletOutput("leaf"))))
        ### Server ###
        server<- function(input,output,session){
        ### This creates interactive map ###
        output$leaf<- renderLeaflet({
        leaflet(options = leafletOptions(minZoom = 7))%>%
        addPolygons(data= polys_sf)
        })
        }

        shinyApp(ui,server)


        , while if you comment out the names(st_geometry(polys_sf)) = NULL line the polygons are not shown.



        HTH!



        (BTW, as a sidenote/suggestion: building a minimal reproducible example based on "test" datasets available in "R" packages can help both in pinpointing the problem and in allowing others to easily reproduce/understand it.







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Nov 10 at 21:24









        lbusett

        3,01921328




        3,01921328






























             

            draft saved


            draft discarded



















































             


            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53227205%2fpolygons-not-getting-plotted-in-leaflet-r-map-since-update%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            Florida Star v. B. J. F.

            Danny Elfman

            Lugert, Oklahoma