Как вывести tmap_leaflet в Rshiny
Так что я новичок в Rshiny и R в целом. Я тестировал пакет tmap, и когда я набрал это в консоли
> working_map <- readOGR(dsn=".",layer=file_name, GDAL1_integer64_policy=TRUE)
> japan <- tm_shape(working_map) + tm_fill(col="NumIB", title="# Inbound to Cities", style="jenks")
> tmap_leaflet(japan)
Я получаю интерактивный виджет листовки, который позволяет мне видеть и увеличивать и уменьшать масштаб, как листовка.
Но я не могу интегрировать это в свое приложение Rshiny.
# ui.R
shinyUI(fluidPage(
mainPanel(
leafletOutput("working_map", height=900)
)
))
#server.R
output$working_map <- renderLeaflet({
working_map <- readOGR(dsn=".",layer=filename, GDAL1_integer64_policy=TRUE)
japan <- tm_shape(working_map) + tm_fill(col="NumIB", title="# Inbound to Cities", style="jenks")
tmap_leaflet(japan)
})
Я пробовал разные комбинации. Например, plotOutput или размещение tmap_leaflet внутри пользовательского интерфейса. Кажется, ничего из этого не работает. Если я не ошибаюсь, tmap_leaflet создаст виджет Leaflet. Должен ли я создавать это на стороне пользовательского интерфейса тогда? Или я должен использовать global.R?
1 ответ
Мне удалось это решить.
#ui.R
shinyUI(fluidPage(
titlePanel("Japan Map"),
mainPanel(
leafletOutput("working_map", height=900)
)
))
#server.R
shinyServer(function(input, output) {
output$working_map <- renderLeaflet({
working_map <- readOGR(dsn=".",layer="japan_ver81", GDAL1_integer64_policy=TRUE)
working_map <- tm_shape(working_map) + tm_fill(col="NumIB", title="# Inbound to Cities", style="jenks")
tmap_leaflet(working_map)
})
})
Это была довольно глупая ошибка с переменными. Пакеты, которые я использовал, это библиотека (tmap) и библиотека (rgdal).