Ggplot2 में पहलुओं का क्रम कैसे बदलें (उदाहरण के साथ)


आप ggplot2 में पहलुओं के क्रम को निर्दिष्ट करने के लिए निम्नलिखित मूल वाक्यविन्यास का उपयोग कर सकते हैं:

 p+
  facet_grid(~factor(my_variable, levels=c(' val1 ', ' val2 ', ' val3 ', ...)))

निम्नलिखित उदाहरण दिखाता है कि व्यवहार में इस वाक्यविन्यास का उपयोग कैसे करें।

उदाहरण: ggplot2 में पहलुओं का क्रम बदलें

मान लीजिए कि हमारे पास R में निम्नलिखित डेटा फ़्रेम है:

 #create data frame
df <- data. frame (team=c('A', 'A', 'B', 'B', 'C', 'C', 'D', 'D'),
                 points=c(8, 14, 20, 22, 25, 29, 30, 31),
                 assists=c(10, 5, 5, 3, 8, 6, 9, 12))

#view data frame
df

  team points assists
1 to 8 10
2 to 14 5
3 B 20 5
4 B 22 3
5 C 25 8
6 C 29 6
7 D 30 9
8 D 31 12

निम्नलिखित कोड दिखाता है कि ग्रिड बनाने के लिए Facet_grid() का उपयोग कैसे करें जो प्रत्येक टीम के लिए सहायता बनाम अंक का स्कैटरप्लॉट प्रदर्शित करता है:

 library (ggplot2)

#create multiple scatter plots using facet_grid
ggplot(df, aes (assists, points)) +
  geom_point() +
  facet_grid(.~team)

डिफ़ॉल्ट रूप से, ggplot2 डेटा फ़्रेम के टीम वेरिएबल में पहले दिखाई देने वाले मानों के आधार पर स्कैटरप्लॉट को क्रम में रखता है।

हालाँकि, हम टीम को एक कारक चर में परिवर्तित कर सकते हैं और उस क्रम को निर्दिष्ट करने के लिए लेवल तर्क का उपयोग कर सकते हैं जिसमें टीमों को प्लॉट में रखा जाना चाहिए:

 library (ggplot2)

#create multiple scatter plots using facet_grid with specific order
ggplot(df, aes (assists, points)) +
  geom_point() +
  facet_grid(~factor(team, levels=c(' C ', ' D ', ' A ', ' B '))) 

ggplot2 में पहलुओं का क्रम बदलें

ध्यान दें कि बिंदु बादलों को अब स्तर तर्क में निर्दिष्ट क्रम के अनुसार क्रमबद्ध किया गया है: सी, डी, ए, बी।

इस दृष्टिकोण का उपयोग करने का लाभ यह है कि हम वास्तव में अंतर्निहित डेटा को नहीं बदलते हैं।

इसके बजाय, हम केवल facet_grid() फ़ंक्शन में स्तर बदलते हैं।

अतिरिक्त संसाधन

निम्नलिखित ट्यूटोरियल बताते हैं कि ggplot2 में अन्य सामान्य कार्य कैसे करें:

Ggplot2 में फ़ॉन्ट आकार कैसे बदलें
Ggplot2 में एक लीजेंड को कैसे हटाएं
Ggplot2 में अक्ष लेबल को कैसे घुमाएँ

एक टिप्पणी जोड़ने

आपका ईमेल पता प्रकाशित नहीं किया जाएगा. आवश्यक फ़ील्ड चिह्नित हैं *