首頁 > web前端 > js教程 > 地表溫度趨勢:艾哈邁達巴德與德里 ()

地表溫度趨勢:艾哈邁達巴德與德里 ()

Linda Hamilton
發布: 2024-12-31 12:57:20
原創
122 人瀏覽過

我在印度長大,14 歲左右搬到美國。搬家後,我們已經將近 6-7 年沒有去印度了。最近,我的家人決定在夏天(2023 年 5 月至 7 月)期間回去。當我們到達時,一件事立即引起了我的注意:感覺比我記憶中要熱得多。當我環顧四周時,我意識到了原因——我從小到大看到的大部分綠色植物都消失了,取而代之的是高聳的建築和龐大的公寓大樓。這清楚地提醒我景觀發生了多大的變化,並讓我思考快速城市化對環境和氣候的影響。

讓我們開始了解細節吧!

在我最近訪問印度期間,我決定透過分析艾哈邁達巴德和德里這兩個我最喜歡的城市的地表溫度 (LST) 來探索城市熱島 (UHI) 效應。以下是這些城市的快照:

Land Surface Temperature Trends: Ahmedabad vs. Delhi ()

我為此分析選擇的時間表是:

2013年:我的起點,十年學習期。
2016 年:我離開印度前往美國的那一年。
2023 年:我最近一次造訪激發了這個計畫的靈感。

對於這項研究,我依賴兩個主要資料來源:
  • 來自 Google Earth Engine 的衛星數據,用於檢索雲和溫度數據。
  • 來自機場氣象資料庫的天氣記錄,用於交叉驗證。

第 1 部分:資料收集與準備:

在這個計畫中,我使用不同來源的數據來研究艾哈邁達巴德和德里的城市熱島 (UHI) 效應。我的主要關注點是使用 Google Earth Engine 收集的地表溫度 (LST) 和雲數據,以及機場的天氣記錄。

使用 Google 地球引擎

我從WeatherSpark收集了溫度數據,WeatherSpark是一個提供詳細歷史天氣記錄的平台。我使用艾哈邁達巴德和德里的特定數據,重點是 2013 年至 2023 年的 5 月,因為 5 月通常是這兩個城市一年中最熱的月份。這使我能夠分析過去十年夏季高峰期間氣溫的變化。

  • 天氣火花網站
德里 五月氣溫: 2013, 2016, 2023

Land Surface Temperature Trends: Ahmedabad vs. Delhi ()

艾哈邁達巴德 五月溫度: 2013, 2016, 2023

Land Surface Temperature Trends: Ahmedabad vs. Delhi ()

我還使用了雲資料來確保我的溫度結果準確。雲會阻擋衛星讀數,使獲得正確的地表溫度變得更加困難。為了解決這個問題,我使用 Google Earth Engine 過濾掉雲層厚重的區域。這幫助我清理數據並只專注於清晰的讀數,使我的結果更加可靠。

這是我用來提取雲端資料的程式碼範例。如果您打算在Google Earth Engine 中使用此程式碼,請務必調整經度和緯度日期範圍(365 天以內)以及緩衝區根據您的喜好:

//area of study
var ahmedabad = ee.Geometry.Point([72.5713621, 23.022505]).buffer(30000); // buffer zone
var delhi = ee.Geometry.Point([77.1025, 28.7041]).buffer(30000); //buffer zone         

//Date
var DATE_RANGE = ee.Filter.dayOfYear(121, 151); 
var YEAR_RANGE = ee.Filter.calendarRange(2013, 2023, 'year');

var L8 = ee.ImageCollection('LANDSAT/LC08/C02/T1_L2') //Might want to change statelite according to your needs
  .select(['ST_B10', 'QA_PIXEL']) // Temperature and QA bands
  .filter(DATE_RANGE)
  .filter(YEAR_RANGE);

// Cloud masking function
function cloudMask(image) {
  var qa = image.select('QA_PIXEL');
  var mask = qa.bitwiseAnd(1 << 3).or(qa.bitwiseAnd(1 << 4)); // Cloud and shadow bits
  return image.updateMask(mask.not());
}

// cloud mask and filter by region
var L8_filtered = L8.map(cloudMask);

// Temperature conversion (Kelvin to Fahrenheit)
function kelvinToFahrenheit(image) {
  return image.select('ST_B10')
    .multiply(0.00341802) // Scale factor
    .add(149.0)          // Offset
    .subtract(273.15)    // Convert Kelvin to Celsius
    .multiply(9 / 5)     // Convert Celsius to Fahrenheit
    .add(32)             // Add Fahrenheit offset
    .rename('LST_Fahrenheit');
}

var ahmedabadLST = L8_filtered.filterBounds(ahmedabad).map(kelvinToCelsius).mean().clip(ahmedabad);
var delhiLST = L8_filtered.filterBounds(delhi).map(kelvinToCelsius).mean().clip(delhi);

// Visualization parameters //change the colors as you like
var visualizationParams = {
  min: 20, max: 45,
  palette: ['blue', 'yellow', 'red']
};

Map.centerObject(ahmedabad, 8);
Map.addLayer(ahmedabadLST, visualizationParams, 'Ahmedabad LST');
Map.addLayer(delhiLST, visualizationParams, 'Delhi LST');

