दिलचस्प पोस्ट
एप्लिकेशन से कैसे निकलते हैं और होम स्क्रीन दिखाते हैं? कैसे जादूगर के साथ https को पकड़े, जावा में रेल पर रूबी में मैं वर्तमान निरपेक्ष यूआरएल कैसे प्राप्त करूं? क्या इवेंट घोषणापत्र पर गुमनाम खाली प्रतिनिधि को जोड़ने का एक नकारात्मक पहलू है? कैसे एक goroutine को रोकने के लिए क्या कोई बेहतर विंडोज कंसोल विंडो है? यदि रिक अनुप्रयोगों को स्टेटलेस होना चाहिए, तो आप सत्रों का प्रबंधन कैसे करते हैं? मैवेन में एन्कोडिंग को कैसे कॉन्फ़िगर करें? सी में किसी फ़ंक्शन से `स्ट्रेट` लौटें बेस 64 सांकेतिक शब्दों में बदलना और डीकोड उदाहरण कोड कैसे मानव पठनीय प्रलेखन के लिए XSD परिवर्तित? मुख्य प्रोटोटाइप घोषित करें निष्पादित करने के लिए फ़ंक्शन द्वारा लिया गया समय मापने का तरीका सी ++ में फ़ाइल संशोधन के लिए मैं अपने प्रोग्राम को कैसे देखूं? क्या एसटीएल कंटेनर एडाप्टर के अंतर्निहित कंटेनर तक पहुंचने का कोई तरीका है?

R: किसी ऑब्जेक्ट में एक प्लॉट सहेज रहा है

ggplot2 , कोई भी आर ऑब्जेक्ट में ग्राफ़िक को आसानी से बचा सकता है।

 p = ggplot(...) + geom_point() # does not display the graph p # displays the graph 

मानक फ़ंक्शन plot ग्राफिक को एक शून्य समारोह (मुझे लगता है) के रूप में पैदा करता है और शून्य देता है।

 p = plot(1:10) # displays the graph p # NULL 

क्या किसी ऑब्जेक्ट में plot द्वारा बनाए गए ग्राफिक को सहेजना संभव है?

वेब के समाधान से एकत्रित समाधान "R: किसी ऑब्जेक्ट में एक प्लॉट सहेज रहा है"

बेस ग्राफ़िक किसी डिवाइस पर सीधे आकर्षित होते हैं।

आप उपयोग कर सकते हैं

1- recordPlot

2- हाल ही में शुरू किए gridGraphics ग्रिड ग्राफिक्स पैकेज , आधार ग्राफिक्स को उनके ग्रिड समकक्ष में बदलने के लिए

यहां एक न्यूनतम उदाहरण है,

 plot(1:10) p <- recordPlot() plot.new() ## clean up device p # redraw ## grab the scene as a grid object library(gridGraphics) library(grid) grid.echo() a <- grid.grab() ## draw it, changes optional grid.newpage() a <- editGrob(a, vp=viewport(width=unit(2,"in")), gp=gpar(fontsize=10)) grid.draw(a) 

यदि आप सीधे निर्मित ऑब्जेक्ट के मूल्यों को बदलना नहीं चाहते हैं, तो आप pryr पैकेज के सक्रिय बाइंडिंग सुविधा का उपयोग कर सकते हैं।

 library(pryr) a %<a-% plot(1:10,1:10) 

हर बार जब आप कंसोल पर टाइप करते हैं, तो ग्राफ़ को स्क्रीन पर फिर से प्रिंट किया जाएगा। %<a-% ऑपरेटर हर बार स्क्रिप्ट फिर से चलाएगा (एक ग्राफ के मामले में यह मुझे कोई समस्या नहीं है)। इसलिए अनिवार्य रूप से हर बार जब आप कोड का उपयोग a तो आपके ग्राफ़ में जिसके परिणामस्वरूप आप पुन: चलाए जा सकते हैं (उदाहरण के लिए शीर्ष पर एक अन्य प्लैट ओवर) या उदाहरण के लिए png का उपयोग कर बचा सकते हैं। कोई भी मूल्य अपने आप में संग्रहीत नहीं किया जाएगा मान अभी भी नल होगा

मुझे नहीं पता है कि उपरोक्त क्या आप ढूंढ रहे हैं, लेकिन यह एक स्वीकार्य समाधान हो सकता है।

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

मैंने किसी ऑब्जेक्ट के बजाय एक फ़ंक्शन का उपयोग करके इसे हल किया। उदाहरण के लिए, मान लीजिए कि हम दो मापदंडों के साथ दो बीटा वितरणों की तुलना करना चाहते हैं हम चला सकते हैं:

 z1<-rbeta(10000,5,5) z2<-rbeta(10000,20,20) plotit<-function(vector,alpha,beta){ plot(density(vector),xlim=c(0,1)) abline(v=alpha/(alpha+beta),lty="longdash") } 

और भूखंडों को ऑब्जेक्ट्स के बजाय फ़ंक्शन के रूप में सहेजें।

 z.plot1<-function(){plotit(z1,5,5)} z.plot2<-function(){plotit(z2,20,20)} 

इसके बाद, हम प्रत्येक भूखंड को कॉल कर सकते हैं क्योंकि हम केवल दो भूखंडों को ऑब्जेक्ट्स के बजाय फ़ंक्शन कहते हैं।

 z.plot1() 

पहली साजिश भूखंड और

 z.plot2() 

दूसरे प्लॉट्स

आशा है कि किसी को जो इस बाद में भर में मदद करता है!