Moje pytanie jest proste: Mam skrypt Pythona, który generuje dane przy użyciu matplotlib. Za każdym razem, gdy go uruchamiam, generuje nowe okna z liczbami. Jak mogę zamknąć okno, które zostało otwarte po poprzednim uruchomieniu skryptu?Zamknij wcześniej istniejących liczb w matplotlib podczas uruchamiania z Eclipse
Analogiczne polecenie w Matlab polega na umieszczeniu "close all" na początku skryptu matlab.
Widziałem kilka sugestii, aby zrobić coś takiego
import matplotlib.pyplot as plt
plt.close("all")
to rozwiązanie działa, jeśli uruchomić skrypt z powłoki Python, na przykład za pomocą
>>>> execfile("myScript.py")
Mam jednak okazało się, że to nie robi działa, jeśli uruchomię skrypt za pomocą Eclipse/PyDev. Jak mogę go uruchomić w Eclipse?
przykład:
from numpy import *
from matplotlib.pyplot import *
from scipy import *
close("all")
#close any previously open plots - this doesn't work when running via Eclipse
t = linspace(0, 0.1,1000)
w = 60*2*pi
figure()
plot(t,cos(w*t))
plot(t,cos(w*t-2*pi/3))
plot(t,cos(w*t-4*pi/3))
show()
Należy wykreślić idealne przebiegi na miły 3-fazowym zasilaniem.
Działa to z poziomu konsoli (np. "uruchamia" >> execfile ("script.py") w powłoce Pythona), ale nie w Eclipse/PyDev. Jaka jest różnica? – AnjoMan
Nice. Dodaj losowy wektor do cos (w * t-4 * pi/3) dla szumu. – Andrew
@AjjoMan dlaczego zaakceptowałeś tę odpowiedź? wyraźnie nie odpowiada na twoje pytanie. – dbliss