1

我有一组要点:

    Data2D = {{-4.432561, 11.687700000000001}, 
   {-3., 5.196152}, 
   {-6.25,10.825320000000001}, 
   {-5.3412805,11.256510000000002}, 
   {-3.9550406666666666,9.523850666666668}, 
   {-3.4775203333333335,7.360001333333334},
   {-4.083333333333333, 7.072541333333334}};

当我调用 PlanarGraphPlot[Data2D] 时,元素 (3,5,7) 和 (2,3,6) 之间存在重叠。

这是图片“ http://i.stack.imgur.com/gvVBQ.png

当我添加

{-5.166666666666666, 8.948930666666667}, {-4.560853666666667,9.236390666666667} 

对于 Data2D,Mathematica 没有给出任何结果!

4

1 回答 1

0

对于它的价值,我可以复制结果。运行 PlanarGraphPlot[] 时,我也收到以下错误:

CompiledFunction::cflist:生成的非张量对象;继续进行未编译的评估。

问题似乎出在 DelauneyTriangulation[] 函数中,因为在 Data2D 上运行该函数时出现相同的错误(和部分/无输出)。显然,据我所知,它失败的原因是因为你的一堆点太接近共线了。我尝试了以下方法,它就像一个魅力:

PlanarGraphPlot[Data2D + Table[ {Random[],Random[]}, {Length[Data2D]}]]

当然,这不是您想要的,而且 Mathematica 函数应该可以毫无障碍地做正确的事情。我会就此提交一份错误报告,但我不会屏息以待它很快就会得到修复。在那之前,实现您自己的三角测量算法可能会更容易。

于 2013-03-20T15:25:42.420 回答