কম্পিউটার টিউটোরিয়াল

পাইথনে folium প্যাকেজ দিয়ে গুগল ম্যাপ প্লট করুন

Folium হলো একটি শক্তিশালী পাইথন লাইব্রেরি যা নানাবিধ Leaflet ম্যাপ তৈরি করতে দেয়। Leaflet/folium ম্যাপ ইন্টারঅ্যাক্টিভ হওয়ায় ড্যাশবোর্ড বানাতে আদর্শ।

ইনস্টলেশন

Folium ইনস্টল করা খুব সহজ পিপ দিয়ে:

$pip install folium

পাইথনে folium প্যাকেজ দিয়ে গুগল ম্যাপ প্লট করুন

বেসিক ম্যাপ


# লাইব্রেরি ইম্পোর্ট
import folium

# ল্যাটিটিউড, লনগিটিউড ও জুম লেভেল ৪। জুম নম্বর যত বড়, তত নিকট থেকে দেখা যায়।
mapOBJ = folium.Map(location=[17.3616, 78.4747], zoom_start=4, tiles='Stamen Terrain')

# Map অবজেক্টের save মেথড ম্যাপ তৈরি করবে
mapOBJ.save('map2.html')

আউটপুট

পাইথনে folium প্যাকেজ দিয়ে গুগল ম্যাপ প্লট করুন

কেস ২: GeoJson


import folium
import os
from folium import features
import numpy as np
import pandas as pd

N = 1000
lons = +5 - np.random.normal(size=N)
lats = 48 - np.random.normal(size=N)

data = {
    'type': 'FeatureCollection',
    'features': [
        {
            'type': 'Feature',
            'geometry': {
                'type': 'MultiPoint',
                'coordinates': [[lon, lat] for (lat, lon) in zip(lats, lons)],
            },
            'properties': {'prop0': 'value0'}
        },
    ],
}

m = folium.Map([17.3616, 78.4747], zoom_start=10)
m.add_child(features.GeoJson(data))
m.save('Features.html')

আউটপুট

পাইথনে folium প্যাকেজ দিয়ে গুগল ম্যাপ প্লট করুন

কেস ৩: Marker, Icon, Popup


import folium
from folium import features

m = folium.Map([17.3616, 78.4747], zoom_start=15)
mk = features.Marker([17.3616, 78.4747])
pp = folium.Popup('Charminar')
ic = features.Icon(color='red')
mk.add_child(ic)
mk.add_child(pp)
m.add_child(mk)
m.save('Features_1.html')

আউটপুট

পাইথনে folium প্যাকেজ দিয়ে গুগল ম্যাপ প্লট করুন

কেস ৪: Vega ভিজ্যুয়ালাইজেশন সহ Popup

এখানে vincent লাইব্রেরি ব্যবহার করা হয়েছে, যা পাইথন ডেটা স্ট্রাকচারকে Vega ভিজ্যুয়ালাইজেশন গ্রামারে রূপান্তর করে।


$pip install vincent

import folium
from folium import features
import numpy as np
import json
import vincent

N = 100
multi_iter2 = {
    'x': np.random.uniform(size=(N,)),
    'y': np.random.uniform(size=(N,)),
}

scatter = vincent.Scatter(multi_iter2, iter_idx='x', height=100, width=200)
data = json.loads(scatter.to_json())

m = folium.Map([17.3616, 78.4747], zoom_start=10)
mk = features.Marker([17.3616, 78.4747])
p = folium.Popup('Charminar')
v = features.Vega(data, width='100%', height='100%')
mk.add_child(p)
p.add_child(v)
m.add_child(mk)
m.save('Features_2.html')

আউটপুট

পাইথনে folium প্যাকেজ দিয়ে গুগল ম্যাপ প্লট করুন

  1. পাইথনে gmplot প্যাকেজ ব্যবহার করে গুগল ম্যাপ প্লট করা

  2. পাইথনে SunPy ব্যবহার করে সৌর ছবি প্লট করা

  3. মানচিত্রে COVID-19 কেস কীভাবে দেখবেন

  4. গুগল ম্যাপস অফলাইন ব্যবহার করার পদ্ধতি