มีหลายวิธีที่คุณสามารถวาดพิกัดภูมิศาสตร์บน Google Maps ได้ อย่างไรก็ตาม หากคุณต้องการบันทึกในไฟล์ท้องถิ่น วิธีที่ดีกว่าคือผ่านโมดูล Python ที่ชื่อ gmplot
ไลบรารี Python gmplot ช่วยให้เราพล็อตข้อมูลบน Google Maps gmplot มี interface แบบ matplotlib เพื่อสร้าง HTML และ javascript เพื่อส่งข้อมูลเพิ่มเติมทั้งหมดบน Google Maps
การติดตั้ง (Installation)
ติดตั้ง gmplot ด้วย pip ได้ง่าย หาก gmplot ยังไม่ได้ติดตั้ง −
pip install gmplot
การรันคำสั่งข้างต้น คุณอาจเห็นผลลัพธ์ประมาณ −

จากข้างต้น เราเห็นว่า gmplot-1.2.0 เวอร์ชันล่าสุดถูกติดตั้งบนคอมพิวเตอร์ของเรา
ไลบรารี gmplot มีเมธอดการพล็อตหลายอย่างเพื่อสร้าง exploratory map views ให้เรียบง่าย Gmplot ยืดหยุ่นมากในการสร้าง Google Map เนื่องจากเราสามารถใช้มันสร้าง HTML โดยตรงได้
ด้านล่างคือวิธีต่างๆ ที่จะทำได้ −
กรณี 1 − สร้าง Base Map ด้วย gmplot
หากคุณต้องการวางแผนที่ที่ตำแหน่งเฉพาะ คุณต้องเขียนค่า latitude-longitude ของตำแหน่งนั้นและ zoom resolution
# นำเข้าไลบรารี gmplot from gmplot import * # วางแผนที่ # อาร์กิวเมนต์สองตัวแรกคือพิกัดภูมิศาสตร์ .i.e. Latitude และ Longitude #และ zoom resolution gmap = gmplot.GoogleMapPlotter(17.438139, 78.39583, 18) # ตำแหน่งที่คุณต้องการบันทึกไฟล์ gmap.draw( "C:\\Users\\rajesh\\Desktop\\map11.html" )
Output 1

หมายเหตุ − หน้าจอแสดงข้างต้น เราเห็นเพราะ Google Maps service ไม่ฟรีแล้วในกรณีที่คุณเข้าถึงผ่าน API คุณต้องเพิ่ม API_KEY ของคุณเพื่อดู Google Map view ที่ดีกว่า โค้ดด้านล่างเพื่อทำให้สำเร็จ −
Case 1 (เพิ่ม GOOGLE_API_KEY)
สร้าง Base Map ด้วย gmplot
# นำเข้าไลบรารี gmplot from gmplot import * # วางแผนที่ # อาร์กิวเมนต์สองตัวแรกคือพิกัดภูมิศาสตร์ .i.e. Latitude และ Longitude #และ zoom resolution gmap=gmplot.GoogleMapPlotter(17.438139, 78.3936413, 11) # เนื่องจาก google maps ไม่ใช่บริการฟรีแล้ว คุณต้องได้ api key มิฉะนั้น comment ออกบรรทัดด้านล่าง คุณจะเห็นแผนที่พร้อม "For Development Purpose Only" บนหน้าจอและแผนที่ # ความละเอียดต่ำ #gmap.apikey = "Your_API_KEY" gmap.apikey = "AIzaSyDeRNMnZ__VnQDiATiuz4kPjF_c9r1kWe8" # ตำแหน่งที่คุณต้องการบันทึกไฟล์ gmap.draw( "C:\\Users\\rajesh\\Desktop\\map11.html" )
หมายเหตุ − คุณต้องเพิ่ม Google Maps API key ('Your_API_KEY') & ตั้งค่าเท่ากับ gmap.apikey ผลลัพธ์ด้านล่างมาเพราะผมใช้ key ของตัวเอง ซึ่งคุณก็สามารถรับได้จากลิงก์ด้านล่าง −
https://developers.google.com/maps/documentation/embed/get-api-key
Output 1

Case 2 − วาด Polygon บน Google Map
# import gmplot package import gmplot latitude_list = [ 17.4567417, 17.5587901, 17.6245545] longitude_list = [ 78.2913637, 78.007699, 77.9266135 ] gmap = gmplot.GoogleMapPlotter(17.438139, 78.3936413, 11) gmap.scatter( latitude_list, longitude_list, '# FF0000', size = 40, marker = False) # polygon method วาด polygon ด้วย # ช่วยเหลือของพิกัด gmap.polygon(latitude_list, longitude_list, color = 'cornflowerblue') gmap.apikey = "Your_API_KEY" gmap.draw( "C:\\Users\\rajesh\\Desktop\\map3.html" )
Output 2

Case 3 − Scatter จุดบน Google Map และวาดเส้นระหว่างพิกัดที่กำหนด
# import gmplot package import gmplot # ตั้งค่าจุด latitude และ longitude ที่แตกต่างกัน Charminar_top_attraction_lats, Charminar_top_attraction_lons = zip(*[ (17.3833, 78.4011),(17.4239, 78.4738),(17.3713, 78.4804),(17.3616, 78.4747), (17.3578, 78.4717),(17.3604, 78.4736),(17.2543, 78.6808),(17.4062, 78.4691), (17.3950, 78.3968),(17.3587, 78.2988),(17.4156, 78.4750)]) # ประกาศจุดศูนย์กลางของแผนที่ และ zoom ใกล้แค่ไหน gmap3 = gmplot.GoogleMapPlotter(17.3616, 78.4747, 13) # Scatter map gmap3.scatter( Charminar_top_attraction_lats, Charminar_top_attraction_lons, '#FF0000',size = 50, marker = False ) # Plot method วาดเส้นระหว่างพิกัดที่กำหนด gmap3.plot(Charminar_top_attraction_lats, Charminar_top_attraction_lons, 'cornflowerblue', edge_width = 3.0) # Your Google_API_Key gmap.apikey = " API_Key" # บันทึกเป็น html gmap3.draw(r"c:\users\rajesh\desktop\maps\scatter.html")
Output 3

Case 4: Heatmap และ scatter ในกราฟเดียวเพื่อแสดงแผ่นดินไหว
# Import important libraries import gmplot import numpy as np # สร้าง 700 random lats และ lons latitude = (np.random.random_sample(size = 700) - 0.5) * 180 longitude = (np.random.random_sample(size = 700) - 0.5) * 360 # ประกาศจุดศูนย์กลางของแผนที่ และ zoom ใกล้แค่ไหน gmap = gmplot.GoogleMapPlotter(0, 0, 2) # plot heatmap gmap.heatmap(latitude, longitude) gmap.scatter(latitude, longitude, c='r', marker=True) # Your Google_API_Key gmap.apikey = " Your_Google_API_Key " # บันทึกเป็น html gmap.draw(r"c:\users\rajesh\desktop\maps\country_heatmap.html")
ผลลัพธ์
