このドキュメントでは、Air Quality API を使用して、リッチな場所検索エクスペリエンスを構築する方法について説明します。大気質がファネルの最初から最後までユーザーにとって価値のあるシグナルとなる仕組みと、Air Quality API のデータを既存のエクスペリエンスに組み込む方法について説明します。

ユースケースと付加価値
Air Quality API のシグナルは、ユーザーが訪問する場所を探しているときなど、さまざまな検索エクスペリエンスに組み込むことができます。Air Quality API は以下を提供します。
- リアルタイム * と過去のデータ - 現在の状態を表す最新の正確なデータと、1 時間ごとの解像度で 30 日間の期間内の過去のデータ。(* 屋外の大気質の 1 時間ごとのスナップショット)
- グローバル データとローカル データ - 100 以上の国で全域をカバーしつつ、高度にローカライズされた(最大 500 m)Air Quality API データは、ユーザーが最適な場所を比較して判断するための重要なシグナルを提供します。

大気質は近隣の場所でも大きく異なる場合がある
サンプル チュートリアル
エクスペリエンスの早い段階で大気質データを表示する
Air Quality API のデータを表示する方法は主に 2 つあります。
現在の状況 / 1 時間ごと: 各地域の個々の値を表示します。
(セクション: 位置ピンに Air Quality API のデータを表示するに移動)ヒートマップ タイル: 現在の屋外の大気質を表す色付きのレイヤを地図の上に重ねて表示します。国固有のレイヤ インデックスを利用できます。
(セクション: 地図に Air Quality API のヒートマップ レイヤを表示するに移動)
Air Quality API のデータを位置ピンに表示する
- 場所の指数を選択します。世界共通の AQI または地域の AQI(最大 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": …
}
}
- また、位置情報とのやり取りがあった場合にのみ大気質データをクエリすることもできます。

- Air Quality 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 までです。
局地的な検索で 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(新機能)API: 表示される 20 か所ごとに 1 回のクエリ。クエリ レスポンスに含まれるプレイス データに応じて異なる課金。
まとめ
Air Quality API は、ユーザーが訪問先を決めるうえで重要なデータポイントになることを示しました。そのため、検索エクスペリエンスの早い段階で大気質データを表示する必要があります。ただし、一度に表示する情報の量や表示方法には注意が必要です。
次のアクション
参考資料:
寄稿者
この記事は Google が管理しています。このドキュメントは、以下のコントリビューターによって作成されました。
主な執筆者:
Thomas Anglaret | ソリューション エンジニア