Я хочу автоматически сгенерировать серию графиков, которые обрезаются по патчам. Если я попытаюсь повторно использовать объект патча, он перемещает позицию по холсту.
Этот сценарий (основанный на ответе на предыдущий вопрос Яна) демонстрирует, что происходит.
import pylab as plt
import scipy as sp
import matplotlib.patches as patches
sp.random.seed(100)
x = sp.random.random(100)
y = sp.random.random(100)
patch = patches.Circle((.75,.75),radius=.25,fc='none')
def doplot(x,y,patch,count):
fig = plt.figure()
ax = fig.add_subplot(111)
im = ax.scatter(x,y)
ax.add_patch(patch)
im.set_clip_path(patch)
plt.savefig(str(count) + '.png')
for count in xrange(4):
doplot(x,y,patch,count)
Первый сюжет выглядит так:
Но во втором «1.png» патч переместился .. {{ 1}}
Однако повторное построение графика не сдвигает патч. «2.png» и «3.png» выглядят точно так же, как «1.png».
Может ли кто-нибудь указать мне в правильном направлении что я делаю не так ??
На самом деле, патчи, которые я использую, относительно сложны и требуют времени на создание - я бы предпочел не переделывать их каждый кадр, если это возможно.