में लूप के भीतर से सूची में ggplot ऑब्जेक्ट्स को संग्रहीत करना मेरी समस्या this one के समान है; जब मैं एक लूप में प्लॉट ऑब्जेक्ट्स (इस मामले में हिस्टोग्राम) उत्पन्न करता हूं, ऐसा लगता है कि वे सभी हालिया साजिश द्वारा अधिलेखित हो जाते हैं।आर
लूप के भीतर, डीबग करने के लिए, मैं इंडेक्स और जेनरेटेड प्लॉट प्रिंट कर रहा हूं, जिनमें से दोनों सही ढंग से दिखाई देते हैं। लेकिन जब मैं सूची में संग्रहीत भूखंडों को देखता हूं, तो वे लेबल के लिए को छोड़कर सभी समान होते हैं।
(मैं multiplot उपयोग कर रहा हूँ एक समग्र छवि बनाने के लिए, लेकिन आप एक ही परिणाम आप print (myplots[[1]])
print(myplots[[4]])
एक समय में एक के माध्यम से करता है, तो मिलता है।)
क्योंकि मैं पहले से ही एक संलग्न dataframe (के पोस्टर के विपरीत है इसी तरह की समस्या), मुझे यकीन नहीं है कि समस्या को कैसे हल किया जाए।
(Btw, स्तंभ वर्गों मूल डाटासेट मैं यहाँ का अनुमान कर रहा हूँ में कारक हैं, लेकिन एक ही समस्या होती है यदि वे पूर्णांक हैं)
यहाँ एक प्रतिलिपि प्रस्तुत करने योग्य उदाहरण है:
library(ggplot2)
source("http://peterhaschke.com/Code/multiplot.R") #load multiplot function
#make sample data
col1 <- c(2, 4, 1, 2, 5, 1, 2, 0, 1, 4, 4, 3, 5, 2, 4, 3, 3, 6, 5, 3, 6, 4, 3, 4, 4, 3, 4,
2, 4, 3, 3, 5, 3, 5, 5, 0, 0, 3, 3, 6, 5, 4, 4, 1, 3, 3, 2, 0, 5, 3, 6, 6, 2, 3,
3, 1, 5, 3, 4, 6)
col2 <- c(2, 4, 4, 0, 4, 4, 4, 4, 1, 4, 4, 3, 5, 0, 4, 5, 3, 6, 5, 3, 6, 4, 4, 2, 4, 4, 4,
1, 1, 2, 2, 3, 3, 5, 0, 3, 4, 2, 4, 5, 5, 4, 4, 2, 3, 5, 2, 6, 5, 2, 4, 6, 3, 3,
3, 1, 4, 3, 5, 4)
col3 <- c(2, 5, 4, 1, 4, 2, 3, 0, 1, 3, 4, 2, 5, 1, 4, 3, 4, 6, 3, 4, 6, 4, 1, 3, 5, 4, 3,
2, 1, 3, 2, 2, 2, 4, 0, 1, 4, 4, 3, 5, 3, 2, 5, 2, 3, 3, 4, 2, 4, 2, 4, 5, 1, 3,
3, 3, 4, 3, 5, 4)
col4 <- c(2, 5, 2, 1, 4, 1, 3, 4, 1, 3, 5, 2, 4, 3, 5, 3, 4, 6, 3, 4, 6, 4, 3, 2, 5, 5, 4,
2, 3, 2, 2, 3, 3, 4, 0, 1, 4, 3, 3, 5, 4, 4, 4, 3, 3, 5, 4, 3, 5, 3, 6, 6, 4, 2,
3, 3, 4, 4, 4, 6)
data2 <- data.frame(col1,col2,col3,col4)
data2[,1:4] <- lapply(data2[,1:4], as.factor)
colnames(data2)<- c("A","B","C", "D")
#generate plots
myplots <- list() # new empty list
for (i in 1:4) {
p1 <- ggplot(data=data.frame(data2),aes(x=data2[ ,i]))+
geom_histogram(fill="lightgreen") +
xlab(colnames(data2)[ i])
print(i)
print(p1)
myplots[[i]] <- p1 # add each plot into plot list
}
multiplot(plotlist = myplots, cols = 4)
जब मैं देखो भूखंड की सूची में एक भूखंड वस्तु का एक सारांश है, यह मैं क्या देख
> summary(myplots[[1]])
data: A, B, C, D [60x4]
mapping: x = data2[, i]
faceting: facet_null()
-----------------------------------
geom_histogram: fill = lightgreen
stat_bin:
position_stack: (width = NULL, height = NULL)
मुझे लगता है कि mapping: x = data2[, i]
समस्या है, लेकिन मैं स्टम्प्ड रहा हूँ! मैं छवियों को पोस्ट नहीं कर सकता, इसलिए यदि आप समस्या का मेरी व्याख्या भ्रमित कर रहे हैं तो आपको अपना उदाहरण चलाने और ग्राफ को देखने की आवश्यकता होगी।
धन्यवाद!
फ़ंक्शन – jenesaisquoi
के साथ अच्छा विचार, विशेष रूप से लापरवाही संस्करण के लिए, आपको बहुत धन्यवाद; मैं इसे कार्यान्वित करना चाहता था लेकिन इसे समझ नहीं पाया, और लूप के लिए (सतही रूप से आसान, वास्तव में भयानक) करने का फैसला किया। मुझे लगा कि यह एक परिवर्तनीय गुंजाइश समस्या थी, मैं अक्सर उन्हें आर में लड़ रहा हूँ! – LizPS