使用3D.js或Cairo对大型稀疏矩阵进行图形化可视化

时间:2017-05-19 10:45:40

标签: javascript svg visualization cairo bigdata

我设计了an ad hoc library to write SVG images。我将它用于大型稀疏矩阵的图形可视化:两个基因组比较的同源矩阵。

在我的情况下,通常的同源矩阵是20 000 x 20 000,有大约30 000个散点(代表同源性),例如this homology matrix

我的 ad hoc 库对于新的开发来说还不够成熟,我对3D.js库很感兴趣。我还发现图形库Cairo及其绑定pyCairo很有趣。

我的需求是:

  • 输出矩阵的SVG,PNG或PDF图像的可能性。

  • 当鼠标越过同源矩阵的一点时,我想显示具体的信息。

  • 一个优点是能够放大矩阵区域,并在缩放阈值之上显示新细节。

我知道3D.js具有动态功能(对于稀疏矩阵的导航/缩放很有趣),但我想知道它是否能够足够快地显示我的数据。在应用程序中使用Cairo并重新计算不同缩放级别的图像可能是个更好的主意。

简而言之,我觉得我有两个解决方案:

  • 使用3D.js脚本编写HTML文件,该脚本添加了同源矩阵和交互性的SVG元素。 3D.js非常适合从服务器共享矩阵。

  • 编写专用应用程序(例如使用GTK)并使用Cairo在应用程序内绘制矩阵。每次用户与应用程序交互时,都会要求Cairo重新绘制,从而添加交互。

我错过了什么吗?你会使用哪种解决方案?

0 个答案:

没有答案