Обрезать изображение с помощью нескольких патчей в matplotlib

У меня есть участок в pylab, который я хочу прикрепить к границам карты Великобритании.

Я также сделал серию патчей, которые содержат контуры каждой страны: один для Англии, один для Уэльса и т.д.

Обрезание сюжета одного патча работает блестяще:

fig = plt.figure()
ax = fig.add_subplot(111)
im = ax.scatter(x,y,c = z)
ax.add_patch(patch)
im.set_clip_path(patch)

Но если я пытаюсь сделать это для нескольких патчей, это оставляет меня ни с чем - понятно, поскольку ни одна часть сюжета не находится в пределах каждой страны одновременно.

Кто-нибудь знает, как я могу сделать клиппинг, используя оператор типа 'OR'? (т.е. не клипать, если в пределах этого патча или этого и т.д.).

5
задан Hannah Fry 14 November 2011 в 18:17
поделиться