हर साल होने वाले जंगल के नुकसान का हिसाब लगाया जा रहा है
पिछले सेक्शन में आपने सीखा कि reduceRegion तरीके का इस्तेमाल करके, अपनी पसंद के इलाके में नष्ट हुए कुल वन क्षेत्र का हिसाब कैसे लगाया जाता है. कुल नुकसान का हिसाब लगाने के बजाय, हर साल के नुकसान का हिसाब लगाना ज़्यादा मददगार होगा. Earth Engine में इसे हासिल करने के लिए, ग्रुप किए गए Reducer का इस्तेमाल किया जाता है.
reduceRegion() के आउटपुट को ग्रुप करने के लिए, आप एक ग्रुपिंग बैंड तय कर सकते हैं जो पूर्णांक पिक्सल वैल्यू के हिसाब से ग्रुप बनाता है. इस उदाहरण में, हम पिछले कोड में थोड़ा बदलाव करेंगे और ओरिजनल इमेज में lossYear बैंड जोड़ेंगे. lossYear बैंड के हर पिक्सल में 0 से 14 तक की वैल्यू होती हैं. इनसे पता चलता है कि किस साल नुकसान हुआ. हम रिड्यूसर को ग्रुप किए गए रिड्यूसर में भी बदलते हैं. इसके लिए, ग्रुपिंग बैंड (1) का बैंड इंडेक्स तय करते हैं, ताकि पिक्सल एरिया को lossYear बैंड में मौजूद वैल्यू के हिसाब से जोड़ा और ग्रुप किया जा सके.
कोड एडिटर (JavaScript)
// Load country boundaries from LSIB. var countries = ee.FeatureCollection('USDOS/LSIB_SIMPLE/2017'); // Get a feature collection with just the Congo feature. var congo = countries.filter(ee.Filter.eq('country_co', 'CF')); // Get the loss image. // This dataset is updated yearly, so we get the latest version. var gfc2017 = ee.Image('UMD/hansen/global_forest_change_2017_v1_5'); var lossImage = gfc2017.select(['loss']); var lossAreaImage = lossImage.multiply(ee.Image.pixelArea()); var lossYear = gfc2017.select(['lossyear']); var lossByYear = lossAreaImage.addBands(lossYear).reduceRegion({ reducer: ee.Reducer.sum().group({ groupField: 1 }), geometry: congo, scale: 30, maxPixels: 1e9 }); print(lossByYear);
ऊपर दिया गया कोड चलाने के बाद, आपको हर साल के हिसाब से जंगल के नुकसान का डेटा दिखेगा. यह डेटा, groups नाम की नेस्ट की गई सूची में प्रिंट होगा. हम आउटपुट को थोड़ा फ़ॉर्मैट कर सकते हैं, ताकि नतीजा एक डिक्शनरी के तौर पर दिखे. इसमें साल को कुंजी और नुकसान वाले इलाके को वैल्यू के तौर पर दिखाया जाएगा. ध्यान दें कि हम साल की वैल्यू को 0-14 से 2000-2014 में बदलने के लिए, format() तरीके का इस्तेमाल कर रहे हैं.
कोड एडिटर (JavaScript)
var statsFormatted = ee.List(lossByYear.get('groups')) .map(function(el) { var d = ee.Dictionary(el); return [ee.Number(d.get('group')).format("20%02d"), d.get('sum')]; }); var statsDictionary = ee.Dictionary(statsFormatted.flatten()); print(statsDictionary);
चार्ट बनाना
अब हमारे पास सालाना नुकसान के आंकड़े हैं. इसलिए, हम चार्ट तैयार कर सकते हैं. हम ui.Chart.array.values() वाले तरीके का इस्तेमाल करेंगे. यह तरीका, इनपुट वैल्यू का एक कलेक्शन (या सूची) और X-ऐक्सिस के लिए लेबल का एक कलेक्शन (या सूची) लेता है.
कोड एडिटर (JavaScript)
var chart = ui.Chart.array.values({ array: statsDictionary.values(), axis: 0, xLabels: statsDictionary.keys() }).setChartType('ColumnChart') .setOptions({ title: 'Yearly Forest Loss', hAxis: {title: 'Year', format: '####'}, vAxis: {title: 'Area (square meters)'}, legend: { position: "none" }, lineWidth: 1, pointSize: 3 }); print(chart);
नतीजा, नीचे दिए गए चार्ट जैसा दिखना चाहिए.
अगले सेक्शन में, आपको जंगलों की कटाई की निगरानी करने वाले एक अन्य डेटासेट, FORMA के बारे में जानकारी मिलेगी. साथ ही, इसकी तुलना हैंसन वगैरह के डेटा से की जाएगी.