我正在尝试使用 rgl knitr 和 webgl 来按顺序绘制多个交互式 3D 图。
我遇到了一个非常奇怪的行为:当尝试用鼠标旋转绘图时,每次鼠标拖动后它们似乎都会回到其初始位置。这使得交互非常不直观。我注意到页面上的最后一个图不受此影响,但其余所有图均受此影响。
这可以在原始的knitr示例中看到:
来源:https://dl.dropboxusercontent.com/u/15335397/misc/webgl-rmd.Rmd
绘图:https://dl.dropboxusercontent.com/u/15335397/misc/webgl-rmd.html
尝试旋转第一个和第二个图形时请注意差异。
潜在原因是什么?也许可以通过向 3d 和 rgl 图传递一些附加参数来解决问题(无法找到任何参数)?或者这是knitr和webgl的一个小错误?
最佳答案
这是 knitr 中的一个错误,已被 fixed在 development version 。其原因是 rgl 包含 <script src="CanvasMatrix.js" type="text/javascript"></script>
对于每个绘图,即使同一页面上有多个绘图。我已经删除了 knitr 一侧的这一行,这样 CanvasMatrix.js
仅加载一次。您提到的 knitr 示例现在可以运行了。
关于R 3d 绘图的旋转在 knit 和 webgl 中无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23021317/