दिलचस्प पोस्ट
रिज़ॉल्यूशन: इस तालिका में एक अद्वितीय कॉलम नहीं है। ग्रिड संपादित करें, चेकबॉक्स, संपादित करें, प्रतिलिपि बनाएं और हटाएं सुविधाएं उपलब्ध नहीं हैं jQuery के स्क्रोल () उपयोगकर्ता को स्क्रॉल करने से रोकते हुए पता लगा है ट्रांसजेन स्पेस बढ़ाएं रूले पहिया चयन एल्गोरिथ्म फ़्लैश / एक्शन स्क्रिप्ट 3.0 में स्टैकट्रेस जावा में अलग रिटर्न प्रकार के साथ अधिभार? एआरएम: लिंक रजिस्टर और फ्रेम सूचक सीपीयू एफ़िनिटी Linq एक्सटेंशन विधियों का उपयोग करते हुए आप बाएं बाहरी सहभागी कैसे करते हैं वेब ऐप से डेस्कटॉप अधिसूचना प्रदर्शित करने के लिए कौन से तरीके हैं? जावा में स्ट्रिंग और स्ट्रिंगबफर के बीच अंतर क्या है? किसी फ़ाइल को एक शब्दकोश में कैसे रूपांतरित करना है? सी ++ 11 में पुनरावर्ती लैम्ब्डा फ़ंक्शंस वर्ण पैरामीटर में अनुमत है स्वतः matplotlib में पाठ बॉक्स की स्थिति

जीजीप्लोट में फेज लेबल्स के ऑर्डर को कैसे बदला जाए (कस्टम फेट लेट लेबल्स)

नमस्ते मैंने आरपी में जीजीप्लोट का उपयोग करके एक पहलू की साजिश का प्लॉट लगाया और ये प्लॉट है

http://i.stack.imgur.com/5qXF1.png

मेरे पास समस्या है, पहलुओं (लेबल) वर्णानुक्रमिक रूप से क्रमबद्ध हैं (पूर्व: ई 1, ई 10, ई 11, ई 13, ई 2, ई 3, आई 1, आई 10, आई 2) लेकिन मुझे उन्हें ई 1, आई 1, ई 2 जैसे कस्टम ऑर्डर करने की आवश्यकता है , आई 2, ई 3, ई 10, आई 10, ई 11, ई 13

मैं उसे कैसे कर सकता हूँ ?

वेब के समाधान से एकत्रित समाधान "जीजीप्लोट में फेज लेबल्स के ऑर्डर को कैसे बदला जाए (कस्टम फेट लेट लेबल्स)"

factor() द्वारा या आंतरिक रूप से लगाए जाने वाले स्तरों के डिफ़ॉल्ट आदेश पर भरोसा मत करें, अगर आप जो समूह वैरिएबल प्रदान करते हैं वह कारक नहीं है। स्तरों को स्पष्ट रूप से खुद को सेट करें

 dat <- data.frame(x = runif(100), y = runif(100), Group = gl(5, 20, labels = LETTERS[1:5])) head(dat) with(dat, levels(Group)) 

अगर मैं उन्हें इस मनमानी आदेश में चाहता हूं तो क्या होगा?

 set.seed(1) with(dat, sample(levels(Group))) 

ऐसा करने के लिए, स्तरों को जिस प्रकार से आप चाहते हैं, उनको निर्धारित करें।

 set.seed(1) # reset the seed so I get the random order form above dat <- within(dat, Group <- factor(Group, levels = sample(levels(Group)))) with(dat, levels(Group)) 

अब हम इसका उपयोग आदेश के अनुसार बनाए गए पैनलों के लिए कर सकते हैं:

 require(ggplot2) p <- ggplot(dat, aes(x = x)) + geom_bar() p + facet_wrap( ~ Group) 

जो उत्पादन करता है:

पहलुओं लिपटे

बस एक ऐसी ही समस्या पर काम कर रहा है मेरे पास ऐसे स्तर हैं जो डिफ़ॉल्ट रूप से इस तरह दिखते हैं:

  [1] "A1" "A10" "A2" "A3" "A4" "A5" "A6" "A7" "A8" "A9" [11] "B1" "B2" "B3" "B4" "B5" "B6" "B7" "B8" "B9" 

ध्यान दें कि वर्णानुक्रमिक क्रम के कारण दूसरा स्तर स्थान से बाहर है

इस आदेश को ठीक करने के लिए मैं यही कर रहा हूं:

 reorder(factor(fct), fct %>% str_replace("([[:alpha:]]+)", "\\1|") %>% str_split("\\|") %>% sapply(function(d) sprintf("%s%02d", d[1], as.integer(d[2]))), function(x) x[1]) 

यह "A1" जैसे स्तरों को "A01" के साथ बदल देता है, फिर इन के अनुसार रीडर। मुझे यकीन है कि आप यह बहुत अधिक कुशलता से कर सकते हैं, लेकिन यह काम करता है

यह मूल समस्या को संबोधित करने के लिए अनुकूलित किया जा सकता है।