الفرق بينfacet_wrap() وfacet_grid() في r
يمكن استخدام الدالتين facet_grid() و facet_wrap() في الحزمة ggplot2 لإنتاج شبكة من المخططات.
هنا هو الفرق الرئيسي بين الوظيفتين:
- ستنتج الدالة facet_grid() شبكة من المخططات لكل مجموعة من المتغيرات التي تحددها، حتى لو كانت بعض المخططات فارغة.
- ستنتج الدالة facet_wrap() فقط مخططات لمجموعات من المتغيرات التي لها قيم، مما يعني أنها لن تنتج أي مخططات فارغة .
يوضح المثالان التاليان الفرق بين هاتين الوظيفتين، باستخدام إطار البيانات التالي:
#create data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'),
position=c('G', 'G', 'F', 'F', 'G', 'G', 'G', 'G'),
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 position points assists
1 GA 8 10
2 AG 14 5
3 FY 20 5
4 AF 22 3
5 BG 25 8
6 BG 29 6
7 BG 30 9
8 BG 31 12
مثال 1: استخدام الدالةfacet_grid()
يوضح التعليمة البرمجية التالية كيفية استخدام facet_grid() لإنشاء شبكة تعرض مخططًا مبعثرًا للمساعدات مقابل النقاط لكل فريق ومجموعة مراكز:
library (ggplot2)
ggplot(df, aes (assists, points)) +
geom_point() +
facet_grid(position~team)
لاحظ أنه يتم إنتاج مخطط التشتت لكل مجموعة من الفريق والمنصب ، على الرغم من عدم وجود قيم في إطار البيانات الأصلي لقيمة الفريق B وقيمة الموضع F :
إليك كيفية عمل facet_grid() : ستنتج مخططًا لكل مجموعة من المتغيرات التي تحددها، حتى لو كانت بعض المخططات فارغة.
المثال 2: استخدام الدالةfacet_wrap()
يوضح التعليمة البرمجية التالية كيفية استخدام facet_wrap() لإنشاء شبكة تعرض مخططًا مبعثرًا للتمريرات الحاسمة مقابل النقاط لكل فريق موجود ومجموعة مراكز:
library (ggplot2)
ggplot(df, aes (assists, points)) +
geom_point() +
facet_wrap(position~team)
لاحظ أنه يتم إنتاج مخطط التشتت فقط لمجموعات الفريق والموضع الموجودة في إطار البيانات الأصلي.
وهذا يعني أنه لم يتم إنشاء أي مؤامرة لمجموعة الفريق B والموضع F لأنه لا توجد قيمة في إطار البيانات الأصلي لتلك المجموعة المحددة.
هذه هي الطريقة التي تعمل بها الدالةfacet_wrap() : فهي لن تنتج أبدًا مسارًا فارغًا.
ملاحظة : ارجع إلى وثائق ggplot2 للحصول على دليل كامل لوظائف facet_grid() و facet_wrap() .
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى في ggplot2:
كيفية تغيير حجم الخط في ggplot2
كيفية إزالة وسيلة إيضاح في ggplot2
كيفية تدوير تسميات المحور في ggplot2