使用d3_sankey复制Sankey图表示例时出现问题

ado*_*asb 8 r d3.js rcharts sankey-diagram

我试图用rCharts库来重现简单的例子来绘制sankey图表.我从头开始发现这个例子并尝试重现它,然而,我想出了一些问题.

首先,我试过没有任何东西运行这个代码.然后我发现并意识到,我需要在我的电脑中使用d3_sankey.所以,我从这里下载并复制到C:\Users\adomas\Documents\R\win-library\3.0\rCharts\libraries\widgets\d3_sankey.

然后我再次尝试了这个未更改的代码,但仍然出现以下错误:

Error in file(con, "r") : cannot open the connection In addition: Warning message: In file(con, "r") : cannot open file '/config.yml': No such file or directory

由于这也没有帮助,我尝试改变路径: sankeyPlot$setLib('libraries/widgets/d3_sankey') sankeyPlot$setTemplate(script = "libraries/widgets/d3_sankey/layouts/chart.html")

sankeyPlot$setLib('C:/Users/adomas/Documents/R/win-library/3.0/rCharts/libraries/widgets/d3_sankey') sankeyPlot$setTemplate(script = "C:/Users/adomas/Documents/R/win-library/3.0/rCharts/libraries/widgets/d3_sankey/layouts/chart.html")

但是,这一次,Viewer中的空白屏幕出现但没有实际的Sankey图表,我在控制台中得到以下内容: Warning message: In readLines(file, warn = warn, ...) : invalid input found on input connection 'C:/Users/adomas/Documents/R/win-library/3.0/rCharts/libraries/widgets/d3_sankey/layouts/chart.html

我试过改变路径等,但仍然有问题.而且我不确定我是否需要使用它sankeyPlot$setTemplate.我想在我闪亮的应用程序中使用Sankey图表,但首先我想简单地在R中重现.建议会有很多帮助!

库的 rCharts_0.4.2 igraph_0.7.0 版本:R版本:3.0.2

编辑: 我在不同的系统上尝试过这段代码.一切都在那里工作.库和R的版本是相同的,我复制了相同的文档,只是指定了完整路径.我已经在自己的计算机上再次尝试过,但仍然遇到了同样的错误.

Tim*_*ror 7

我遇到过同样的问题.我的解决方案是升级rCharts:

devtools::install_github("rCharts", "ramnathv")
Run Code Online (Sandbox Code Playgroud)

其次,我没有包含sankeyPlot $ setTemplate()行.

最后,$ setLib()中的路径应该是一个直接路径(如@adomasb解决方案中所述,或者以下行可用于直接链接到原始github:

sankeyPlot$setLib('http://timelyportfolio.github.io/rCharts_d3_sankey/libraries/widgets/d3_sankey')
Run Code Online (Sandbox Code Playgroud)

最后一种方法的缺点是始终需要Internet来运行脚本.


ado*_*asb 2

好吧,最终它会按预期工作。

我刚刚重新启动了系统,仅此而已。但是,如果有人遇到同样的问题,只需确保指定直接路径,在其中放置 d3_sankey 的所有必需文件。因此,您宁愿使用 sankeyPlot$setLib('C:/Users/adomas/Documents/R/win-library/3.0/rCharts/libraries/widgets/d3_sankey')

这是很棒的图表类型。祝你好运!