然后生成的小插图嵌入外部文件:或者,小插图中的html小部件的最佳实践

时间:2017-08-04 21:40:59

标签: r knitr cran vignette

我刚刚向CRAN提交了drake 4.0.0,并且vignettes没有正确发布。要包含visNetwork widgets,我使用代码块编写外部HTML文件,然后使用iframe标记将HTML嵌入到插图中。 (带有HTML小部件的自包含小插图需要pandoc,这会使Mac和Solaris CRAN检查喷出警告。)我看到每个应该有交互式图表的404错误。我曾尝试使用R Extensions Manual中的vignettes/.install_extras文件,但没有成功。

修改 因此,如果我想在一个插图中嵌入一个中等大小的HTML小部件,似乎所有当前选项都违反了CRAN指南:

  1. 将小部件嵌入小插图the natural way。不幸的是,这种方法需要pandoc并放大小插图的文件大小,generate warnings and notes in CRAN checks
  2. 将小部件生成为外部HTML文件的集合,并将根文件嵌入为iframe。

    一个。如果这些html文件没有在inst/doc中结束,则根本不显示小部件。

    湾如果他们最终在inst/doc,那么文件将会很大,以至于他们generate notes in CRAN checks

  3. 我错过了什么吗?我确实打算放弃next drake patch的小插图中的互动性,但我对此感到失望。

1 个答案:

答案 0 :(得分:0)

您已经使用软件包DTAT精确描述了我自己的困境,直到最后一个细节! (比较我的小插图here的功能齐全的副本。)

从与Kurt Hornik的一次交流中(我全都归功于他),我了解到将小插图复制到CRAN上的程序包Web区域的过程可能只集中于{ {1}},忽略“其他文件”表:

index.html

我应该认为解决方案就是修复任何执行此复制的CRAN脚本,以便它也刮除“其他文件...”表。也许此脚本还应该(或代替地)遵守<h2>Vignettes from package 'DTAT'</h2> <table width="100%"> <col style="width: 22%;" /> <col style="width: 2%;" /> <col style="width: 50%;" /> <col style="width: 8%;" /> <col style="width: 8%;" /> <col style="width: 8%;" /> <tr><td style="text-align: right; vertical-align: top;"><a href="../../../library/DTAT/doc/Designing-33PC.html">DTAT::Designing-33PC</a></td> <td></td><td valign="top">Exploring the '3+3/PC' dose-titration design</td> <td valign="top"><a href="../../../library/DTAT/doc/Designing-33PC.html">HTML</a></td> <td valign="top"><a href="../../../library/DTAT/doc/Designing-33PC.Rmd">source</a></td> <td valign="top" style="white-space: nowrap"><a href="../../../library/DTAT/doc/Designing-33PC.R">R code</a></td></tr> </table> <h2>Other files in the <span class="samp">doc</span> directory</h2> <table width="100%"> <col style="width: 24%;" /> <col style="width: 50%;" /> <col style="width: 24%;" /> <tr><td></td><td><span class="samp"><a href="DTAT-package.bib">DTAT-package.bib</a></span></td></tr> <tr><td></td><td><span class="samp"><a href="widget_D3-viz.html">widget_D3-viz.html</a></span></td></tr> </table>的内容。


附录:我的理解是,这是Kurt Hornik在[我的原始帖子发布后6小时]修复的,实际上,我看到的是我在CRAN上的包装插图现在包含其嵌入式小部件。