2012-02-18 77 views
3

我试图在matplotlib中创建一个更新三个艺术家的动画,包括imshow,轮廓和文本。使用FuncAnimation我能够更新文本和图像组件,但尚未能够更新轮廓。具体来说,我试过这个作为我的回调:使用FuncAnimation在matplotlib中设置轮廓图的动画

def updatefig(*args): 
    text_component.set_text(newText()) 
    image_component.set_array(newArrayData()) 
    contour_component.set_array(newArrayData()) 
    return [text_component,image_component,contour_component] 

此代码不会引发异常,但它不会更新轮廓线。我想知道这是否仅仅是一个问题,我不知道如果还有更多的问题,那么正确的设置方法。谁能告诉我这是否可能?

感谢, 礼

回答

1

我didn't充分理解你的代码(也因为它是不完整的),我想,而评论你的问题比回答吧...(但我没有足够的声望,能够做到这一点!)

无论如何...我认为这个问题可能与轮廓本身有关,它不是返回Artist,而是QuadContourSet实例!你认为这可能是问题吗?我有类似的艺术家动画...

如果这是关键,你必须“punch the QuadContourSet until it behaves like an Artist”...我可以解决我的问题与链接中的所有信息!

祝你好运!

+1

对于它的价值,这是一个非常好的答案(而且是一个很好的答案)而不是评论。不要担心发布它作为答案而不是评论! – 2012-02-29 17:50:07

+0

同意乔,并希望接受我会帮助你的声誉。我对问题中代码的不完整性表示歉意 - 我同意这不足以被复制,但这似乎是答案。 – 2012-03-14 23:39:37