在本文件中,您將瞭解如何使用 Air Quality API 打造內容豐富的地點搜尋體驗。 我們將示範如何從一開始,就空氣品質呈現使用者價值的信號, 以及如何將 Air Quality API 資料嵌入現有體驗中。
用途和附加價值
Air Quality API 信號適用於各種搜尋體驗,例如在使用者尋找要造訪的地點時。Air Quality API 提供:
- 即時 * 和歷來資料 - 最新準確的資料,可呈現目前狀態,以及 30 天內 (以小時為單位) 的過去時間資料。(* 每小時戶外空氣品質數據匯報)
- 全球和當地資料 - 涵蓋超過 100 個國家/地區的整個區域,但高度本地化 (最多可達 5 億個) Air Quality API 資料提供重要的信號,方便使用者在最適當的地點進行比較和決策。
即使鄰近地區,空氣品質也可能有極大差異
範例逐步操作說明
協助在第一時間顯示空氣品質資料
顯示 Air Quality API 資料的主要方式有兩種:
目前條件 / 每小時:取得每個地區要顯示的個別值。
(請參閱「在地點圖釘上顯示 Air Quality API 資料」一節)熱視圖圖塊:在地圖上疊加一個彩色圖層,代表目前戶外空氣品質條件。可以使用特定國家/地區的圖層索引。
(前往「Display Air Quality API 熱視圖圖層」一節)
在地點圖釘上顯示 Air Quality API 資料
- 選擇你的位置索引:通用空氣品質指數或地方空氣品質指數 (最多 70 個不同的空氣品質指數 (AQI))。空氣品質指數 (AQI) 是指特定國家/地區 (例如美國 EPA) 的空氣品質指數,會根據不同計算方式、資料來源和指定用途,將不同空氣品質等級進行分類。
- 直接從 Place Search 體驗中,開始視覺化呈現主要的 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": … } }
- 您也可以只查詢與地點互動的空氣品質資料。
- 你可以使用 Air Quality 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 API 與 ImateMapType,顯示能覆蓋 Google 地圖整個可視區域所需的個別圖塊。使用者透過平移、縮放或變更位置的方式與地圖互動時,熱視圖圖塊會重新整理。
請注意,允許的縮放等級值為 16。
超本地搜尋時,Air Quality 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 張地圖。
- Air Quality API:
- 每個地點 1 次 (全部在地圖載入時或僅在使用者選取時)。
- 熱視圖圖塊圖層:每張圖塊圖片皆為 256*256 像素;如要涵蓋行動裝置或網頁中顯示的標準地圖,則您必須建立 12-14 個圖塊。每個提取的資訊方塊都會計為 1 個 SKU 單位。
- Nearby Search (New) API:顯示每 20 個地點 1 個查詢。根據查詢回應中的地點資料提供不同的計費方式。
結論
我們證明,Air Quality API 是可供使用者決定造訪地點的重要資料點。因此,應以最早期顯示的搜尋體驗顯示空氣品質資料,同時謹慎地一次顯示的資訊量及資料的顯示方式。
下一步
延伸閱讀:
貢獻者
Google 維護這篇文章。以下著作人最初編寫過這個草稿。
主體作者:
Thomas Anglaret | 解決方案工程師