Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

พล็อตข้อมูลบน Google Maps ด้วยแพ็กเกจ pygmaps

ไลบรารี pygmaps ของ Python เป็น wrapper สำหรับ Google Maps JavaScript API ช่วยให้ผู้ใช้ Python สามารถสร้างอินเทอร์เฟซแบบ matplotlib เพื่อสร้าง HTML และ JavaScript แล้วนำเสนอข้อมูลเพิ่มเติมบน Google Maps ได้

ไลบรารีที่จำเป็น

เราจะใช้เฉพาะไลบรารี pygmaps ซึ่งติดตั้งได้ผ่าน pip:

$ pip install pygmaps          # Windows
$ sudo pip3 install pygmaps    # Linux

ฟังก์ชันหลักของ pygmaps

โปรแกรมตัวอย่างนี้สาธิตการทำงานดังต่อไปนี้:

  • สร้างแผนที่โดยระบุละติจูด ลองจิจูด และระดับซูม
  • ตั้งกริดบนแผนที่โดยระจุดเริ่มต้นและสิ้นสุดของละติจูด/ลองจิจูด พร้อมขนาดกริด
  • เพิ่มจุดบนแผนที่และแสดงด้วยสีที่กำหนด
  • วาดวงกลมรอบจุดบนแผนที่ด้วยรัศมีเป็นเมตร
  • วาดเส้นทางบนแผนที่โดยให้รายการพิกัดละติจูด/ลองจิจูด

โค้ดการใช้งาน

import pygmaps

# 1. สร้างแผนที่ (Constructor)
# พารามิเตอร์: latitude, longitude, zoom (0-20)
mymap = pygmaps.pygmaps(17.45, 78.29, 15)

# 2. ตั้งกริดบนแผนที่
# พารามิเตอร์: start-Lat, end-Lat, Lat-interval, start-Lng, end-Lng, Lng-interval
mymap.setgrids(17.45, 17.46, 0.001, 78.29, 78.30, 0.001)

# 3. เพิ่มจุดบนแผนที่
# พารามิเตอร์: latitude, longitude, [color] (ค่าเริ่มต้นแดง #FF0000)
mymap.addpoint(17.45, 78.29, "#FF0000")

# 4. เพิ่มจุดพร้อมรัศมี (วงกลม)
# พารามิเตอร์: latitude, longitude, radius (เมตร), [color]
mymap.addradpoint(17.45, 78.29, 150, "#0000FF")

# 5. วาดเส้นทาง
# พารามิเตอร์: path (list of coordinates), [color]
path = [(17.45, 78.29), (17.55, 78.39), (17.65, 78.49)]
mymap.addpath(path, "#00FF00")

# 6. สร้างไฟล์ HTML
mymap.draw('./mymap.html')
print('OK')

หมายเหตุสำคัญ

อาจพบ TypeError ตอนใช้ addpoint() หากส่งอาร์กิวเมนต์มากเกินไป (เช่น 5 อาร์กิวเมนต์แต่ฟังก์ชันรับ 3-4) สามารถแก้ไขได้โดยเพิ่มพารามิเตอร์ title ในฟังก์ชัน addpoint ของไฟล์ pygmaps.py

ผลลัพธ์

แผนที่ที่สร้างขึ้นจะแสดงกริด จุด สี วงกลม และเส้นทางรวมกันในหน้าเดียว ช่วยให้เห็นข้อมูลทางภูมิศาสตร์ได้ชัดเจนและสวยงาม