使用Vega生成三维表面图?

6
当前的项目要求我们在可能的情况下使用 Vega Visualization Grammar,否则退而求其次使用D3.js。3D表面图不是 Vega示例库的一部分,但 Vega文档让我有信心我们可以创建自己的图形表示。请问有人能指导我如何使用Vega生成3D表面图吗?您推荐任何教程吗?或者甚至是一个简短的配方,假设我有一个数据集,例如几百个(x,y,z)元组?

编辑:目标是准静态图形,点之间进行线性插值,在R中我们可能会像使用wireframe那样处理。

显然,我广泛使用搜索引擎,但看到很多关于α Lyrae天文研究的结果。


1
不要搜索“Vega”,而是搜索“3D变换”,你会得到大量与游戏开发、OpenGL等相关的链接。 - rioV8
使用WebGL,你可以得到更多。 - rioV8
谢谢你的提示,但问题在于 plotlyWebGL 被认为太过复杂。我想要的一个好例子是 https://en.wikipedia.org/wiki/Implied_volatility_surface。 - B--rian
有人必须做数学,这个人可以是你自己,或者你可以让WebGL或plotly完成一些棘手的数学计算。如果plotly可以轻松地绘制这样的图形,为什么不使用它呢?用JavaScript编写plotly将是一个耗时的项目。 - rioV8
1
已经有一个 plot.ly 的 JS 版本。 - i alarmed alien
2
Vega似乎具有非官方/未记录的3D可视化支持。https://github.com/vega/vega/issues/1738 目前还不清楚通过此功能到底可以实现什么,但我非常期待了解更多! - metasoarous
1个回答

4

Vega不支持3D表面绘图。您可以尝试使用另一个库,如threejs


原则上可以通过添加新的绘图类型来为 Vega 项目做出贡献吗?是否有关于如何实现的详细指南? - B--rian
threejs 是一个基于 WebGL 的场景图库。 - rioV8
请确认一下@jakevdp,截至2022年是否仍然如此? - Basj
1
@B--rian 当然你可以为 Vega 做出贡献,但是由于添加新类型的图表是一个非常复杂的过程,你不太可能找到一份指南来引导你完成所有步骤。 - Michael Mior

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接