Plotly geoplot在IE中工作但不是Chrome或Firefox

时间:2016-12-20 14:17:25

标签: r plotly

我正在尝试使用带有R的优秀绘图库创建地理绘图。以下最小示例适用于IE(11.0.9600.18524),但不适用于Chrome(51.0.2704.106)和Firefox(ESR 45.5。 1)。显示图例,但不显示地图。

最小例子

data <- data.frame(countryCode = c("DEU", "CHE"), measure = c(10, 20))

p <- plot_geo(data) %>%
         add_trace(
         z = ~measure, color = ~measure, locations = ~countryCode
         )
p

所有浏览器都无法访问互联网。检查Chrome记录的错误消息:

https://cdn.plot.ly/world_110m.json无法加载资源:

net::ERR_NAME_NOT_RESOLVED
plotly-latest.min.js:51 Uncaught (in promise) Error: unexpected error while fetching topojson file at https://cdn.plot.ly/world_110m.json(…)
plotly-latest.min.js:51 Uncaught (in promise) Error: unexpected error while fetching topojson file at https://cdn.plot.ly/world_110m.json(…)

有关如何在Chrome和Firefox中离线运行这些图表的任何想法吗?

编辑:在Windows 7上使用plotly 4.5.6

2 个答案:

答案 0 :(得分:0)

尝试将d3r软件包更新到最新版本。我和另一个d3.js包有类似的问题。它试图在线获取必要的javascrip包,而不是在d3r中使用脱机版本。 d3r的最新更新修复了此问题,使其脱机成为默认设置。

答案 1 :(得分:0)

嗯,这不是一个合适的解决方案,但也许信息有帮助......

我尝试使用互联网连接在RStudio中绘制代码,然后在IE,Firefox和Chrome中打开它,一切运行良好。

没有互联网的相同场景既没有在RStudio工作,也没有在任何网络浏览器上工作。在您的情况下,IE必须呈现缓存而不是获取&#34; topojson&#34;来自cdn.plot.ly.

根据https://plot.ly/r/offline/的plot.ly R doc,

  

Plotly R数字在RStudio的图形查看器中以交互方式显示,默认情况下没有任何对Plotly服务器的调用。

然而,世界地图似乎是从CDN获取的,因此您需要互联网连接。

解决方法: 使用RStudio Viewer中的选项&gt;保存为网页...然后您可以在任何没有互联网的浏览器中使用html文件。