วิธีสร้างคำอธิบายแผนภูมิใน ggplot2 ที่มีหลายบรรทัด


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

 ggplot(df, aes(x=x_var, y=y_var, color=group_var)) +
geom_point() +
  guides(color=guide_legend(nrow= 2 , byrow= TRUE )) 

ค่าของอาร์กิวเมนต์ nrow ระบุจำนวนบรรทัดที่จะใช้ในตำนาน

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

ตัวอย่าง: สร้างคำอธิบายใน ggplot2 ที่มีหลายบรรทัด

สมมติว่าเรามีกรอบข้อมูลต่อไปนี้ใน R ซึ่งมีข้อมูลเกี่ยวกับผู้เล่นบาสเกตบอลต่างๆ:

 #create data frame
df <- data. frame (team=c('Mavs', 'Heat', 'Nets', 'Lakers', 'Suns', 'Cavs'),
                 points=c(24, 20, 34, 39, 28, 29),
                 assists=c(5, 7, 6, 9, 12, 13))

#view data frame
df

    team points assists
1 Mavs 24 5
2 Heat 20 7
3 Nets 34 6
4 Lakers 39 9
5 Suns 28 12
6 Cavs 29 13

หากเราสร้าง Scatterplot ใน ggplot2 โดยไม่ระบุจำนวนบรรทัดที่จะใช้ในคำอธิบาย ggplot2 จะวางป้ายกำกับไว้ในแต่ละบรรทัดตามค่าเริ่มต้น:

 library (ggplot2)

#create default scatterplot
ggplot(df, aes(x=assists, y=points, color=team)) +
  geom_point(size= 3 )

ในการสร้างคำอธิบายแผนภูมิที่มีหลายบรรทัด เราจำเป็นต้องใช้ฟังก์ชัน guides() กับอาร์กิวเมนต์ nrow :

 library (ggplot2)

#create scatterplot with two rows in legend
ggplot(df, aes(x=assists, y=points, color=team)) +
  geom_point(size= 3 ) +
  guides(color=guide_legend(nrow= 2 , byrow= TRUE )) 

โปรดทราบว่าตอนนี้คำอธิบายมีสองบรรทัด

หากเราต้องการเปลี่ยนตำแหน่งของคำอธิบาย เราสามารถใช้ฟังก์ชัน theme() กับอาร์กิวเมนต์ legend.position ได้:

 library (ggplot2)

#create scatterplot with two rows in legend
ggplot(df, aes(x=assists, y=points, color=team)) +
  geom_point(size= 3 ) +
  theme(legend. position = ' bottom ') +
  guides(color=guide_legend(nrow= 2 , byrow= TRUE )) 

ตอนนี้คำอธิบายจะอยู่ที่ด้านล่างของโครงเรื่องและมีสองบรรทัด

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

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

วิธีเปลี่ยนชื่อคำอธิบายใน ggplot2
วิธีเปลี่ยนขนาดคำอธิบายแผนภูมิใน ggplot2
วิธีเปลี่ยนตำแหน่งคำอธิบายแผนภูมิใน ggplot2

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

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