Как нарисовать форму объединения прямоугольников в python

Я использую Matplotlib и Python. Я хочу нарисовать объединение группы прямоугольников. Прямоугольники могут быть подключены или отключены. Я хочу также назначить другой цвет сторонам, совместно с другими группами, зная, что между группами нет перекрывающихся областей. Есть ли у вас какие-либо идеи?

Спасибо за вашу помощь.

Я добавил код для большей точности, я попытался создать коллекцию для каждой группы прямоугольников и дать им одинаковый цвет края, но как получить только одну форму (периметр группы прямоугольников)?

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() 

One Solution collect form web for “Как нарисовать форму объединения прямоугольников в python”

Посмотрите на Shapely. Существует явный пример объединения http://toblerity.github.com/shapely/manual.html#object.union .

Для построения геометрии Shapely вы также можете использовать https://pypi.python.org/pypi/descartes .

Наконец, если объединение должно быть выполнено с помощью художников matplotlib, я реализовал алгоритм обрезания Коэна-Сазерленда для путей только на днях – я считаю, что обрезание одного полигона другим – это то же самое, что и их объединение. Я был бы рад поделиться этим кодом, если это маршрут, по которому вы решили пойти (но почему бы вам, если у вас есть Shapely!).

  • Когда использовать класс matplotlib.pyplot и когда использовать объект plot (matplotlib.collections.PathCollection)
  • Как создать тройной контурный сюжет в Python?
  • Невозможно вручную закрыть окно графика matplotlib
  • Эффективно генерировать решетку точек в python
  • Почему установка matplotlib для Python v3.4 завершается с ошибкой в ​​Windows 7 (x64)?
  • Создание тепловой карты с использованием панд TimeSeries
  • Эстетика барных прутьев и баров ошибок в морском дне
  • разброс графика в matplotlib
  • Python - лучший язык программирования в мире.