我正在使用RStudio开发的新传单包部署shinyapp。似乎没有关于某些元素的在线文档 - 在我的情况下,我需要指定图例显示因子级别的顺序。通常,我会通过在绘图命令之前指定级别来执行此操作(例如在ggplot2中):
df$name <- factor(df$name, levels = sort(df$name))
但是,这似乎与传单中的图例无关。以下是MWE(N.B. Africa geojson文件可以下载here)。您将看到图例顺序不按字母顺序排序,正如人们通常所期望的那样。我的问题是如何做到这一点。
library(shiny)
library(leaflet)
map_africa <- rgdal::readOGR("africa.geo.json", "OGRGeoJSON")
map_africa$name <- factor(map_africa$name, levels = sort(map_africa$name))
ui <- bootstrapPage( leafletOutput("map") )
server <- function(input, output, session) {
pal <- colorFactor('RdYlBu', map_africa$name)
output$map <- renderLeaflet({
leaflet(map_africa) %>%
addPolygons(stroke = F,
fillColor = ~pal(name),
popup = ~name) %>%
addLegend(position = 'topright',
colors = ~pal(name),
labels = ~name)
})
}
shinyApp(ui, server)