我一直在尝试学习 R 来进行一些网络分析。我找到了 networkD3 包并运行了他们的示例代码(如下)来熟悉。它会切换到控制台右侧的“查看器”选项卡,但它会显示为空白。如果我使用“导出 -> 另存为网页...”,那么我可以在浏览器中打开该保存的 html 文档并查看我希望看到的内容。
我已经尝试了一些我认为会在该查看器窗格中打开的其他内容,但它会在我的浏览器中启动一个选项卡。我什至尝试过 rstudio::viewer("document.html") 方法,它仍然进入我的浏览器。有任何想法吗?
# Create fake data
src <- c("A", "A", "A", "A", "B", "B", "C", "C", "D")
target <- c("B", "C", "D", "J", "E", "F", "G", "H", "I")
networkData <- data.frame(src, target)
# Plot
simpleNetwork(networkData)
Run Code Online (Sandbox Code Playgroud)
看来,为了使内部查看器工作,您的源文档实际上必须驻留在“会话临时目录”中——如支持文档中所述。因此 - 假设您test.html的主目录中有一个文件- 以下内容将在您的默认浏览器中打开该文件...
myViewer <- getOption("viewer")
myViewer("~/test.html")
Run Code Online (Sandbox Code Playgroud)
...但要在内部查看器窗格中打开它,您需要:
file.copy("~/test.html", file.path(tempdir(), "test.html"))
myViewer(file.path(tempdir(), "test.html"))
Run Code Online (Sandbox Code Playgroud)
这也适用于.jpg,但不与.pdf(.pdf顺便说一句,“在你的默认PDF查看器打开)。file.show()具有相关功能:它会打开.html在编辑窗口和.jpg文件-但不是.pdf要么。