【问题标题】:LeafletR map not showing in browser传单地图未在浏览器中显示
【发布时间】:2023-03-03 17:18:02
【问题描述】:

我正在寻找有关获取leafletR 包的基本示例以在浏览器中显示地图的指导。使用最基本的示例,地图不会显示在浏览器中。我检查了 .html 和 .json 文件,它们存在并且格式正确。 Javascript 检查器显示此错误:

XMLHttpRequest cannot load file:///var/folders/_0/tdgf_k7x77qdn64_gk9ynljm0000gp/T/Rtmp6O4QZM/Fiji_Earthquakes/quakes.geojson. Received an invalid response. Origin 'null' is therefore not allowed access.

我在 Mac 上:OSX 10.7.5 RStudio 版本:0.98.857

代码

library(leafletR)


data(quakes)

# store data in GeoJSON file (just a subset here)
q.dat <- toGeoJSON(data=quakes[1:99,], dest=tempdir(), name="quakes")

# make style based on quake magnitude
q.style <- styleGrad(prop="mag", breaks=seq(4, 6.5, by=0.5),     style.val=rev(heat.colors(5)), leg="Richter Magnitude", fill.alpha=0.7, rad=8)

# create map
q.map <- leaflet(data=q.dat, dest=tempdir(), title="Fiji Earthquakes", base.map="osm", style=q.style, popup="mag")

# view map in browser
browseURL(q.map)

提前感谢您的任何建议。

【问题讨论】:

  • 您需要打开本地网络服务器才能查看 html,因为它正在请求获取 json。
  • 我打开了本地网络服务器并让 localhost 正常工作,但仍然无法生成地图。

标签: r leaflet rstudio


【解决方案1】:

使用本地网络服务器打开地图的快速解决方案是利用 RStudio 的 HTML 查看器。

rstudio::viewer(qmap)

【讨论】:

  • 这行得通,谢谢。虽然我仍然需要弄清楚如何在我正在创建的 shinyApp 中生成地图。
  • @glynnsc 您是否厌倦了在代码中使用“getwd()”而不是“tempdir()”?
【解决方案2】:

诀窍是在传单函数中包含incl.data=TRUE。例如,

map<-leaflet(data=leafdat, dest=downloaddir, style=sty,
             title="index", base.map="osm",
             incl.data=TRUE,  popup=popup)

查看this 帖子,其中详细说明了如何执行此操作。

【讨论】:

    猜你喜欢
    • 2017-12-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-16
    相关资源
    最近更新 更多