3

我所有的 R 代码都在独立脚本中按预期运行。一旦进入 R Markdown 文件,get_map() 调用就会中断。

map <- get_map(location = 'minneapolis', zoom = 9)

我收到一个错误:

标签:unnamed-chunk-2
sink() 中的警告:没有要删除的 sink
标签:unnamed-chunk-2
process_file(text) 中的错误:
从第 53-64 行退出:close.connection(con) 中的错误:无效的连接
调用: knit -> process_file
执行停止 knitr 以状态 1 终止

有什么想法为什么 knitr 和 get_map 玩得不好?

4

1 回答 1

6

我花了一段时间才弄清楚问题所在。根本原因是对它的四个功能ggmap“粗鲁” :、和; 使用该评估 R 代码,该代码打开文本连接以记录 R 输出。因为已经关闭了所有的连接,将无法再次关闭它的连接,这导致了你看到的错误。有关详细信息,请参阅https://github.com/hadley/evaluate/blob/master/R/watcher.rcloseAllConnections()mapdist()geocode()revgeocode()route()knitrevaluateggmapevaluate

通常应该明确使用该函数关闭哪些连接,使用该close()函数很危险,closeAllConnections()因为这可能会关闭不应该关闭的连接。我不明白作者为什么要使用它,我想你需要向他报告这个问题。最后,我们应该能够无错误地运行它:

library(evaluate); library(ggmap)
evaluate("map <- get_map(location = 'minneapolis', zoom = 9)")
于 2012-06-23T00:56:59.120 回答