วิธีพล็อตสองบรรทัดใน ggplot2 (พร้อมตัวอย่าง)


คุณสามารถใช้ไวยากรณ์พื้นฐานต่อไปนี้เพื่อพล็อตสองบรรทัดในกราฟโดยใช้ ggplot2 :

 ggplot(df, aes (x = x_variable)) + 
  geom_line( aes (y=line1, color=' line1 ')) + 
  geom_line( aes (y=line2, color=' line2 '))

ตัวอย่างต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ

ตัวอย่างที่ 1: พล็อตพื้นฐานที่มีสองบรรทัดใน ggplot2

สมมติว่าเรามี data frame ต่อไปนี้ใน R:

 #create data frame
df <- data. frame (day = c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10),
                 sales = c(8, 8, 7, 6, 7, 8, 9, 12, 14, 18),
                 customers = c(4, 6, 6, 4, 6, 7, 8, 9, 12, 13))

#view first six rows of data frame
head(df)

  day sales customers
1 1 8 4
2 2 8 6
3 3 7 6
4 4 6 4
5 5 7 6
6 6 8 7

รหัสต่อไปนี้แสดงวิธีสร้างพล็อตพื้นฐานใน ggplot2 โดยมีสองบรรทัดเพื่อแสดงยอดขายและลูกค้าทั้งหมดในช่วงระยะเวลา 10 วันนี้:

 library (ggplot2)

#create plot with two lines
ggplot(df, aes (x = day)) + 
  geom_line( aes (y=sales, color=' sales ')) + 
  geom_line( aes (y=customers, color=' customers '))

แกน x แสดงวัน และแกน y แสดงยอดขายและมูลค่าลูกค้าในแต่ละวัน

ตัวอย่างที่ 2: พล็อตแบบกำหนดเองที่มีสองบรรทัดใน ggplot2

รหัสต่อไปนี้แสดงวิธีสร้างพล็อตเดียวกันกับตัวอย่างก่อนหน้านี้ด้วยชื่อ ป้ายกำกับ สี น้ำหนักเส้น และธีมที่กำหนดเอง:

 library (ggplot2)

ggplot(df, aes (x = day)) + 
  geom_line( aes (y=sales, color=' sales '), lwd= 2 ) + 
  geom_line( aes (y = customers, color = ' customers '), lwd= 2 ) +
  scale_color_manual(' Metric ', values=c(' red ', ' steelblue ')) +
  labs(title = ' Sales & Customers by Day ', x = ' Day ', y = ' Amount ') +
  theme_minimal()

พล็อตสองบรรทัดใน ggplot2

โปรดทราบว่าเราเลือกใช้ theme_minimal() สำหรับโครงเรื่องนี้ แต่มีธีมหลากหลายที่คุณสามารถใช้สำหรับโครงเรื่องของคุณได้ โปรดดู คู่มือนี้ เพื่อดูรายการธีม ggplot2 ทั้งหมด

แหล่งข้อมูลเพิ่มเติม

บทช่วยสอนต่อไปนี้จะอธิบายวิธีการใช้งานฟังก์ชันการลงจุดทั่วไปอื่นๆ ด้วยบรรทัดใน ggplot2:

วิธีเปลี่ยนชื่อคำอธิบายใน ggplot2
วิธีเพิ่มเส้นแนวนอนให้กับพล็อตโดยใช้ ggplot2
วิธีปรับความหนาของเส้นใน ggplot2

เพิ่มความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *