पायथन pygmaps लाइब्रेरी गूगल मैप्स जावास्क्रिप्ट API के लिए एक रैपर प्रदान करती है। इस लाइब्रेरी के साथ पायथन उपयोगकर्ता HTML और जावास्क्रिप्ट उत्पन्न करने के लिए matplotlib जैसा इंटरफ़ेस बना सकते हैं और फिर उन सभी अतिरिक्त जानकारी को दर्शा सकते हैं जिन्हें उपयोगकर्ता गूगल मैप्स के ऊपर जोड़ना चाहते हैं।
आवश्यक लाइब्रेरी
हम केवल pygmaps लाइब्रेरी/पैकेज का उपयोग करने जा रहे हैं। आप pygmaps लाइब्रेरी को pip का उपयोग करके इंस्टॉल कर सकते हैं, जैसे:
$pip install pygmaps (windows os) $sudo pip3 install pygmaps (linux os)
हम एक प्रोग्राम लिखने जा रहे हैं जो प्रदर्शित करेगा -
पायगमैप्स का उपयोग करके मानचित्र बनाएं जिसमें देशांतर, अक्षांश और ज़ूम स्तर प्रदान किया गया हो।
ग्रिड के लिए प्रारंभ और अंत देशांतर और अक्षांश बिंदु और ग्रिड आकार प्रदान करके मानचित्र पर ग्रिड सेट करें।
मानचित्र पर एक बिंदु जोड़ें और उसे कुछ रंग देकर प्रदर्शित करें।
मीटर में त्रिज्या के साथ मानचित्र पर एक बिंदु के चारों ओर एक वृत्त बनाएं।
देशांतर और अक्षांश बिंदुओं की सूची प्रदान करके मानचित्र में पथ बनाएं।
नीचे pygmaps के माध्यम से विभिन्न कार्यक्षमता प्राप्त करने का कार्यान्वयन है।
import pygmaps
########## कंस्ट्रक्टर: pygmaps.maps(अक्षांश, देशांतर, ज़ूम) ##############################
# विवरण: अक्षांश और देशांतर के केंद्र बिंदु और मानचित्र ज़ूम स्तर "15" के साथ एक मानचित्र प्रारंभ करें
# पैरामीटर1: अक्षांश (float) मानचित्र केंद्र बिंदु का अक्षांश
# पैरामीटर2: देशांतर (float) मानचित्र केंद्र बिंदु का देशांतर
# पैरामीटर3: ज़ूम (int) मानचित्र ज़ूम स्तर 0~20
# रिटर्न: pygmaps का उदाहरण
#========================================================================================
mymap = pygmaps.pygmaps(17.45, 78.29, 15)
########## फंक्शन: setgrids(प्रारंभ-अक्षांश, अंत-अक्षांश, अक्षांश-अंतराल, प्रारंभ-देशांतर, अंत-देशांतर, देशांतर-अंतराल) ######
# विवरण: मानचित्र पर ग्रिड सेट करें
# पैरामीटर1: प्रारंभ-अक्षांश (float), ग्रिड का प्रारंभ (न्यूनतम) अक्षांश
# पैरामीटर2: अंत-अक्षांश (float), ग्रिड का अंत (अधिकतम) अक्षांश
# पैरामीटर3: अक्षांश-अंतराल (float) अक्षांश में ग्रिड आकार
# पैरामीटर4: प्रारंभ-देशांतर (float), ग्रिड का प्रारंभ (न्यूनतम) देशांतर
# पैरामीटर5: अंत-देशांतर (float), ग्रिड का अंत (अधिकतम) देशांतर
# पैरामीटर6: देशांतर-अंतराल (float) देशांतर में ग्रिड आकार
# रिटर्न: कोई रिटर्न नहीं
#========================================================================================
mymap.setgrids(17.45, 17.46, 0.001, 78.29, 78.30, 0.001)
########## फंक्शन: addpoint(अक्षांश, देशांतर, [रंग])#############################
# विवरण: मानचित्र में एक बिंदु जोड़ें और प्रदर्शित करें, रंग वैकल्पिक है डिफ़ॉल्ट लाल है
# पैरामीटर1: अक्षांश (float) बिंदु का अक्षांश
# पैरामीटर2: देशांतर (float) बिंदु का देशांतर
# पैरामीटर3: रंग (स्ट्रिंग) मानचित्र में दिखाए गए बिंदु का रंग, HTML रंग कोड का उपयोग करके
# HTML रंग कोड: https://www.computerhope.com/htmcolor.htm
# उदा. लाल "#FF0000", नीला "#0000FF", हरा "#00FF00"
# रिटर्न: कोई रिटर्न नहीं
#========================================================================================
mymap.addpoint(17.45, 78.29, "#FF0000", "Hello")
########## फंक्शन: addradpoint(अक्षांश, देशांतर, त्रिज्या, [रंग])##################
# विवरण: एक त्रिज्या (मीटर) के साथ एक बिंदु जोड़ें - वृत्त बनाएं
# पैरामीटर1: अक्षांश (float) बिंदु का अक्षांश
# पैरामीटर2: देशांतर (float) बिंदु का देशांतर
# पैरामीटर3: त्रिज्या (float), मीटर में त्रिज्या
# पैरामीटर4: रंग (स्ट्रिंग) मानचित्र में दिखाए गए बिंदु का रंग, HTML रंग कोड का उपयोग करके
# HTML रंग कोड: https://www.computerhope.com/htmcolor.htm
# उदा. लाल "#FF0000", नीला "#0000FF", हरा "#00FF00"
# रिटर्न: कोई रिटर्न नहीं
#========================================================================================
mymap.addradpoint(17.45, 78.29, 150, "#0000FF")
########## फंक्शन: addpath(पथ, [रंग])##############################################
# विवरण: मानचित्र में एक पथ जोड़ें, पथ की डेटा संरचना बिंदुओं की एक सूची है
# पैरामीटर1: पथ (निर्देशांक की सूची) उदा. [(lat1,lng1),(lat2,lng2),...]
# पैरामीटर2: रंग (स्ट्रिंग) मानचित्र में दिखाए गए बिंदु का रंग, HTML रंग कोड का उपयोग करके
# HTML रंग कोड: https://www.computerhope.com/htmcolor.htm
# उदा. लाल "#FF0000", नीला "#0000FF", हरा "#00FF00"
# रिटर्न: कोई रिटर्न नहीं
#========================================================================================
path = [(17.45, 78.29), (17.55, 78.39), (17.65, 78.49)]
mymap.addpath(path, "#00FF00")
########## फंक्शन: draw(फाइल)######################################################
# विवरण: HTML मैप फाइल बनाएं (.html)
# पैरामीटर1: फाइल (स्ट्रिंग) मैप का पथ और फाइल
# रिटर्न: कोई रिटर्न नहीं, निर्दिष्ट निर्देशिका में HTML फाइल जनरेट करें
#========================================================================================
mymap.draw('./mymap.html')
print('OK')
नोट: mymap.addpoint फंक्शन चलाते समय आपको TypeError का सामना करना पड़ सकता है, जैसे
TypeError: addpoint() 3 से 4 पोजिशनल आर्गुमेंट लेता है लेकिन 5 दिए गए थे
इससे बचने के लिए मैंने pygmaps.py पैकेज के addpoint फंक्शन में शीर्षक आर्गुमेंट जोड़ा है।
आउटपुट

जैसा कि आप उपरोक्त मैप्स से देख सकते हैं, हम एक ही मैप में कई कार्यक्षमताओं को विज़ुअलाइज़ करने में सक्षम हैं।