我可以为六个圆圈设置动画,也可以为一条线设置动画。当我尝试同时给它们设置动画时,我无法弄清楚应该返回什么init()和animate()。对于六个圆,我“返回元组(大头针)”,对于直线,我“返回线”,。每个引脚是一个“类'matplotlib.patches.Circle'”,而该行是“类'matplotlib.lines.Line2D”。
当我尝试为圆和线设置动画时,我尝试了许多不同的return语句,但均未成功。以下是一些结果:
返回行,元组(引脚)为“元组”对象没有属性“ set_animated”
返回元组(引脚)+(行)GIVES只能将元组(不是“ Line2D”)连接到元组
返回元组(引脚)+元组(行)GIVES'Line2D'对象不可迭代
答案 0 :(得分:1)
请注意,如果使用blitting,则仅需要从动画功能返回某些内容。
如果
blit == True
,func必须返回所有已修改或创建的艺术家的可迭代对象。划线算法使用此信息来确定必须更新图形的哪些部分。如果返回blit == False
,则返回值未使用,在这种情况下可以省略。
因此,完全省略return
可能是最简单的选择。
如果您需要/想要使用blittting,则需要返回可迭代的艺术家。这可以例如是一个元组或列表。不幸的是,目前尚不清楚问题中的pins
是什么。
假设pins
是一个列表
return pins + [line]
或者如果您希望将其列为列表,
return list(pins) + [line]
假设pins
是一个元组,
return pins + (line,)
或者如果要使其为元组,
return tuple(pins) + (line,)