使用 Air Quality API 監測地點的空氣品質

在本文件中,您將瞭解如何使用 Air Quality API 建構豐富的地點搜尋體驗。我們將說明空氣品質如何從漏斗的起點到終點,為使用者提供有價值的信號,以及如何將空氣品質 API 資料嵌入現有體驗。

用途和附加價值

空氣品質 API 信號可用於各種搜尋體驗,例如使用者尋找要造訪的地點時。Air Quality API 提供以下功能:

  • 即時 * 和歷來資料:代表目前狀態的最新準確資料,以及 30 天內以每小時解析度回溯的資料。(* 每小時室外空氣品質快照)
  • 全球和本地資料:涵蓋 100 多個國家/地區的整個區域,且高度本地化 (最遠 500 公尺) 的 Air Quality API 資料可提供重要信號,讓使用者比較並決定最適合的地點。

即使是附近位置,空氣品質也可能有極大差異

範例逐步操作說明

在體驗初期顯示空氣品質資料

您可以透過兩種主要方式顯示 Air Quality API 資料:

在位置圖釘上顯示 Air Quality API 資料

  • 選擇所在地區的指數:通用空氣品質指數或地方空氣品質指數 (最多可使用 70 種空氣品質指數 (AQI))。空氣品質指數 (AQI) 是某個國家/地區 (例如 美國 EPA) 根據不同計算方法、資料來源和指定用途,將不同空氣品質等級分類的量表。
  • 直接從地點搜尋體驗開始,呈現主要 Air Quality API 值和顏色代碼。

預設顯示畫面可能只包含顏色代碼。


在選取圖釘時顯示更多 Air Quality API 資訊

  • 通用空氣品質指數 (AQI) / 當地空氣品質指數 (AQI) 的含義。
  • 污染物濃度:這是空氣中懸浮微粒和氣體的評估指標,包括主要污染物、濃度、來源和影響。
  • 健康建議:根據目前空氣品質狀況提供的建議措施。
  • 您可以根據需求調整預設顯示的資訊層級。請注意,比較不同地區的資料點通常很有用。

空氣品質部分顯示範例

空氣品質回應

{
    "dateTime": "2023-08-09T10:00:00Z",
    "regionCode": "fr",
    "indexes": [
       {
            "code": "uaqi",
            "displayName": "Universal AQI",
            "aqi": 76,
            "aqiDisplay": "76",
            "color": {
                "red": 0.4117647,
                "green": 0.77254903,
                "blue": 0.20392157
            },
            "category": "Good air quality",
            "dominantPollutant": "pm10"
        },
       …
    ],
    "pollutants": [
       {
            "code": "co",
            "displayName": "CO",
            "fullName": "Carbon monoxide",
            "concentration": {
                "value": 95.18,
                "units": "PARTS_PER_BILLION"
            }...
        },
       …
    ],
    "healthRecommendations": -{
        "generalPopulation": "With this level of air quality, you have no limitations. Enjoy the outdoors!",
        "elderly": "If you start to feel respiratory discomfort such as coughing or breathing difficulties, consider red ...",
        "lungDiseasePopulation": …
    }
}

  • 或者,您也可以只在與某個位置互動時查詢空氣品質資料。

  • 您可以使用空氣品質 API 指數篩選附近地點,例如:如果您想尋找所在地區的公園,系統只會顯示空氣品質良好的公園。

空氣品質回應

...
"color":{
  "red": 0.9490196,
  "green": 0.98039216,
  "blue": 0.019607844
}
...
轉換為 RGB
  var red = parseInt(colorResponse.red*255)|| 1;
  var green = parseInt(colorResponse.green*255)|| 1;
  var blue = parseInt(colorResponse.blue*255)|| 1; 
  // --> output rgb(241,250,5)

在地圖上顯示 Air Quality API 熱圖圖層

熱圖色塊可用於:

  • 提供大範圍的概覽。
  • 快速顯示該區域的細微差異。

搭配使用 Maps JavaScript APIImateMapType,即可顯示涵蓋 Google 地圖整個檢視區的個別圖塊。使用者平移、縮放或變更位置時,熱圖圖塊會重新整理。

請注意,允許的變焦等級值上限為 16。
在超地方搜尋時,Air Quality API 熱圖圖塊可能會消失。

您可以在有限的空氣品質指數中選取熱力圖地圖類型

  • UAQI_RED_GREEN - 通用空氣品質指數紅綠色調色盤。
  • UAQI_INDIGO_PERSIAN - 通用空氣品質指數 indigo-persian 色版。
  • PM25_INDIGO_PERSIAN - PM2.5 指標靛藍色調色版。
  • GBR_DEFRA - Daily Air Quality Index (UK) color palette.
  • DEU_UBA - 德國地方空氣品質指數調色盤。
  • CAN_EC - 加拿大空氣品質健康指數調色盤。
  • FRA_ATMO - 法國空氣品質指數調色盤。
  • US_AQI - 美國空氣品質指數色版。

  • 請務必標示色彩等級,方便使用者瞭解值及其顏色排名:

    • 漸層等級的 UAQI (0-100): 差 / 優

    色板 CSS 程式碼片段:

    .gradient-scale { 
    background: linear-gradient(to right, 
        rgb(99, 20, 161) 0%, /* purple */
        rgb(149, 0, 25) 20%, /* red */
        rgb(248, 47, 21) 40%, /* orange */
        rgb(255, 248, 35) 60%, /* yellow */
        rgb(34,163,120) 80%, /* steelblue */
        rgb(255,255,255) 100% /* white */
       );
    }

    • 純色代表 UAQI 等級 (0-100) 中的關鍵點: 差 / 優

    查詢次數和相關費用

    • Maps JavaScript API:體驗載入時 1 張地圖。
    • Air Quality API
      • 每個地點 1 個查詢 (所有地點在載入地圖時或僅在使用者選取時)。
      • 熱圖圖塊圖層:每個圖塊圖片的大小為 256 x 256 像素,如要在行動裝置或網站上顯示標準地圖,就需要 12 到 14 個圖塊。每個拉取的圖塊都會計為 1 個 SKU 單位。
    • Nearby Search (新版) API:每顯示 20 個地點就需要 1 個要求。根據查詢回應中的地點資料收取不同的費用。

    結論

    我們發現,Air Quality API 可提供重要資料點,協助使用者決定要前往哪個地點。因此,空氣品質資料應盡可能在搜尋體驗中盡早顯示,並注意一次顯示的資訊量和顯示方式。

    後續行動

    建議參閱以下文章:

    貢獻者

    本文由 Google 維護。以下是原始作者。
    主要作者:

    Thomas Anglaret | 解決方案工程師