Matplotlib ion () und Unterprozesse

Ich versuche, ein Diagramm zu öffnen, damit der Benutzer bestätigen kann, dass eine Anpassung funktioniert hat, aber nicht den gesamten Vorgang beenden kann. Während das Fenster angezeigt wird, befindet sich jedoch nie etwas in dem Fenster, und es antwortet nicht. Ich vermute, dass es eine schlechte Interaktion mit der Unterprozessfunktionalität gibt, da dieser Code Frontend und Datenverarbeitung für eine Simulation ist, die in C ++ ausgeführt wird.

import subprocess
import numpy as np
from matplotlib import pyplot as mpl
...
mpl.ion()
fig = mpl.figure()
ax = fig.add_subplot(1,1,1)
ax.grid(True)
ax.plot(x, y, 'g')
ax.scatter(X, Y, c='b')
ax.scatter(min_tilt, min_energy, c='r')
mpl.draw()
...
subprocess.call(prog)

Der folgende Unterprozess wird geöffnet. Wenn ich das entferneion() anrufen und verwendenmpl.show(), dann funktioniert der Plot einwandfrei, aber der gesamte Vorgang dauert an, bis das Fenster geschlossen wird. Ich benötige den Prozess, um fortzufahren, während der Benutzer das Diagramm betrachtet. Gibt es eine Möglichkeit, dies zu tun?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage