我已经在 Javascript 中实现了一个二维kd 树(在 GitHub 上查看),并且我将它与D3一起用于最近邻搜索。
我了解到 D3 中有一个四叉树实现,但也发现 API 文档稀少,谷歌搜索没有成果。如果可能的话,我宁愿使用一个广为人知的图书馆,也不愿使用我自己重新发明的轮子。
如何使用 D3 的四叉树执行最近邻搜索?通过最近的邻居,我的意思是:
- 用二维点填充四叉树
- 搜索最接近四叉树中不一定存在的新点的四叉树包含点
我已经在 Javascript 中实现了一个二维kd 树(在 GitHub 上查看),并且我将它与D3一起用于最近邻搜索。
我了解到 D3 中有一个四叉树实现,但也发现 API 文档稀少,谷歌搜索没有成果。如果可能的话,我宁愿使用一个广为人知的图书馆,也不愿使用我自己重新发明的轮子。
如何使用 D3 的四叉树执行最近邻搜索?通过最近的邻居,我的意思是:
刷牙演示实际上并没有找到最近的邻居,而是找到了包含在给定矩形中的四叉树点。(尝试刷一个空矩形,它不一定会访问最近的邻居。)
我创建了一个示例,可以有效地在四叉树中找到任意点的最近邻居 - 请参阅http://bl.ocks.org/patricksurry/6478178