วิธีสร้างแผนภูมิแท่งใน r


แผนภูมิแถบ เป็นแผนภูมิประเภทหนึ่งที่แสดงข้อมูลตัวเลขในแถบความถี่เดียว เช่นเดียวกับ การลงจุดกล่อง แผนภูมิแท่งสามารถช่วยให้คุณเห็นภาพการกระจายตัวของข้อมูลได้ แผนภูมิแท่งอาจเป็นทางเลือกที่ดีสำหรับการลงจุดกล่องเมื่อขนาดตัวอย่างมีขนาดเล็ก คุณจึงสามารถดูจุดข้อมูลแต่ละจุดได้

บทช่วยสอนนี้จะอธิบายวิธีสร้างแผนภูมิแถบใน R โดยใช้ฟังก์ชัน stripchart() ในตัว

ฟังก์ชัน Stripchart()

ไวยากรณ์พื้นฐานสำหรับการสร้างแผนภูมิแท่งใน R คือ:

Stripchart (x, วิธีการ, กระวนกระวายใจ, หลัก, xlab, ylab, col, pch, แนวตั้ง, group.names)

  • x : เวกเตอร์ตัวเลขหรือรายการเวกเตอร์ตัวเลขที่จะลงจุด นี่เป็นข้อโต้แย้งเดียวที่จำเป็นในการสร้างโครงเรื่อง
  • method : วิธีใช้แยกจุดที่มีค่าเท่ากัน วิธีการ “overplot” เริ่มต้นจะทำให้จุดเหล่านี้ถูก overplotted แต่สามารถระบุ “jitter” เพื่อกระวนกระวายใจจุดหรือ “stack” เพื่อซ้อนจุดได้
  • jitter : เมื่อใช้ method = “jitter” สิ่งนี้จะให้ปริมาณการกระวนกระวายใจที่จะใช้
  • main: ชื่อแผนภูมิ
  • xlab : ป้ายกำกับแกน x
  • ylab : ป้ายกำกับแกน y
  • col : สีของจุดลงจุด
  • pch : รูปร่างของจุดลงจุด
  • แนวตั้ง : เมื่อแนวตั้งเป็น “TRUE” เส้นทางจะถูกวาดในแนวตั้งแทนที่จะเป็นแนวนอนตามค่าเริ่มต้น
  • group.names : ป้ายกำกับกลุ่มที่จะพิมพ์ถัดจากโครงเรื่อง หากมีการลงจุดเวกเตอร์ตัวเลขหลายตัว

แผนภูมิแท่งสำหรับเวกเตอร์ดิจิทัลตัวเดียว

ตัวอย่างต่อไปนี้ใช้ชุดข้อมูล R ที่ฝัง อยู่ เพื่อสร้างแผนภูมิแท่งสำหรับเวกเตอร์ตัวเลขตัวเดียว

 #view first six rows of iris dataset
head(iris)

# Sepal.Length Sepal.Width Petal.Length Petal.Width Species
#1 5.1 3.5 1.4 0.2 setosa
#2 4.9 3.0 1.4 0.2 setosa
#3 4.7 3.2 1.3 0.2 setosa
#4 4.6 3.1 1.5 0.2 setosa
#5 5.0 3.6 1.4 0.2 setosa
#6 5.4 3.9 1.7 0.4 setosa

รหัสต่อไปนี้สร้างแผนภูมิ baseband สำหรับตัวแปร Sepal.Length :

 stripchart(iris$Sepal.Length)

นอกจากนี้เรายังสามารถเพิ่มอาร์กิวเมนต์เพิ่มเติมเพื่อเพิ่มชื่อและป้ายกำกับบนแกน x เปลี่ยนสีของจุด เปลี่ยนรูปร่างของจุด และใช้วิธี “กระวนกระวายใจ” เพื่อให้แต่ละจุดไม่ทับซ้อนกัน:

 stripchart(iris$Sepal.Length,
           main = 'Sepal Length Distribution',
           xlab = 'Sepal Length',
           col = 'red',
           pch = 1,
           method = 'jitter')

แทนที่จะผสมคะแนน เราสามารถ “ซ้อน” พวกมันได้:

 stripchart(iris$Sepal.Length,
           main = 'Sepal Length Distribution',
           xlab = 'Sepal Length',
           col = 'red',
           pch = 1,
method = 'stack' )

นอกจากนี้เรายังสามารถแสดงพล็อตในแนวตั้งแทนแนวนอนเริ่มต้นและเปลี่ยนป้ายกำกับแกนให้อยู่บนแกน y:

 stripchart(iris$Sepal.Length,
           main = 'Sepal Length Distribution',
ylab = 'Sepal Length' ,
           col = 'red',
           pch = 1,
           method = 'jitter',
vertical = TRUE )

แผนภูมิแท่งสำหรับเวกเตอร์ตัวเลขหลายตัว

นอกจากนี้เรายังสามารถวาดแผนภูมิแท่งหลายแผนภูมิในพล็อตเดียวโดยส่งรายการเวกเตอร์ตัวเลข

โค้ดต่อไปนี้จะสร้างรายการที่มีตัวแปร Sepal length และ width ในชุดข้อมูล ม่านตา และสร้างกราฟแท่งสำหรับแต่ละตัวแปรในพล็อตเดียว:

 #create list of variables
x <- list('Sepal Length' = iris$Sepal.Length, 'Sepal Width' = iris$Sepal.Width)

#create plot that contains one strip chart per variable
stripchart(x,
           main = 'Sepal Width & Length Distributions',
           xlab = 'Measurement', 
           ylab = 'Variable',
           col = c('steelblue', 'coral2'),
           pch = 16,
           method = 'jitter')

เช่นเดียวกับในตัวอย่างก่อนหน้านี้ เราสามารถเลือกที่จะลงจุดแผนภูมิแท่งในแนวตั้ง แทนที่จะเป็นแนวนอนเริ่มต้นได้:

 stripchart(x, main = 'Sepal Width & Length Distributions',
           xlab = 'Measurement', 
           ylab = 'Variable',
           col = c('steelblue', 'coral2'),
           pch = 16,
           method = 'jitter',
vertical = TRUE )

นอกจากนี้ เราสามารถส่งสูตรในรูปแบบ y~x ไปยังฟังก์ชัน stripchart() โดยที่ y คือเวกเตอร์ตัวเลขที่จัดกลุ่มตามค่าของ x

ตัวอย่างเช่น ในชุดข้อมูล ม่านตา เราสามารถจัดกลุ่มข้อมูลตาม สายพันธุ์ ที่มีค่าที่แตกต่างกันสามค่า (“setosa”, “versicolor” และ “virginica”) จากนั้นพล็อต ความยาวของกลีบเลี้ยง สำหรับแต่ละสายพันธุ์ในกราฟแท่ง:

 stripchart(Sepal.Length ~ Species,
           data = iris,
           main = 'Sepal Length by Species',
           xlab = 'Species', 
           ylab = 'Sepal Length',
           col = c('steelblue', 'coral2', 'purple'),
           pch = 16,
           method = 'jitter',
           vertical = TRUE)

หากต้องการดูเอกสารฉบับเต็มสำหรับฟังก์ชัน stripchart() ใน R เพียงพิมพ์:

 ?stripchart

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

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