พิกัดและสเกล

การสร้างภาพข้อมูลระดับกลางด้วย ggplot2

Rick Scavetta

Founder, Scavetta Academy

พล็อตข้อมูลดิบ

ggplot(msleep, aes(bodywt, y = 1)) +
  geom_jitter() +
  scale_x_continuous(limits = c(0, 7000), 
                     breaks = seq(0, 7000, 1000))

ข้อมูลที่กระจายไม่สม่ำเสมอ

การสร้างภาพข้อมูลระดับกลางด้วย ggplot2

แปลงค่าข้อมูลดิบ

ggplot(msleep, aes(log10(bodywt), y = 1)) +
  geom_jitter() +
  scale_x_continuous(limits = c(-3, 4),
                     breaks = -3:4)

แปลงค่าดิบ

การสร้างภาพข้อมูลระดับกลางด้วย ggplot2

เพิ่ม logtick annotation

ggplot(msleep, aes(log10(bodywt), y = 1)) +
  geom_jitter() +
  scale_x_continuous(limits = c(-3, 4),
                     breaks = -3:4) +
  annotation_logticks(sides = "b")

ค่าที่แปลงแล้วพร้อมเครื่องหมายแกน

การสร้างภาพข้อมูลระดับกลางด้วย ggplot2

ใช้ `scale_*_log10()`

ggplot(msleep, aes(bodywt, y = 1)) +
  geom_jitter() +
  scale_x_log10(limits = c(1e-03, 1e+04))

การแปลงสเกล

การสร้างภาพข้อมูลระดับกลางด้วย ggplot2

เปรียบเทียบผลลัพธ์ระหว่างการแปลงค่าโดยตรงกับ `scale_*_log10()`

แปลงค่าดิบ

การแปลงสเกล

การสร้างภาพข้อมูลระดับกลางด้วย ggplot2

ใช้ `coord_trans()`

ggplot(msleep, aes(bodywt, y = 1)) +
  geom_jitter() +
  coord_trans(x = "log10") 

การแปลงพิกัด

การสร้างภาพข้อมูลระดับกลางด้วย ggplot2

เปรียบเทียบผลลัพธ์ของ `scale_*_log10()` และ `coord_trans()`

การแปลงพิกัด

การแปลงสเกล

การสร้างภาพข้อมูลระดับกลางด้วย ggplot2

การปรับป้ายกำกับ

พิกัดที่ปรับป้ายกำกับแล้ว

สเกลที่ปรับป้ายกำกับแล้ว

การสร้างภาพข้อมูลระดับกลางด้วย ggplot2

มาฝึกกันเถอะ!

การสร้างภาพข้อมูลระดับกลางด้วย ggplot2

Preparing Video For Download...