【问题标题】:How can I make voronoi treemaps? [closed]如何制作 voronoi 树形图? [关闭]
【发布时间】:2009-05-08 04:38:48
【问题描述】:

我想为统计数据制作 voronoi 树形图,例如 newsgraphy

你知道我如何在 Perl、PHP、Ruby 或 Python 中做到这一点吗?

【问题讨论】:

  • 好奇的示例图片。我认为没有任何一组点可以将其作为 Voronoi 镶嵌。尤其是两条长长的直线让我很怀疑。
  • 如果允许分层顺序(即每个单元格内的较低级别的镶嵌),则可能是这样。然后树需要有一个由两个元素组成的第一层(如果两个点共享相同的高度,则会出现垂直条);第二层和最后一层将保存垂直线两侧显示的单元格的点。顺便说一句,这张图片是谷歌搜索“Voronoi 树图”时的第一个结果;见www-hagen.informatik.uni-kl.de/~kerren/courses/lecture/ws06/…

标签: statistics voronoi treemaps


【解决方案1】:

【讨论】:

    【解决方案2】:

    【讨论】:

      【解决方案3】:

      刚刚找到这个页面。在将 Benjamin Dittes 的 C# 版本的 Steven Fortune 算法翻译成 Javascript 之后,我一直在使用 Javascript/canvas 开发 Voronoi 演示小程序(可在 Code Project 中获得,请参阅“用 C# 实现的 Fortune 的 Voronoi 算法”)。这是在 Javascript 中包含 Fortune 的 Voronoi 算法的页面: http://www.raymondhill.net/voronoi/voronoi.php 这是第一次迭代,我计划进一步调整它以更好地适应 Javascript。希望这会有所帮助。

      【讨论】:

      • 太棒了!感谢您的链接:)
      【解决方案4】:

      首先,线条并不奇怪:这是因为这不是普通的 Voronoi 细分,而是面积加权 Voronoi (AWT) 细分,甚至可能是质心 Voronoi 细分 (CVT)。话虽如此,为了使 Voronoi 区域(多边形)具有显着不同的区域(这将反映数据的某些属性),您需要 AWT(最好实现为 CVT 以保留多边形的良好纵横比);普通的 Voronoi 算法(如上面某些人所建议的)将无法为您提供帮助。可能没有可用的直接解决方案,尤其是对于脚本语言,因为 AWT 的迭代更新步骤导致的计算复杂性非常高。您应该查看 Balzer 等人关于“Voronoi Treemaps”和“Dynamic Voronoi Treemaps”的工作。和 Sud 等人。了解算法,然后自己实现它(你需要的一切都在他们的论文中)。

      【讨论】:

        【解决方案5】:

        另一个 Python 答案似乎指向 仅栅格 解决方案。我也有兴趣解决这个问题(在 Python 中),我认为以下脚本可以形成一个可用的起点:

        http://www.oxfish.com/python/voronoi.py

        (Archived copy at wayback)

        【讨论】:

          【解决方案6】:

          James Tauber 正在编写一个教程,该教程使用 JavaScript 和 Fortune's algorithmcanvas 元素中绘制 Voronoi 图:Voronoi Canvas Tutorial

          它还没有完成(他在第 4 部分中的第 3 部分),但我认为已经足够完成它了。

          【讨论】:

          • 坦克!!。但我想画有界的 voronoi ;和树状图...
          【解决方案7】:

          Macrofocus TreeMap 的最新版本 (2.0) 提供了 Voronoi 算法等选项。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2021-02-09
            • 1970-01-01
            • 2013-05-04
            • 2021-01-21
            • 2017-11-20
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多