Объект "Аннотация" не повторяется - PullRequest
0 голосов
/ 08 мая 2020

Я экспериментирую с футбольными данными и пытаюсь снять на видео игроков, движущихся по полю, со своими номерами. Я заставляю игроков двигаться, но, кажется, не могу вычислить числа. Я пробовал несколько вещей, и совсем недавно это:

objs, = ax.plot(homex,homey,color=hcolorv,marker='o',linestyle="",MarkerSize=PlayerMarkerSize,alpha=PlayerAlpha)
figobjs.append(objs)
objs, = ax.plot(awayx,awayy,color=acolorv,marker='o',linestyle="",MarkerSize=PlayerMarkerSize,alpha=PlayerAlpha)
figobjs.append(objs)
            # if include_player_velocities:
            #   ax.quiver(homex,homey,homes['speed']) We need to break velocities into x and y components
            # if annotate:
            #   ax.text(homex+.5,homey+.5,homes['number'],fontsize=10,color=homecolor)
if annotate:
    for x,y in zip(homex,homey):
        label = list(homes['number'])
        objs, = ax.annotate(label,(x,y),textcoords="offsetpoints",xytext=(0,0),ha='center')

Кроме того, вот как выглядят некоторые из этих элементов:

homex
Output: [0.17, 9.06, 19.85, 7.83, 45.18, 0.08, 0.01, 14.55, 19.59, 1.07, 17.25]
homey
Output: [-10.34, 0.97, 4.48, -5.31, 0.22, -22.02, 9.12, 22.68, -3.91, 19.52, -18.88]
list(homes['number'])
Output: [9, 22, 5, 27, 1, 8, 10, 4, 15, 11, 3]

Я получаю эту ошибку, хотя: «TypeError: объект 'Annotation' не повторяется» Есть идеи?

1 Ответ

1 голос
/ 08 мая 2020

ax.annotate возвращает экземпляр класса Annotation. Вы называете это objs, = ax.annotate(...). Эта запятая после objs заставляет Python деструктурировать Annotation как список элементов и брать первый элемент.

tl; dr: вам, вероятно, не нужна запятая после objs.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...