कुछ शोध कार्यों में, शोधकर्ता जानवरों के व्यवहार को ट्रैक करने के लिए जीपीएस मॉड्यूल का उपयोग करते हैं। वे ट्रैक कर सकते हैं कि वे एक वर्ष के अलग-अलग समय में अलग-अलग स्थानों की यात्रा कैसे कर रहे हैं आदि।
इस उदाहरण में हम उस तरह के डेटासेट का उपयोग यह जानने के लिए करते हैं कि पक्षी विभिन्न स्थानों पर कैसे घूम रहे हैं। इस डेटासेट में जीपीएस मॉड्यूल से स्थान विवरण संग्रहीत होते हैं। पूरा डाटासेट सीएसवी फॉर्म में है। उस फ़ाइल में, अलग-अलग फ़ील्ड हैं। पहला है बर्ड आईडी, फिर date_time, अक्षांश, देशांतर और गति।
इस कार्य के लिए, हमें कुछ मॉड्यूल की आवश्यकता है जिनका उपयोग पायथन कोड में किया जा सकता है।
हम matplotlib, पांडा और कार्टोपी मॉड्यूल का उपयोग कर रहे हैं। एनाकोंडा में उन्हें स्थापित करने के लिए, कृपया इन आदेशों का पालन करें। जरूरत पड़ने पर ये कुछ अन्य महत्वपूर्ण मॉड्यूल स्थापित करेंगे।
conda install -c conda-forge matplotlib conda install -c anaconda pandas conda install -c scitools/label/archive cartopy
सबसे पहले हम अक्षांश और देशांतर मानों का उपयोग करके स्थान को प्लॉट करेंगे। डेटासेट में दो पक्षी होते हैं, इसलिए दो अलग-अलग रंगों का उपयोग करके, हम ट्रैकिंग स्थानों की कल्पना कर सकते हैं
उदाहरण कोड
import pandas as pd
from matplotlib import pyplot as plt
df = pd.read_csv('bird_tracking.csv')
cr = df.groupby('bird_id').groups
cr_groups = df.groupby('bird_id')
group_list = []
for group in cr:
group_list.append(group)
plt.figure(figsize=(7, 7))
#Create graph from dataset using the first group of cranes
for group in group_list:
x,y = cr_groups.get_group(group).longitude, cr_groups.get_group(group).latitude
plt.plot(x,y, marker='o', markersize=2)
plt.show()
आउटपुट
<केंद्र>
अब हम इस ट्रैकिंग परिणामों को वास्तविक भौगोलिक मानचित्र पर सटीक तरीके से देखने के लिए प्लॉट कर सकते हैं, जो उन पक्षियों द्वारा उपयोग किया जाता है।
उदाहरण कोड
import pandas as pd
import cartopy.crs as ccrs
import cartopy.feature as cfeature
import matplotlib.pyplot as plt
df = pd.read_csv("bird_tracking.csv")
bird_id = pd.unique(birddata.bird_id)
# Setup the projection to display the details into map
projection = ccrs.Mercator()
plt.figure(figsize=(7,7))
axes = plt.axes(projection=projection)
axes.set_extent((-30.0, 25.0, 50.0, 10.0))
axes.add_feature(cfeature.LAND)
axes.add_feature(cfeature.OCEAN)
axes.add_feature(cfeature.COASTLINE)
axes.add_feature(cfeature.BORDERS, linestyle=':')
for id in bird_id:
index = df['bird_id'] == id
x = df.longitude[index]
y = df.latitude[index]
axes.plot(x,y,'.', transform=ccrs.Geodetic(), label=id)
plt.legend(loc="lower left")
plt.show()
आउटपुट
<केंद्र>