เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

ปรับแต่ง Ridgeline ให้ดูสะอาดตา

มาปรับแต่งกราฟจากแบบฝึกหัดที่แล้วให้สวยงามและอ่านง่ายยิ่งขึ้น

เริ่มจากทำให้เส้น density โปร่งแสงขึ้นเล็กน้อย เพื่อลดปัญหาการทับซ้อนกัน โดยปรับค่า alpha ใน geometry ของ ridgeline จากนั้นกำจัดพื้นที่ว่างส่วนเกินที่ ggplot เพิ่มไว้รอบขอบข้อมูล เพื่อหลีกเลี่ยงแถบว่างที่ดูไม่เป็นธรรมชาติทางด้านซ้ายและขวา ซึ่งเกิดขึ้นในบริเวณที่เส้น density ไม่ได้ทำการ interpolate สุดท้าย ใช้ฟังก์ชัน theme() เพื่อลบ tick แกน y ออก เนื่องจากเส้น density ทำหน้าที่ชี้ไปยัง label แกน y อยู่แล้ว

ไลบรารี ggridges โหลดให้แล้ว

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

แนวทางปฏิบัติที่ดีที่สุดสำหรับการสร้างภาพข้อมูลใน R

ดูคอร์ส

คำแนะนำการฝึกหัด

  • กำหนดค่า alpha ของ geom_density_ridges() เป็น 0.7
  • กำหนด expand = c(0,0) ในคำสั่ง scale_x_continuous()
  • ลบ axis.ticks.y ออกในฟังก์ชัน theme()

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

md_speeding %>% 
    mutate(day_of_week = factor(day_of_week, levels = c("Mon","Tues","Wed","Thu","Fri","Sat","Sun") )) %>% 
    ggplot(aes( x = percentage_over_limit, y = day_of_week)) + 
    # make ridgeline densities a bit see-through with alpha = 0.7
    geom_density_ridges(bandwidth = 3.5, ___) +
    # set expand values to c(0,0)
    scale_x_continuous(limits = c(0,150), ___) +
    labs(subtitle = 'Guassian kernel SD = 3.5') +
    # remove y axis ticks
    theme(___)
แก้ไขและรันโค้ด