प्लॉट में त्रुटि। न्यू (): फिगर मार्जिन बहुत बड़ा है, स्कैटर प्लॉट


108

मैंने एक समाधान के लिए अलग-अलग प्रश्नों में देखा है और मैंने कोशिश की है कि क्या सुझाव दिया गया था, लेकिन मुझे यह काम करने के लिए एक समाधान नहीं मिला है।

हर बार मैं इस कोड को चलाना चाहता हूं जो हमेशा कहता है:

प्लॉट.न्यू () में त्रुटि: फिगर मार्जिन बहुत बड़ा है

और मुझे नहीं पता कि इसे कैसे ठीक किया जाए। यहाँ मेरा कोड है:

par(mfcol=c(5,3))
hist(RtBio, main="Histograma de Bio Pappel")
boxplot(RtBio, main="Diagrama de Caja de Bio Pappel")
stem(RtBio)
plot(RtBio, main="Gráfica de Dispersión")

hist(RtAlsea, main="Histograma de Alsea")
boxplot(Alsea, main="Diagrama de caja de Alsea")
stem(RtAlsea)
plot(RtTelev, main="Gráfica de distribución de Alsea")

hist(RtTelev, main="Histograma de Televisa")
boxplot(telev, main="Diagrama de Caja de Televisa")
stem(Telev)
plot(Telev, main="Gráfica de dispersión de Televisa")

hist(RtWalmex, main="Histograma de Walmex")
boxplot(RtWalmex, main="Diagrama de caja de Walmex")
stem(RtWalmex)
plot(RtWalmex, main="Gráfica de dispersión de Walmex")

hist(RtIca, main="Histograma de Ica")
boxplot(RtIca, main="Gráfica de caja de Ica")
stem(RtIca)
plot(RtIca, main="Gráfica de dispersión de Ica")

मैं क्या कर सकता हूँ?



2
आपकी छवि के लिए मार्जिन बहुत बड़ा प्रतीत होता है। यदि आपके पास एक छोटा प्लॉट विंडो है तो यह हो सकता है। किसी भी मामले में, समस्या का निदान करने के लिए आपका विवरण अपर्याप्त है। हम प्लॉट विंडो के साथ आपके आर सत्र के एक प्रतिलिपि प्रस्तुत करने योग्य उदाहरण या स्क्रीनशॉट का उपयोग कर सकते हैं।
रोमन लुसट्रिक

मैंने अपना मामला, डेटा के एक छोटे उपसमुच्चय के साथ डिबग करने में मदद की, जिसे जैसे प्लॉट किया जाना था plot(df[1,1:3], df2[1,1:3])- और फिर मुझे एहसास हुआ कि मैं वास्तव में क्या करना चाहता था plot(unlist(df[1,1:3]), unlist(df2[1,1:3])): यह भी देखें: stackoverflow.com/a/17074060/6018688
fabianegli

जवाबों:


164

हर बार जब आप प्लॉट बना रहे होते हैं तो आपको यह त्रुटि मिल सकती है - " Error in plot.new() : figure margins too large"। ऐसी त्रुटियों से बचने के लिए आप पहले par("mar")आउटपुट की जांच कर सकते हैं । आपको मिलना चाहिए:

[1] 5.1 4.1 4.1 2.1

उस लेखन को बदलने के लिए:

par(mar=c(1,1,1,1))

यह त्रुटि को सुधारना चाहिए। या फिर आप अपने अनुसार मान बदल सकते हैं।

उम्मीद है इससे आपका काम बनेगा।


2
आप वास्तव में कैसे जानते हैं कि मार्जिन के अंदर कौन से मूल्य हैं? और आप यह क्यों कहते हैं कि मुझे [१] ५.१ 4.1 ४.१ 2.1 होना चाहिए, लेकिन फिर आप मुझे यह बताइए कि यह सब १ का है?
हरमन टूथ्रोट

2
मैं RStudio के साथ एक ही समस्या में भाग गया, और जब मैंने प्रवेश किया तो मैंने par("mar")उसी सटीक स्ट्रिंग को पुनः प्राप्त किया [1] 5.1 4.1 4.1 2.1जिससे मैंने प्रवेश कियाpar(mar=c(1,1,1,1)) लेकिन फिर प्लॉट () कुछ भी प्लॉट नहीं करेगा, इसलिए मुझे RStudio और टर्मिनल दोनों को बंद करना पड़ा। RStudio को फिर से खोलने के बाद, यह वापस सामान्य हो गया था।
नोबनिंजा जू

