本文將探討如何使用 Air Quality API 建構豐富的搜尋地點體驗。 我們將說明空氣品質如何從漏斗開端到結尾,都成為對使用者有價值的信號,以及如何將空氣品質 API 資料嵌入現有體驗。

應用實例和附加價值
空氣品質 API 信號可適用於各種搜尋體驗,例如使用者搜尋想造訪的地點時。Air Quality API 提供以下功能:
- 即時和歷來資料:以每小時為單位,提供 30 天內最新、最準確的資料,呈現目前狀態和過去的資料。(每小時的室外空氣品質快照)
- 全球和本地資料 - 涵蓋 100 多個國家/地區的整個區域,但高度本地化(高達 500 公尺)空氣品質 API 資料為使用者提供關鍵訊號,以便比較和決定最合適的地點。

即使是鄰近地點,空氣品質也可能大相逕庭
範例逐步操作說明
在體驗初期顯示空氣品質資料
顯示 Air Quality API 資料的主要方式有兩種:
目前狀況 / 每小時:取得個別值,並針對每個地點顯示。
(前往「在位置圖釘上顯示 Air Quality API 資料」一節)熱視圖圖塊:在地圖上疊加彩色圖層,代表目前的室外空氣品質狀況。可使用特定國家/地區的圖層索引。
(前往「在地圖上顯示 Air Quality API 熱度圖層」一節)
在位置圖釘上顯示 Air Quality API 資料
- 選擇要顯示的指數:通用空氣品質指數或當地空氣品質指數 (最多可選擇 70 種不同的空氣品質指數 (AQI))。空氣品質指數 (AQI) 是特定國家/地區 (例如美國環保署) 根據不同計算方法、資料來源和指定用途,將不同空氣品質等級分類的標準。
- 直接從地點搜尋體驗開始,以視覺化方式呈現主要的 Air Quality API 值和顏色代碼。
預設顯示畫面可能只包含顏色代碼。
在選取圖釘時顯示更多 Air Quality API 資訊:
- 您可以調整預設顯示的資訊層級,以滿足需求。請注意,地點的資料點通常可用於與其他地點比較。
空氣品質專區顯示範例
{
"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 } ...
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 API 和 ImateMapType,顯示涵蓋整個 Google 地圖檢視區塊所需的個別圖塊。使用者平移、縮放或變更位置時,熱視圖圖塊會重新整理。

請注意,允許的縮放層級值最多為 16。
在超地方搜尋中,空氣品質 API 熱度圖圖塊圖層可能會消失。

請務必標明顏色標度,以便使用者理解顏色值及其等級:
- 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 張地圖。
- 空氣質量 API:
- 每個地點執行 1 次查詢(全部在地圖載入時執行,或僅在使用者選擇時執行)。
- 熱視圖塊圖層:每個圖塊圖片為 256*256 像素,如要在行動裝置或網頁上顯示標準地圖,需要 12 到 14 個圖塊。每擷取一個圖塊,就會計為 1 個 SKU 單位。
- Nearby Search (新版) API:每顯示 20 個地點,就會產生 1 次查詢。根據查詢回應中包含的 地點資料 進行不同的計費。
結論
我們已證明,空氣品質 API 可做為使用者決定造訪地點的重要資料點。因此,空氣品質資料應盡可能在搜尋體驗中顯示,同時注意一次顯示的資訊量和顯示方式。
後續動作
建議延伸閱讀:
貢獻者
本文由 Google 維護。以下是這篇文章的原作者。
主要作者:
Thomas Anglaret | 解決方案工程師