Ярлыки легенды не отображаются встроенными при использовании меток и цветов на листовой карте на блестящем
Когда я хочу использовать labels
а также colors
параметры с addLegend()
функция внутри shinyApp
легенда отображается на лестнице, как вы можете видеть ниже. Но если я рендерим карту только с leaflet
за пределами shinyApp
метки правильно отображаются в строке.
Я видел этот пост с той же проблемой, но это не воспроизводимый пример, поэтому я решил опубликовать свой собственный вопрос.
- Неправильный дисплей (блестящая приборная панель)
- Правильный дисплей (буклет автономный)
Я сделал воспроизводимый пример:
# ----- Load and install missing packages
packages<-c("shiny","shinydashboard","leaflet")
new.packages <- packages[!(packages %in% installed.packages()[,"Package"])]
if(length(new.packages)) install.packages(new.packages)
lapply(packages, require, character.only = TRUE)
rm(list = c("new.packages","packages"))
# ----- Reproductible Example
# ----- UI
header <- dashboardHeader(title = "Repoductible Example")
sidebar <- dashboardSidebar(
sidebarMenu(
menuItem("map", tabName = "map", icon = icon("globe",lib="font-awesome"))
)
)
body <- dashboardBody(
tabItems(
tabItem(tabName= "map",
column(width=12,
leafletOutput("mapExmpl", width="100%",height=600)))
)
)
ui <- dashboardPage(header, sidebar, body,skin="blue")
# ----- Server
server <- function(input, output) {
labels=c("Label1","Label2","Label3","Label4","Label5")
colors<-c(rgb(243,87,26,maxColorValue=256)
,rgb(225,205,19,maxColorValue=256)
,rgb(62,3,79,maxColorValue=256)
,rgb(17,126,147,maxColorValue = 256)
,rgb(61,255,80,maxColorValue=256))
output$mapExmpl<-renderLeaflet({
leaflet()%>%addTiles(
)%>%
addLegend("bottomright", colors = colors, labels =labels ,
title = "Typo",
opacity = 1
)
})
}
shinyApp(ui,server)
2 ответа
У меня такая же проблема. В моем случае настройка CSS легенды решила проблему:
ui <- bootstrapPage(
tags$style(type="text/css", "div.info.legend.leaflet-control br {clear: both;}"),
...
)
Одной из причин этого может быть увеличение масштаба веб-страницы, то есть уровень масштабирования более 100%. Убедитесь, что вы не увеличены. Нажмите Control + 0
с клавиатуры, чтобы сбросить масштаб до 100%. Кроме того, попробуйте использовать другой веб-браузер, если проблема не устранена.
У меня была такая же глупая проблема, так как мой браузер был увеличен (>100%).