R-studio : ( EP#05 ) แสดง Point จาก Excel ใน leaflet ด้วยโปรแกรม R
R-studio : ( EP#05 ) แสดง Point จาก Excel ใน leaflet ด้วยโปรแกรม R
การเรียนรู้ใน EP#05: การแสดง Point จาก Excel บน Leaflet ด้วยโปรแกรม R เป็นบทเรียนสำคัญสำหรับผู้เริ่มต้นในงานวิเคราะห์ข้อมูล GIS ด้วย R โดยเฉพาะการแสดงตำแหน่งพิกัดจุด (Point data) ที่ได้จากแบบสำรวจภาคสนาม เช่น ไฟล์ Excel ที่มีข้อมูล Latitude และ Longitude
R script ตัวอย่างฝึกหัด https://bit.ly/2WugFA6
Excel ตัวอย่างฝึกหัด https://bit.ly/2T4KmWo
🎯 วัตถุประสงค์ของบทเรียน
- เรียนรู้การอ่านข้อมูลจากไฟล์ Excel เข้าสู่ R
- แสดงตำแหน่งจุดบนแผนที่ Leaflet ด้วยพิกัด Latitude และ Longitude
- เพิ่มข้อความ popup/label เพื่อสื่อสารข้อมูลเพิ่มเติม
📥 ดาวน์โหลดไฟล์สำหรับการฝึก
- 📄 R Script ตัวอย่างฝึกหัด: https://bit.ly/2WugFA6
- 📊 Excel ตัวอย่างฝึกหัด: https://bit.ly/2T4KmWo
🛠 ขั้นตอนปฏิบัติการ
1. ติดตั้งและเรียกใช้แพ็กเกจที่จำเป็น
rCopyEditinstall.packages("readxl")
install.packages("leaflet")
install.packages("dplyr")
library(readxl)
library(leaflet)
library(dplyr)
2. อ่านไฟล์ Excel
rCopyEditpoint_data <- read_excel("ชื่อไฟล์.xlsx") # หรือ path ที่ดาวน์โหลดมา
head(point_data)
ตรวจสอบว่า มีคอลัมน์ชื่อ
latitude
,longitude
,name
,info
หรืออื่นๆ ที่เกี่ยวข้อง
3. แสดงผลตำแหน่ง Point บน Leaflet Map
rCopyEditleaflet(data = point_data) %>%
addTiles() %>%
addCircleMarkers(
lng = ~longitude,
lat = ~latitude,
radius = 6,
color = "blue",
fillOpacity = 0.7,
popup = ~paste("ชื่อ:", name, "<br>รายละเอียด:", info)
)
หากมีข้อมูลมาก แนะนำเพิ่ม
clusterOptions = markerClusterOptions()
เพื่อรวมกลุ่มจุด
💡 เทคนิคเพิ่มเติม
ฟีเจอร์ | ตัวอย่าง |
---|---|
แสดง label แบบลอย | label = ~name |
เพิ่มไอคอนเฉพาะ | ใช้ addMarkers() + icons = makeIcon(...) |
เพิ่มปุ่ม zoom กลับไปยัง layer | addResetMapButton() (ผ่าน leaflet.extras ) |
📚 การประยุกต์ใช้งาน
- แสดงตำแหน่งสถานที่ราชการ เช่น โรงพยาบาล, โรงเรียน
- ตำแหน่งผู้ป่วย หรือพื้นที่สำรวจภาคสนาม
- พิกัดบ้านเรือนในโครงการพัฒนาชุมชน
- ติดตามข้อมูลกิจกรรมภาคสนามแบบ Real-Time (เมื่อเชื่อมกับ Google Form → Google Sheet)
🔗 แหล่งเรียนรู้เสริม
✅ สรุป
บทเรียนนี้แสดงให้เห็นว่า R + Leaflet เป็นเครื่องมือที่มีประสิทธิภาพในการเชื่อมโยงข้อมูลภาคสนามกับแผนที่ GIS ได้อย่างรวดเร็วและยืดหยุ่น เหมาะสำหรับผู้ที่ทำงานด้านสาธารณสุข, สิ่งแวดล้อม, และการสำรวจพื้นที่จริง โดยสามารถนำไปต่อยอดสู่การสร้าง Dashboard เชิงพื้นที่ด้วย R Shiny ได้อีกด้วย