Cómo dibujar la forma de unión de rectangularjs en python

Estoy usando Matplotlib y Python. Quiero dibujar la unión de un grupo de rectangularjs. Los rectangularjs se pueden conectar o desconectar. También quiero asignar un color diferente a los lados en común con otros grupos, sabiendo que no hay regiones superpuestas entre los grupos. ¿Tiene alguna idea?

Gracias por tu ayuda.

Agregué código para mayor precisión, traté de hacer una colección para cada grupo de rectangularjs y darles el mismo color de borde, pero ¿cómo obtener solo una forma (el perímetro del grupo de rectangularjs)?

import numpy as np import matplotlib from matplotlib.patches import Rectangle from matplotlib.collections import PatchCollection import matplotlib.pyplot as plt fig=plt.figure() ax=fig.add_subplot(111) patches = [] ListCollections=[] while Cd1: while Cd2: patches += Rectangle((x,y), 400, 200) p = PatchCollection(patches, cmap=None) p.set_edgecolor('red') p.set_facecolor(None) ListCollections.append(p) patches =[] for l in ListCollections: ax.add_collection(p) plt.show() 

Echa un vistazo a Shapely. Hay un ejemplo explícito de unión http://toblerity.github.com/shapely/manual.html#object.union .

Para trazar las geometrías de Shapely, es posible que también desee utilizar https://pypi.python.org/pypi/descartes .

Finalmente, si la unión debe hacerse con artistas de matplotlib, implementé el algoritmo de recorte Cohen-Sutherland para las rutas el otro día. Creo que recortar un polígono con otro es lo mismo que tomar su unión. Estaré encantado de compartir el código si esa es la ruta por la que decide irse (¡pero por qué lo haría cuando tenga Shapely!).