كيفية فرز الأشرطة في المخطط الشريطي ggplot2
افتراضيًا، يقوم ggplot2 بترتيب الأشرطة في المخطط الشريطي بالترتيب التالي:
- يتم تصنيف متغيرات العامل حسب مستويات العامل.
- يتم سرد متغيرات الأحرف أبجديًا.
ومع ذلك، قد تكون مهتمًا في كثير من الأحيان بطلب الأشرطة بترتيب محدد آخر.
يشرح هذا البرنامج التعليمي كيفية القيام بذلك باستخدام إطار البيانات التالي:
#create data frame df <- data. frame (team = c('B', 'B', 'B', 'A', 'A', 'C'), points = c(12, 28, 19, 22, 32, 45), rebounds = c(5, 7, 7, 12, 11, 4)) #view structure of data frame str(df) 'data.frame': 6 obs. of 3 variables: $ team: Factor w/ 3 levels "A","B","C": 2 2 2 1 1 3 $ points: num 12 28 19 22 32 45 $rebounds: num 5 7 7 12 11 4
مثال 1: قم بترتيب الأشرطة بناءً على ترتيب عوامل محدد
إذا حاولنا إنشاء مخطط شريطي لعرض التكرار حسب الفريق، فستظهر الأشرطة تلقائيًا بالترتيب الأبجدي:
library (ggplot2) ggplot(df, aes(x=team)) + geom_bar ()
يوضح التعليمة البرمجية التالية كيفية فرز الأشرطة بترتيب معين:
#specify factor level order df$team = factor(df$team, levels = c('C', 'A', 'B')) #create bar chart again ggplot(df, aes(x=team)) + geom_bar ()
مثال 2: أشرطة الطلب بناءً على القيمة الرقمية
يمكننا أيضًا فرز الأشرطة بناءً على القيم الرقمية. على سبيل المثال، يوضح التعليمة البرمجية التالية كيفية ترتيب الأشرطة من الأعلى إلى الأقل تكرارًا باستخدام وظيفة reorder() :
library (ggplot2) ggplot(df, aes(x= reorder (team, team, function (x)-length(x)))) + geom_bar ()
يمكننا أيضًا فرز الأشرطة من التردد الأصغر إلى الأكبر عن طريق إزالة علامة الطرح في استدعاء الوظيفة () في وظيفة إعادة الطلب () :
library (ggplot2) ggplot(df, aes(x= reorder (team, team, function (x) length(x)))) + geom_bar ()
مصادر إضافية
توثيق الدالة Geom_bar() .
وثائق الدالة reorder() .
قائمة كاملة من دروس R في الإحصاء.