Строки не обновляются в matplotlib с помощью blit - PullRequest
0 голосов
/ 09 апреля 2020

Я пытаюсь обновить эту группу графиков. Он состоит из 5 вспомогательных участков: ax_main , который является imshow (), ax_x и ax_x1 - это графики в верхнем правом углу и ax_y и ax_y1 являются нижними. Я хочу обновить эти строки и для этого у меня есть этот раздел кода:

        # update data
        # Save the background

        self.canvas.x_pos_line.set_ydata(self.canvas.xresults)
        self.canvas.y_pos_line.set_ydata(self.canvas.yresults)
        self.canvas.x_sens_line.set_ydata(self.canvas.sensitivity_x)
        self.canvas.y_sens_line.set_ydata(self.canvas.sensitivity_y)

        self.canvas.ax_x1.set_ylim(np.min(self.canvas.sensitivity_x), np.max(self.canvas.sensitivity_x))
        self.canvas.ax_y1.set_ylim(np.min(self.canvas.sensitivity_y), np.max(self.canvas.sensitivity_y))

        backgrounds = [self.canvas.fig.canvas.copy_from_bbox(ax.bbox) for ax in self.canvas.fig.axes]

        for background in backgrounds:
            self.canvas.fig.canvas.restore_region(background)

        self.canvas.ax_main.draw_artist(self.canvas.im_main)
        self.canvas.ax_main.draw_artist(self.canvas.scat)
        self.canvas.ax_x.draw_artist(self.canvas.x_pos_line)
        self.canvas.ax_x1.draw_artist(self.canvas.x_sens_line)
        self.canvas.ax_y.draw_artist(self.canvas.y_pos_line)
        self.canvas.ax_y1.draw_artist(self.canvas.y_sens_line)
        self.canvas.fig.canvas.blit(self.canvas.ax_main.bbox)
        self.canvas.fig.canvas.blit(self.canvas.ax_x.bbox)
        self.canvas.fig.canvas.blit(self.canvas.ax_x1.bbox)
        self.canvas.fig.canvas.blit(self.canvas.ax_y.bbox)
        self.canvas.fig.canvas.blit(self.canvas.ax_y1.bbox) 

объект self.canvas моего создания, и он не имеет ничего общего с matplotlib fig.canvas . Я ожидал, что синие и красные линии будут заменены новыми. Есть идеи, почему это происходит? У меня нет solid гр asp того, что делает restore_region , но я также не могу найти его документацию в Интернете.

enter image description here

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