2014-09-23 5 views
6

मैं matplotlib ठीक में टेक्स्ट बॉक्स बना सकता हूं। लेकिन मैं नहीं देखता कि उन्हें एक प्रस्तुत साजिश से कैसे हटाया जाए? टेक्स्ट बॉक्स खींचने के बाद कोई figure.text.clear() या figure.text (दृश्यमान = गलत) नहीं लगता है? यह कैसे किया जाता है? और किंवदंतियों के विपरीत, आप उन्हें खींचने योग्य बनाने में असमर्थ प्रतीत होते हैं?आप पहले से तैयार किए गए Matplotlib टेक्स्ट बॉक्स को कैसे साफ़ कर सकते हैं?

+0

'figure.text.remove()'? – 101

उत्तर

11

टेक्स्ट बॉक्स कलाकार हैं। इस प्रकार, यदि आप का संदर्भ रखते हैं, तो आप के साथ बहुत सी चीजें करने में सक्षम होना चाहिए। इसलिए, किसी भी अंकन कोड,

fig.text(0, 0, 'My text') 

के बजाय आप

textvar = fig.text(0, 0, 'My text') 

कर सकते हैं आप संदर्भ है, हालांकि खो चुके हैं, सभी पाठ वस्तुओं texts विशेषता में पाया जा सकता है:

fig.texts # is a list of Text objects 

संस्करण 1.3.1 में, textvar.remove() कर रहा है एक NotImplementedError (स्पष्ट रूप से 1.4 में तय) उत्पन्न करता है। हालांकि, आप झूठी दृश्यता को सेट करके कुछ डिग्री तक पहुंच सकते हैं।

for txt in fig.texts: 
    txt.set_visible(False) 

आपके सभी टेक्स्ट बॉक्स गायब हो जाएंगे।

+0

क्या आपको 1.4 के साथ यह त्रुटि मिलती है? मैंने शपथ ली थी कि हमने तय किया है .... – tacaswell

+0

एक आकर्षण की तरह काम करता है - ty –

+0

@tcaswell मैंने सबसे हालिया संस्करण की जांच नहीं की, जो 1.3.1 के साथ है। बहुत बढ़िया है कि यह 1.4 में तय है! – Ajean

संबंधित मुद्दे