gpt4 book ai didi

javascript - 在 R Shiny 中使用本地文件 javascript 的 hcmap

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:38:46 26 4
gpt4 key购买 nike

我正在shiny(ui和server)上开发一个应用程序,我想用Highchart包的hcmap函数实现一个 map 。但是,在实现 map 时,我发现函数 hcmap 与站点存在依赖关系:https://code.highcharts.com/mapdata/ .

所以我的目标是在不使用互联网连接的情况下以本地方式使用关联的 javascript 文件实现 map 。我尝试了以下解决方案:我从 https://code.highcharts.com/mapdata/ 检索了 javascript 文件我将它列在 www 目录中,但没有给我任何好的结果。这是我使用的代码:

library(shinydashboard)
library(shinydashboardPlus)
library(highcharter)
library(shiny)

shinyUI(

dashboardPagePlus(
dashboardHeader(),
dashboardSidebar(),
dashboardBody(
fluidRow(box(width = 6,title="map",highchartOutput("map")))
)
)
)

shinyServer(function(input, output) {

output$map=renderHighchart({
data_fake=data.frame(code=c("RZ","MT","TD","OR","FB","SM","MK","DA"
,"GE","LB","OD","TO","TH","GB","CO","GC"),
value=c(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16)
)

hcmap(map=tags<span class="math-container">$head(tags$</span>script(src="map.js")), data = data_fake, value =
"value",joinBy = c("hc-a2", "code"), name = "Fake
data",download_map_data=FALSE,
dataLabels = list(enabled = TRUE, format = '{point.name}'),
borderColor = "gray", borderWidth = 0.9,
tooltip = list(valueDecimals = 2, valuePrefix = "DH", valueSuffix = "
MAD"))%>% hc_mapNavigation(enabled = TRUE)
})

})

我希望输出是一张 map ,但不依赖于 https://code.highcharts.com/mapdata/站点,即在我的应用程序目录中以本地方式使用 javascript 文件。

用我使用的代码映射结果:

Map result with the code I used

最佳答案

让我们试试另一个环岛

  1. 使用trace(hcmap, edit=T)修改 hcmap 以便将您想要的 map 转换为对象:

像这样:

 if (download_map_data) {
mapdata <- download_map_data(map)
return(mapdata)
}
  1. 在编辑窗口点击保存,执行:my_map <- hcmap("countries/us/us-all-all")将美国 map 更改为您想要的 map 。

  2. 将 my_map 保存为 RDS:saveRDS(my_map, "my_map.RDS")

  3. 再次编辑hcmap:trace(hcmap, edit=T) ,现在您想阅读存储的 map 而不是下载它:

    if (download_map_data) {
    mapdata <- readRDS("my_map.RDS")
    }

  4. 在编辑窗口中单击“保存”并执行您想要的 map :

    p<-hcmap("countries/us/us-all-all", data = unemployment, name = "失业", value = "值(value)", joinBy = c("hc-key", "code"), borderColor = "透明") %>% hc_colorAxis(dataClasses = color_classes(c(seq(0, 10, by = 2), 50))) %>% hc_legend(layout = "垂直", align = "右", floating = TRUE, valueDecimals = 0, valueSuffix = "%")

如果一切正常,我会离线完成!

关于javascript - 在 R Shiny 中使用本地文件 javascript 的 hcmap,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54727132/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com