2
RStudio में R मार्कडाउन में भी यही समस्या चल रही है। हालांकि, अतिथि आर के समाधान या @noobninja पुनरारंभ ने मेरे लिए इसे ठीक नहीं किया।
एससी।

RStudio UI लेआउट समस्या के कारण आपको यह त्रुटि हो रही है, कोड के साथ कुछ गलत नहीं है। दूसरे जवाब ने इसे मेरे लिए तय कर दिया।
निकोल सुलिवन

1
@ नाइकोल सुलिवन मुझे यह त्रुटि RStudio के बिना भी मिली। जैसा कि मैंने वर्णन किया है और यह काम करता है। धन्यवाद @djhurio!
ग्वांग-जिन किम

105

यह तब हो सकता है जब RStudio में आपका प्लॉट पैनल आपके द्वारा बनाए जा रहे प्लॉट के मार्जिन के लिए बहुत छोटा हो। इसे विस्तारित करने का प्रयास करें और फिर अपना कोड फिर से चलाएँ।

RStudio UI एक त्रुटि का कारण बनता है जब चार्ट प्रदर्शित करने के लिए प्लॉट पैनल बहुत छोटा है: RStudio प्लॉट पैनल के साथ बहुत छोटा है

बस प्लॉट पैनल का विस्तार बग को ठीक करता है और चार्ट प्रदर्शित करता है: प्लॉट पैनल के साथ RStudio का विस्तार हुआ


5
यह वास्तव में काम करता है .. बस प्लॉट क्षेत्र का विस्तार करने में मदद करता है
जियापेंग झांग

3
हाँ, RStudio में पैनल का आकार बदलता है। यह एक RStudio बग है, जब आप प्लॉट पैनल को बंद करके UI के दाईं ओर को कम करते हैं।
निकोल सुलिवन

यह वास्तव में अधिकांश मामलों में काम करता है। ऐसे मामलों की एक छोटी संख्या है जहां मार्जिन वास्तव में इतना छोटा है कि भले ही आप इस खिड़की को अधिकतम करें, लेकिन आपके पास इस समस्या का कोई हल नहीं है
दिमित्रीज़ ज़ाचराटोस

27

dev.off()RStudio को मेरे लिए काम करने वाली डिफ़ॉल्ट सेटिंग्स के साथ एक नया ग्राफिक्स उपकरण खोलने के लिए आमंत्रित करना । HTH।


1
क्या आप कृपया बता सकते हैं कि यह कैसे करना है?
स्विफ्ट एरो

20

यदि आपको RStudio में यह संदेश मिलता है, तो प्लॉट्स टैब में 'ब्रूमस्टीक' आकृति "क्लियर ऑल प्लॉट्स" पर क्लिक करें और फिर से प्लॉट () आज़माएं।

इसके अलावा कमांड निष्पादित करें

graphics.off()

11
इस तीन पंक्तियों को लिखेंgraphics.off() par("mar") par(mar=c(1,1,1,1))
हिरेन

6

बस भूखंडों को साफ़ करें और कोड को फिर से निष्पादित करने का प्रयास करें ... यह मेरे लिए काम करता है


1

बस एक साइड-नोट। कभी-कभी यह "मार्जिन" त्रुटि होती है क्योंकि आप आर में एक उच्च-रिज़ॉल्यूशन आंकड़ा (जैसे। dpi = 300या res = 300) को सहेजना चाहते हैं ।
इस मामले में, आपको चौड़ाई और ऊंचाई निर्दिष्ट करने के लिए क्या करना होगा । (Btw, ggsave() इसकी आवश्यकता नहीं है।)

यह मार्जिन त्रुटि का कारण बनता है:

# eg. for tiff()
par(mar=c(1,1,1,1))
tiff(filename =  "qq.tiff",
     res = 300,                                                 # the margin error.
     compression = c( "lzw") )
# qq plot for genome wide association study (just an example)
qqman::qq(df$rawp, main = "Q-Q plot of GWAS p-values", cex = .3)
dev.off()

यह मार्जिन त्रुटि को ठीक करेगा :

# eg. for tiff()
par(mar=c(1,1,1,1))
tiff(filename =  "qq.tiff",
     res = 300,                                                 # the margin error.
     width = 5, height = 4, units = 'in',                       # fixed
     compression = c( "lzw") )
# qq plot for genome wide association study (just an example)
qqman::qq(df$rawp, main = "Q-Q plot of GWAS p-values", cex = .3)
dev.off()
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.