我已经在Javascript中实现了一个2维的k-d树(在GitHub上查看),并且我正在与D3一起使用它进行最近邻搜索。
我发现D3中有一个四叉树实现,但是API文档很少,Google搜索也无果。如果可能的话,我宁愿使用一个经过充分验证的库而不是自己重新发明轮子。
如何使用D3的四叉树执行最近邻搜索?对于最近邻,我的意思是:
- 用二维点填充四叉树
- 查找四叉树中离一个新点最近的点,该点不一定存在于四叉树中
我已经在Javascript中实现了一个2维的k-d树(在GitHub上查看),并且我正在与D3一起使用它进行最近邻搜索。
我发现D3中有一个四叉树实现,但是API文档很少,Google搜索也无果。如果可能的话,我宁愿使用一个经过充分验证的库而不是自己重新发明轮子。
如何使用D3的四叉树执行最近邻搜索?对于最近邻,我的意思是:
刷选演示实际上并没有找到最近的邻居,而是找到包含在给定矩形中的四叉树点。(尝试刷选一个空矩形,并不一定访问其最近的邻居。)
我派生了一个示例,可以高效地找到四叉树中任意点的最近邻居-请参见http://bl.ocks.org/patricksurry/6478178