निम्नलिखित कोड (ध्यान दें यह समस्या प्रदर्शित करने के लिए एक अत्यंत सरलीकृत संस्करण है) चल रहा पर विचार करें:Tkinter/matplotlib बैकएंड संघर्ष अनंत mainloop का कारण बनता है
import matplotlib.pyplot as plot
from tkinter import * #Tkinter if your on python 2
def main():
fig = plot.figure(figsize=(16.8, 8.0))
root = Tk()
w = Label(root, text="Close this and it will hang!")
w.pack()
root.mainloop()
print('Code never reaches this point')
if __name__ == '__main__':
main()
पहले खिड़की बंद ठीक काम करेंगे, लेकिन दूसरे विंडो बंद कोड को लटकने का कारण बनता है, क्योंकि root.mainloop()
एक अनंत लूप का कारण बनता है। यह समस्या fig = plot.figure(figsize=(16.8, 8.0))
पर कॉल करके होती है। क्या किसी को पता है कि matplotlib.pyplot कॉल करने के बाद सफलतापूर्वक बंद करने के लिए रूट कैसे प्राप्त करें?
'pyplot' भी अपना मुख्य मेनूप शुरू करता है जो मुझे संदेह है कि आपकी समस्या है। अपनी पसंद के एक gui में mpl को एम्बेड करने के लिए http://matplotlib.org/examples/user_interfaces/ देखें – tacaswell
क्या कोई पाइपलॉट मुख्यलोप बंद करने के लिए कोई तरीका है? समस्या विभिन्न मॉड्यूल में भी, pyplot कॉल के बाद सभी निम्नलिखित tkinter खिड़कियों को प्रभावित करता है। – TheoretiCAL