मैं इसmatplotlib pyplot शो() एक बार काम नहीं करता है बंद कर दिया
#!/usr/bin/env python
import matplotlib.pyplot as p
for i in xrange(N):
# Create my_image here
# Display this image
p.figure()
p.imshow(my_image)
p.show()
p.close()
इस तरह एक पाश ठीक जब मैं = 0 काम करता है। कार्यक्रम जारी रखने के लिए, मुझे pyplot द्वारा बनाई गई नई आकृति को बंद करने की आवश्यकता है। अन्य सभी लूप पुनरावृत्तियों (i> 0) के लिए, एक और नया आंकड़ा नहीं बनाया गया है, एक साजिश प्रस्तुत नहीं की गई है और कार्यक्रम बस चलता है। एक आकृति बनाने वाले pyplot को बंद करने में असमर्थ क्यों एक नया (MATLAB की तरह) खोलने में असमर्थ है?
व्यवहार जो मैं उम्मीद है:
- निष्पादन p.show()
- जब मैं आंकड़ा बंद करते हैं, निष्पादन जारी है पर बंद हो जाता
- जब p.show() फिर से, का सामना करना पड़ा है नई छवि प्रदर्शित होती है।
- दोहराएँ चरण 2 से अधिक नहीं साजिश जब तक दिखाने के लिए
पर मैं एन> = 2 के लिए अनुक्रमिक भूखंडों बनाने के लिए कर रहा हूँ। आप किस आईडीई का उपयोग कर रहे हैं (यदि आप एक का उपयोग कर रहे हैं)? मुझे अगली बार मिलने से पहले साजिश को मैन्युअल रूप से बंद करना होगा, इसलिए इस उदाहरण में 'p.close() 'व्यर्थ है। – Paul
मैं स्क्रिप्ट लिखने और इसे चलाने के लिए PyCharm का उपयोग करता हूं। मुझे लगता है कि यह समस्या केवल तब होती है जब ipython -pylab –