كيفية إنشاء barplot في ggplot2 بمتغيرات متعددة


يعد الرسم التخطيطي مفيدًا لتصور كميات المتغيرات الفئوية المختلفة.

في بعض الأحيان نرغب في إنشاء مخطط تفصيلي يتصور كميات المتغيرات الفئوية مقسمة إلى مجموعات فرعية.

على سبيل المثال، قد نرغب في تصور إجمالي مبيعات الفشار والصودا لثلاثة ملاعب رياضية مختلفة. يوفر هذا البرنامج التعليمي مثالاً خطوة بخطوة لكيفية إنشاء المخطط التالي بمتغيرات متعددة:

Barplot مع متغيرات متعددة في R

الخطوة 1: إنشاء البيانات

أولاً، لنقم بإنشاء إطار بيانات للاحتفاظ ببياناتنا:

 #createdata
df <- data.frame(stadium= rep (c(' A ', ' B ', ' C '), each =4),
                 food= rep (c(' popcorn ', ' soda '), times =6),
                 sales=c(4, 5, 6, 8, 9, 12, 7, 9, 9, 11, 14, 13))

#viewdata
df

   stadium food sales
1 A popcorn 4
2 A soda 5
3 A popcorn 6
4 A soda 8
5 B popcorn 9
6 B soda 12
7 B popcorn 7
8 B soda 9
9 C popcorn 9
10 C soda 11
11 C popcorn 14
12 C soda 13

الخطوة 2: إنشاء Barplot بمتغيرات متعددة

يوضح التعليمة البرمجية التالية كيفية إنشاء مخطط شريطي بمتغيرات متعددة باستخدام الدالة Geom_bar() لإنشاء الأشرطة ووسيطة “المراوغة” لتحديد أن الأشرطة في كل مجموعة يجب أن “تتهرب” ويتم عرضها جنبًا إلى جنب.

 ggplot(df, aes (fill=food, y=sales, x=stadium)) +
  geom_bar(position=' dodge ', stat=' identity ')

Barplot مع متغيرات متعددة في R

يتم عرض المراحل المختلفة – A وB وC – على طول المحور السيني ويتم عرض مبيعات الفشار والمشروبات الغازية المقابلة (بالآلاف) على طول المحور الصادي.

الخطوة 3: تغيير جماليات Barplot

يوضح التعليمة البرمجية التالية كيفية إضافة عنوان وتغيير تسميات المحاور وتخصيص الألوان على المخطط الشريطي:

 ggplot(df, aes (fill=food, y=sales, x=stadium)) +
  geom_bar(position=' dodge ', stat=' identity ') +
  ggtitle(' Sales by Stadium ') +
  xlab(' Stadium ') +
  ylab(' Sales (in thousands) ') +
  scale_fill_manual(' Product ', values=c(' coral2 ',' steelblue ')) 

Barplot مع متغيرات متعددة في R

مصادر إضافية

كيفية تغيير عنوان الأسطورة في ggplot2
كيفية تغيير حجم الأسطورة في ggplot2
دليل كامل لأفضل موضوعات ggplot2

Add a Comment

ایمئیل یایینلانمایاجاق ایسته‎نیله‎ن بوشلوقلار خاللانمیشدیر *