// Export results to Google Drive
Export.image.toDrive({
  image: ahmedabadLST,
  description: 'Ahmedabad_LST_2013_2023',
  region: ahmedabad,
  scale: 30,
  maxPixels: 1e13,
  fileFormat: 'GeoTIFF'
});

Export.image.toDrive({
  image: delhiLST,
  description: 'Delhi_LST_2013_2023',
  region: delhi,
  scale: 30,
  maxPixels: 1e13,
  fileFormat: 'GeoTIFF'
});

// Calculate and print summary statistics
var ahmedabadStats = ahmedabadLST.reduceRegion({
  reducer: ee.Reducer.minMax().combine(ee.Reducer.mean(), null, true),
  geometry: ahmedabad,
  scale: 30
});
print('Ahmedabad Temperature Stats:', ahmedabadStats);

var delhiStats = delhiLST.reduceRegion({
  reducer: ee.Reducer.minMax().combine(ee.Reducer.mean(), null, true),
  geometry: delhi,
  scale: 30
});
print('Delhi Temperature Stats:', delhiStats);
登入後複製

下面是雲覆蓋資料圖

德里 5 月雲端資料:概述(2013 年、2023 年和 10 年分析)

Land Surface Temperature Trends: Ahmedabad vs. Delhi ()

艾哈邁達巴德 5 月雲端資料:概述(2013 年、2023 年和 10 年分析)

Land Surface Temperature Trends: Ahmedabad vs. Delhi ()

使用天氣記錄
為了確保衛星數據正確,我將其與艾哈邁達巴德和德里機場的天氣記錄進行了比較。這些記錄給了我真實的溫度讀數,這幫助我確認衛星數據是準確的。

第 2 部分:使用 ArcGIS Pro 視覺化資料

在 Google Earth Engine 中處理雲端和溫度資料後,下一步就是將這些資料匯入 ArcGIS Pro 進行進階視覺化。這是該專案的重要組成部分,因為原始數據可能很難解釋,但創建熱圖可以讓每個人更容易理解。

為了創造視覺化效果,我先將經過雲過濾的地表溫度 (LST) 資料從 Google Earth Engine 匯入到 ArcGIS Pro。這些數據包括詳細的溫度讀數,已經過完善,以消除雲層造成的干擾。這種預處理確保了資料乾淨可靠,可以創造準確的視覺化效果。

匯入資料後,我使用 ArcGIS Pro 產生熱圖。這些地圖是透過應用顏色漸層來表示不同的溫度範圍而創建的。例如,較冷的區域以橙色 (≤70°F)、淺藍色 (≤80°F) 和綠色 (≤90°F) 等顏色標記。隨著溫度升高,使用較暖的顏色,例如黃色(≤120°F)和紅色(溫度超過 140°F)。地圖附帶的圖例或圖例清楚地顯示了這些顏色編碼的溫度範圍,使視覺化易於解釋。

下面是傳奇的圖片

Land Surface Temperature Trends: Ahmedabad vs. Delhi ()

我創建了艾哈邁達巴德和德里的熱圖,以顯示每個城市的氣溫變化。工業區或市中心等建成區顯得更熱,並以紅色顯示,而公園和綠地則較涼爽,以綠色或藍色顯示。這些熱圖清楚地突顯了都市化和綠化對地表溫度的影響。

然後,我使用 ArcGIS Pro 透過調整溫度顏色並添加指向方向的指北針來細化熱圖。這些變化讓我們更容易了解艾哈邁達巴德和德里的熱量分佈。

以下是艾哈邁達巴德的可視化圖片

Land Surface Temperature Trends: Ahmedabad vs. Delhi ()

以下是德里的視覺化圖片

Land Surface Temperature Trends: Ahmedabad vs. Delhi ()

結論:艾哈邁達巴德和德里的炎熱趨勢

該計畫的結果顯示,艾哈邁達巴德在過去10年中變得更加炎熱,尤其是在一年中最熱的五月。使用 ArcGIS Pro 中的熱圖,我發現建築物較多且綠化較少的區域最熱(以深紅色顯示),而公園和綠地則較涼爽(以綠色或藍色顯示)。溫度以華氏度進行分析。

艾哈邁達巴德特別熱,因為它是一個不斷發展的城市,城市化進程迅速,綠地面積不斷縮小。熱圖中一個引人注目的特徵是薩巴爾馬蒂河,它是一條穿過城市的較冷的藍線。相較之下,作為首都的德里更加發達,氣溫略低,但人口稠密、建築密集。正如海報中的圖片所示,這兩個城市都顯示出密集的城市化和大量的人口。

數據也強調了綠色空間和植被如何幫助城市降溫。在晴朗無雲的日子裡,氣溫會更高,尤其是在沒有樹木或公園的地區。這表明綠色植物對於保持城市涼爽有多重要。

總而言之,艾哈邁達巴德隨著其發展而變得越來越熱,而德里由於其密集的人口和基礎設施而保持溫暖。為了讓城市更宜居,我們需要專注於建造更多公園、植樹造林、保護綠地。這些步驟有助於減少熱量並改善城市地區的生活品質。

以下是結果海報

Land Surface Temperature Trends: Ahmedabad vs. Delhi ()

以上是地表溫度趨勢:艾哈邁達巴德與德里 ()的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:dev.to
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板