让我们来看一下这些要点。
pt={{-4.65371,0.1},{-4.68489,0.103169},{-4.78341,0.104834},{-4.83897,0.100757},
{-4.92102,0.0949725},{-4.93456,0.100181},{-4.89166,0.122666},{-4.78298,0.129514},
{-4.72723,0.121442},{-4.68355,0.11023},{-4.65371,0.1},{-4.66924,0.10173},
{-4.93059,0.0966989},{-4.93259,0.105094},{-4.91074,0.116966},{-4.90635,0.094878},
{-4.66846,0.105327},{-4.92647,0.0956182},{-4.93433,0.102498},{-4.9333,0.0982262},
{-4.66257,0.10102}};
现在它们是按一定顺序排列的(对我来说有些混乱!),如果我们查看 ListLinePLot
,就可以看到它们的顺序。
picUnorder=ListLinePlot[pt,Frame-> True,Mesh-> All,MeshStyle-> PointSize[Large]];
SeepicUnorder=ListLinePlot[pt,Frame-> True,Mesh-> All,MeshStyle->
PointSize[Large]]/.Line[rest_]:>{Arrowheads[Table[0.02,{i,0,1,.02}]],Arrow[rest]};
GraphicsGrid[{{picUnorder,SeepicUnorder}}]
但我们需要按照下面的图像顺序排序。
是否有人对一种算法进行建议,以便可以逆时针方向对这些二维点进行排序,以便我们可以重新排列点列表,仅通过在重新排列的点上使用ListLinePlot
创建类似于最后一个图形的几何形状????
使用建议,我们得到类似以下内容的东西。
center=Mean[pt];
pts=SortBy[pt,Function[p,{x,y}=p-center;ArcTan[x,y]]];
Show[ListPlot[pt],ListLinePlot[pts,Mesh-> All,MeshStyle->
PointSize[Large]],Frame-> True]
换行
FindShortestTour
的答案适用于一般的凸包点群吗? - PlatoManiac