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

การเพิ่ม color palette แบบ continuous ที่กำหนดเองใน ggplot2

วิธีที่ยืดหยุ่นที่สุดในการเพิ่ม continuous scale แบบกำหนดเองใน ggplot2 คือการใช้ scale_color_gradientn() หรือ scale_fill_gradientn() แล้วจะเลือกใช้ฟังก์ชันไหน? ให้จับคู่ฟังก์ชันกับ aesthetic ที่ใช้ map ไว้ ตัวอย่างเช่น ในกราฟราคาบ้านที่คาดการณ์จาก Chapter 1 เราได้ map fill กับราคา ดังนั้นจึงต้องใช้ scale_fill_gradientn()

ฟังก์ชันทั้งสองนี้รับ argument ชื่อ colors ซึ่งใช้รับ vector ของสีที่นิยามพาเลตต์ของคุณ ความยืดหยุ่นอยู่ตรงนี้เอง เพราะสามารถสร้างพาเลตต์ได้หลายวิธี ไม่ว่าจะเป็นการสร้างอัตโนมัติด้วย RColorBrewer หรือ viridisLite หรือกำหนดเองด้วยชื่อสีหรือ hex code

ฟังก์ชัน scale___gradientn() จัดการการ map สีกับค่าของตัวแปร โดยสามารถควบคุมเพิ่มเติมได้ผ่าน argument values

มาลองใช้ color scale แบบต่าง ๆ กับ heatmap ราคาบ้านที่คาดการณ์จาก Chapter 1 กัน (เราได้ตัด map background ออกเพื่อลดเวลาประมวลผล ให้เห็นผลลัพธ์ได้เร็วขึ้น)

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

การสร้างภาพข้อมูลภูมิสารสนเทศใน R

ดูคอร์ส

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

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

library(RColorBrewer)
# 9 steps on the RColorBrewer "BuPu" palette: blups


# Add scale_fill_gradientn() with the blups palette
ggplot(preds) +
  geom_tile(aes(lon, lat, fill = predicted_price), alpha = 0.8) 
แก้ไขและรันโค้ด