0

我对人们用来可视化盒子中数百万个粒子的不同算法感兴趣。我知道您可以使用 Cloud-In-Cell、自适应网格、内核平滑、最近网格点方法等来减少内存负载,但是关于如何在线执行这些操作的文档很少。

即我有数组:

x,y,z
1,2,3
4,5,6
6,7,8
xi,yi,zi

例如,i = 1 亿。我不希望像 Mayavi/Paraview 这样的包来执行此操作,我想自己编写代码,然后将分解的矩阵加载到 Mayavi(而不是即时渲染)如果我尝试使用粒子,我可怜的 8Gb Macbook 会爆炸职位。任何教程将不胜感激。

4

1 回答 1

0

为复杂的多维数据分析和创建可视化是很复杂的。最好的可视化几乎总是取决于数据是什么,以及数据中存在什么关系。当然,您可能希望创建数据的可视化以显示和探索关系。最终,这归结为尝试不同的可能性。

我的建议是考虑数据,并尝试找到合理的方法来分割维度。3D 绘图,如曲面图或体素渲染可能是您想要的。就个人而言,我更喜欢尝试寻找 2D 表示,因为它们更容易理解并与其他人交流。等高线图很棒,因为它们以 2D 形式显示 3D 信息。您可以并排显示一系列等高线图,也可以在延时摄影中添加第四个维度。还有一些创造性的方法可以使用颜色来添加维度,同时保持可视化的可理解性——这是最重要的。

我看到您想自己编写代码。我明白那个。这样做需要付出不小的努力,之后,您可能无法进行有效的可视化。我的建议是:首先使用一个工具来帮助您制作可视化原型!我使用 gnuplot 取得了一些成功,尽管我确信还有其他选择。

一旦你对数据有了很好的处理,以及如何传达它的含义,那么你就可以很好地编写一个好的可视化代码。

更新

我将为您描述的数据提供建议。听起来好像您想要/需要点密度图。这些在地理信息系统中很流行,但还有其他用途。我以前没有使用过,但基本思想是使用一个函数来估计 3D 空间中的密度。密度成为第四维度。一些相对简单的东西,比如下面的等式,可能就足够了。

在此处输入图像描述

点密度图可能比原始粒子数据更容易切片、汇总和渲染。

我分析的数据具有不同的性质,所以我以前没有使用过这种特殊的方法。希望它被证明是有帮助的。

PS。我刚刚在下面看到您的评论,我不确定这些信息是否会对您有所帮助。但是,无论如何,我都会发布我的更新,以防万一它是有用的信息。

于 2012-12-18T16:54:39.700 回答