كيفية رسم خطوط متعددة في ggplot2 (مع مثال)


يمكنك استخدام بناء الجملة الأساسي التالي لرسم أسطر متعددة في ggplot2:

 ggplot(df, aes(x=x_var, y=y_var)) + 
  geom_line(aes(color=group_var)) +
  scale_color_manual(name=' legend_title ', labels=c(' lab1 ', ' lab2 ', ' lab3 '),
                     values=c(' color1 ', ' color2 ', ' color3 '))

يقوم بناء الجملة هذا بإنشاء مؤامرة في ggplot2 بثلاثة أسطر.

يفترض بناء الجملة هذا أن إطار البيانات الخاص بك بتنسيق طويل .

يوضح المثال التالي كيفية رسم خطوط متعددة في ggplot2 عمليًا.

مثال: رسم خطوط متعددة في ggplot2

لنفترض أن لدينا إطار البيانات التالي في R الذي يحتوي على معلومات حول عدد المبيعات التي تمت في ثلاثة متاجر مختلفة في خمسة أيام مختلفة:

 #create data frame
df <- data. frame (day=c(1, 2, 3, 4, 5),
                 storeA=c(5, 6, 8, 8, 9),
                 storeB=c(3, 3, 4, 5, 7),
                 storeC=c(8, 10, 12, 12, 17))

#view data frame
df

  day storeA storeB storeC
1 1 5 3 8
2 2 6 3 10
3 3 8 4 12
4 4 8 5 12
5 5 9 7 17

إطار البيانات هذا موجود حاليًا بتنسيق واسع.

ومع ذلك، يمكننا استخدام الدالة Pivot_longer() ‎ من حزمة Tidyr لتحويل البيانات بسرعة إلى تنسيق طويل:

 library (tidyr)

#convert data from wide to long format
df <- df %>% pivot_longer(cols=c(' storeA ', ' storeB ', ' storeC '),
                          names_to=' store ',
                          values_to=' sales ')

#view updated data frame
df

# A tibble: 15 x 3
     day store sales
      
 1 1 blindA 5
 2 1 storeB 3
 3 1 blindC 8
 4 2 blindA 6
 5 2 storeB 3
 6 2 storeC 10
 7 3 storeA 8
 8 3 storeB 4
 9 3 storeC 12
10 4 storeA 8
11 4 storeB 5
12 4 storeC 12
13 5 storeA 9
14 5 storeB 7
15 5 storeC 17

ذات صلة:مقدمة إلى Pivot_longer() في R

الآن بعد أن أصبح إطار البيانات بتنسيق طويل، يمكننا استخدام الصيغة التالية مع ggplot2 لتخطيط مبيعات كل متجر:

 library (ggplot2)

#plot sales by store
ggplot(df, aes(x=day, y=sales)) + 
  geom_line(aes(color=store)) +
  scale_color_manual(name=' Store ', labels=c(' A ', ' B ', ' C '),
values=c(' red ', ' purple ', ' steelblue '))

تعرض الصفوف الفردية المبيعات التي تتم في كل متجر كل يوم.

لاحظ أننا استخدمنا الدالة scale_color_manual() لإنشاء وسيلة إيضاح مخصصة على الجانب الأيمن من المخطط لتسهيل تفسير الخطوط.

لا تتردد في تعديل الوسائط لهذه الوظيفة لإنشاء وسيلة إيضاح تظهر بالطريقة التي تريدها تمامًا.

مصادر إضافية

تشرح البرامج التعليمية التالية كيفية تنفيذ المهام الشائعة الأخرى في ggplot2:

كيفية رسم المتوسط والانحراف المعياري في ggplot2
كيفية إضافة خط أفقي إلى قطعة أرض باستخدام ggplot2
كيفية رسم خط الاتجاه في ggplot2

Add a Comment

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