Hey Matplotlib users,

Im trying to use the tricontourf function in matplotlib to reduce the 
complexity of an unstructured dataset into contours.
The resulting contours are retrieved from the path by the to_polygon() function, but i have some trouble distinguishing inner boundaries on the polygons, while plot.show() clearly doesn't

Using Matplotlib 1.01, and the attached code, I get one level, consisting of 2 polygons, where the first is the outer boundary, and the second should be the inner boundary. The figure shown by show() correctly displays a square with a inner square cut-out. However i cannot distinguish between inner and outer boundaries in the list of polygons that to_polygon() returns.

Is there a trick how the plot functions distinguish inner boundaries? Calculating for each polygon if it is contained in other polygons will become complicated with a large number of polygons: As far as i can tell this would be checking if the starting point of each polygon is contained in any of the other polygons. Is there a simpler method i missed?

Thanks in advance,
Tijs de Kler




import matplotlib
import matplotlib.pyplot as plot

x_array = []
y_array = []
for i in range(1,5) :
    for j in range(1,5) :
        x_array.append(i)
        y_array.append(j)
        
triang = [ [0,4,5],[0,5,1], [1,5,6],[1,6,2], [2,6,7], [2,7,3],[4,8,9], [4,9,5], [6,10,11],[6,11,7], [8,12,13], [8,13,9],[9,13,14], [9,14,10], [10,14,15],[10,15,11]]

triangle_poly =matplotlib.tri.Triangulation(x_array, y_array, triang)

data=[1]*16
level_list  = [0,2]
contourplot = plot.tricontourf(triangle_poly, data, level_list)

for level in contourplot.collections:
    print level.get_paths()[0].to_polygons()

plot.show()
------------------------------------------------------------------------------
Special Offer -- Download ArcSight Logger for FREE!
Finally, a world-class log management solution at an even better 
price-free! And you'll get a free "Love Thy Logs" t-shirt when you
download Logger. Secure your free ArcSight Logger TODAY!
http://p.sf.net/sfu/arcsisghtdev2dev
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users

Reply via email to