2015-06-23 5 views
15

आप आरस्टूडियो प्लॉटिंग डिवाइस में वर्तमान (लेकिन सभी नहीं) प्लॉट को कैसे हटाते हैं?आप RStudio plotting डिवाइस में वर्तमान (लेकिन सभी नहीं) प्लॉट को कैसे हटाते हैं?

dev.off() सभी भूखंडों को हटा देगा, लेकिन अगर मैं सिर्फ एक को हटाना चाहता हूं तो क्या होगा? मैं उस लाल 'एक्स' बटन को दबा नहीं देना चाहता क्योंकि मैं बटन दबाए बिना एक साजिश को हटाना चाहता हूं।

+0

आउटपुट प्लॉट फ़ाइलों को क्यों नहीं, तो हम उन लोगों को चुन सकते हैं जिन्हें हम रखना चाहते हैं? – zx8754

+0

प्लॉट्स टैब के तहत प्लॉट निकालें जो प्लॉट विंडो में जो भी साजिश दिखाया गया है उसे हटा देगा। – lawyeR

+0

क्या आप आखिरी साजिश को हटाने के लिए अपने आर स्क्रिप्ट में उपयोग किए गए अंतिम आदेश को शायद प्रदान कर सकते हैं? मैंने सी ++ फ़ंक्शन @ हाइथम नामक समझने की कोशिश की लेकिन अब मुझे पता है कि इसे कैसे काम पर लाया जाए। – drmariod

उत्तर

11

आर में, आप प्रत्येक प्लॉट से पहले dev.new() का उपयोग करेंगे, इसलिए आप केवल अंतिम प्लॉट को साफ़ करने के लिए dev.off() का उपयोग करेंगे।

आरस्टूडियो में, आप प्रत्येक प्लॉट से पहले x11(), windows() या quartz() (आपके डिवाइस के आधार पर) का उपयोग कर सकते हैं। फिर अंतिम साजिश को साफ़ करने के लिए dev.off() पर कॉल करें। आप इस तरह के विशिष्ट भूखंडों का चयन करने के लिए dev.set() का भी उपयोग कर सकते हैं।

अपने प्रश्न विशेष रूप से (न कि नई विंडो बनाने की तुलना में) एक ही RStudio खिड़की के भीतर पिछले साजिश को हटाने के लिए पूछ रहा है, तो यकीन नहीं करता है, तो यह संभव है के बाद से RStudio एक उपकरण के रूप में उस खिड़की व्यवहार करता है। एक विचार RStudio प्रोजेक्ट में C++ फ़ंक्शन removePlot() को कॉल करने का तरीका देखना होगा।

RStudio GitHub में मिला: https://github.com/rstudio/rstudio/blob/9822a771429a865e898a0dc398528d8869f171f1/src/cpp/session/modules/SessionPlots.cpp#L81

सी ++ कोड: display.removePlot(display.activePlotIndex());

या @ zx8754 के रूप में सुझाव आप उत्पादन भूखंडों सकता है और फ़ाइलों कि जिस तरह से लेते हैं।

आशा है कि मदद करता है!

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