Description
get the following weird error when I switch x and y coordinates on a set of points
File "min_working_example.py", line 8, in triang = tria.Triangulation(coords[:,1],coords[:,0]) File "/usr/lib/pymodules/python2.7/matplotlib/tri/triangulation.py", line 72, in init dt = delaunay.Triangulation(self.x, self.y) File "/usr/lib/pymodules/python2.7/matplotlib/delaunay/triangulate.py", line 123, in init self.hull = self._compute_convex_hull() File "/usr/lib/pymodules/python2.7/matplotlib/delaunay/triangulate.py", line 158, in _compute_convex_hull hull.append(edges.pop(hull[-1])) KeyError: 0
The example I have posted works for the first case, but not on swapping coordinates, even though both of them are equally valid data sets.
I have attached the set of points here and a minimum working example which can generate this error. This is with matplotlib 1.3 on ubuntu 13.10 with the version from the repositories. Strangely enough, only this data set seems to be problematic.
Thanks, Subramanya
Code:
from pylab import *
import matplotlib.tri as tria
coords = loadtxt("data.txt")
fig = figure()
ax = fig.add_subplot(111)
triang = tria.Triangulation(coords[:,0],coords[:,1])
ax.triplot(triang)
savefig('a.png')
triang2 = tria.Triangulation(coords[:,1],coords[:,0])
-6.500000000000004663e-01 -8.660254037844383745e-01
-6.500000000000003553e-01 -6.062177826491067512e-01
-6.500000000000003553e-01 -3.464101615137751833e-01
-6.500000000000002442e-01 -8.660254037844355990e-02
-6.500000000000001332e-01 1.732050807568880635e-01
-6.500000000000000222e-01 4.330127018922196869e-01
-6.499999999999999112e-01 6.928203230275513658e-01
-6.499999999999998002e-01 9.526279441628826561e-01
-4.250000000000004885e-01 -9.959292143521041307e-01
-4.250000000000003220e-01 -7.361215932167725073e-01
-4.250000000000002665e-01 -4.763139720814408840e-01
-4.250000000000001554e-01 -2.165063509461093161e-01
-4.250000000000000444e-01 4.330127018922230731e-02
-4.249999999999999334e-01 3.031088913245539307e-01
-4.249999999999998224e-01 5.629165124598856096e-01
-4.249999999999997669e-01 8.227241335952174550e-01
-2.000000000000003442e-01 -8.660254037844382635e-01
-2.000000000000002331e-01 -6.062177826491067512e-01
-2.000000000000001499e-01 -3.464101615137751278e-01
-2.000000000000000389e-01 -8.660254037844355990e-02
-1.999999999999999556e-01 1.732050807568881190e-01
-1.999999999999998446e-01 4.330127018922196869e-01
-1.999999999999997613e-01 6.928203230275513658e-01
2.499999999999980016e-02 -7.361215932167725073e-01
2.499999999999985567e-02 -4.763139720814409950e-01
2.499999999999999445e-02 -2.165063509461093716e-01
2.500000000000007772e-02 4.330127018922225179e-02
2.500000000000017486e-02 3.031088913245538752e-01
2.500000000000029976e-02 5.629165124598854986e-01
2.499999999999998335e-01 -6.062177826491067512e-01
2.499999999999999722e-01 -3.464101615137752388e-01
2.500000000000001110e-01 -8.660254037844355990e-02
2.500000000000002220e-01 1.732050807568880080e-01
2.500000000000002776e-01 4.330127018922196314e-01
4.749999999999999778e-01 -4.763139720814410505e-01