コンテンツにスキップ
コンソール

衛星画像

気象庁のひまわり9号、AHI の画像タイルです。データは NOAA Open Data 経由で取得しています。観測バンドは 10 分に 1 シーンで、約 48 時間保持します。 同じエンドポイントで、16 の元バンド(B01–B16)と 20 種の派生レイヤーを提供します。ひまわり9号から見える地球の円盤をカバーし、円盤の外は透明です。

共通のルール(座標、キャッシュ、出典表示、完全な地図の例)は 地図タイルの概要 を参照してください。

  • 推奨表記データ出典:気象庁 ひまわり9号(NOAA Open Data 経由)、ExpTech Studio(exptech.dev)

    cloudtop、cloudmask、sst、tpw など NOAA プロダクトのレイヤーを使う場合は、表記に NOAA を加えてください。

上流の条件
  • 気象庁 ひまわり9号(NOAA Open Data 経由):ひまわりデータに対する気象庁および NOAA Open Data の利用条件も適用されます。
  • NOAA:米国政府のデータで、原則として利用制限はありません。NOAA が製品を推奨・保証しているように示さないでください。

表記の場所、例、商用利用の申請はデータの利用条件と出典表記をご覧ください。

現在は API Token は不要です。

GEThttps://api.core-tnn1.exptech.dev/api/v2/tiles/satellite/{channel}/list
サーバーTNN-1
パスパラメーター
  • channelstring必須

    バンド 1–16、または派生レイヤー名(下の「バンドとレイヤー」を参照)。正規の書き方だけを受け付けます。たとえば 13 は可で、013 は不可です。

リクエスト例
curl --compressed "https://api.core-tnn1.exptech.dev/api/v2/tiles/satellite/<channel>/list"
レスポンス

成功(データがないときは [ ])。クライアントが対応しているときは gzip で圧縮

[
1794641400,
600,
600,
600
]

channel が不正

bad channel

サーバーエラー(プレーンテキストのエラーメッセージ)text/plain

試してみる
パスパラメーター

トークンはこのブラウザから API へ直接送信されます。

レスポンスは delta 符号化の整数配列です。古い順で、単位は Unix 秒です(復元方法は地図タイルの概要を参照)。派生レイヤーは、構成するバンドがすべて揃った時刻だけを返します。リストにある時刻は、必ず描画できます。

フィールド型説明
[0]integer最も古い 1 件の時刻です。Unix 秒。
[i](i ≥ 1)integer直前の 1 件との差(秒)です。累積すると各件の時刻になります。
GEThttps://static.core-tnn1.exptech.dev/api/v2/tiles/satellite/{channel}/{style}/{time}/{z}/{x}/{y}.webp
サーバーTNN-1
パスパラメーター
  • channelstring必須

    バンド 1–16、または派生レイヤー名です。

  • stylestring必須

    normal、jma、bd のいずれかです。効くのはバンド 7–16 だけです。バンド 1–6 と派生レイヤーは normal を入れてください。

  • timeinteger必須

    Unix 秒。リストにある値を使ってください。同じ 10 分区間のどの秒も、同じシーンに対応します。

  • zinteger必須

    ズームレベル。0–11。範囲外は 1 × 1 の透明 GIF を返します。

  • xinteger必須

    XYZ タイルの列番号です。

  • yinteger必須

    XYZ タイルの行番号です(北から南)。

リクエスト例
curl -o output.webp "https://static.core-tnn1.exptech.dev/api/v2/tiles/satellite/<channel>/<style>/<time>/<z>/<x>/<y>.webp"
レスポンス

image/webp、256 × 256、透過チャンネルあり。レイヤーにより非可逆または可逆圧縮。Cache-Control: public, max-age=300 を付けます。z が 0–11 の外のときは、1 × 1 の透明 GIF(image/gif)を返しますbinary image/webp

If-None-Match が ETag と一致。内容なしレスポンスボディなし

channel、style、time、または座標が不正

bad style

その時刻にデータがない。まだ取り込んでいない、または保持期間を過ぎている(application/json)

{
"error": "Data not found for specified timestamp"
}

サーバーエラー。内容は改行 1 つだけレスポンスボディなし

試してみる
パスパラメーター

トークンはこのブラウザから API へ直接送信されます。

channel には、元バンドの番号か派生レイヤー名を指定できます。どちらも下表の正規の書き方だけを受け付けます(大文字小文字の違いも、先頭のゼロも 400 になります)。

channel 波長 種類 見えるもの
1 0.47 µm 可視(青) エーロゾル、砂塵、煙。日中のみ
2 0.51 µm 可視(緑) 植生。トゥルーカラーの緑。日中のみ
3 0.64 µm 可視(赤) 解像度が最も高い(0.5 km)。雲のテクスチャと地表の輪郭。日中のみ
4 0.86 µm 近赤外 水域は暗く、植生は明るい。海岸線と浸水範囲。日中のみ
5 1.6 µm 近赤外 氷雲と積雪は暗め。雲の相を区別する。日中のみ
6 2.3 µm 近赤外 雲の微物理、地表の高温の熱源。日中のみ
7 3.9 µm 短波長赤外 夜間の霧と下層雲、火災
8 6.2 µm 水蒸気 上層の水蒸気、ジェット気流、乾燥空気の流入
9 6.9 µm 水蒸気 中層の水蒸気
10 7.3 µm 水蒸気 下層の水蒸気輸送
11 8.6 µm 赤外 雲相、SO₂
12 9.6 µm オゾン 成層圏オゾン
13 10.4 µm 赤外(大気の窓) 実際の雲頂・地表温度に最も近い。最もよく使う赤外画像
14 11.2 µm 赤外 長波長赤外
15 12.4 µm 赤外 13 との差で砂塵と火山灰を識別できる
16 13.3 µm CO₂ 雲頂高度、半透明の巻雲

バンド 1–6 は反射率のグレースケールです(0% は透明、100% は白)。夜間は画像がありません。バンド 7–16 は昼夜とも画像があり、style で色階を切り替えられます。

style 説明
normal 気象庁で慣用のグレースケール。冷たいほど白くなります。290 K は透明、208 K は完全な白で不透明です
jma 雲頂の強調。暖かい雲はグレースケールのまま、最も冷たい雲頂に色を付けます(暖かい側が青、冷たい側が赤の連続階調)
bd Dvorak の BD 曲線。台風強度の解析に使う階段状の色階です。区切りは +9、−30、−41、−53、−63、−69、−75、−81 °C です

バンド 1–6 とすべての派生レイヤーは style を無視します。ただし URL にはこの部分が必要なので、normal を入れてください。

channel 内容 構成 更新
truecolor トゥルーカラー RGB(気象庁の配合)。肉眼に近い。日中のみ バンド 3/2/1 10 分
naturalcolor ナチュラルカラー RGB。氷雲と水雲、植生と裸地を区別する。日中のみ バンド 5/4/3 10 分
ash 火山灰 RGB(気象庁の配合)。火山灰と SO₂ の噴煙 13−15/11−13/13 10 分
dust ダスト RGB(気象庁の配合)。砂塵、黄砂 13−15/11−13/13 10 分
airmass 気団 RGB(気象庁の配合)。乾燥した成層圏の空気の流入と、暖湿な気団 10−8/13−12/8 10 分
nightmicrophysics 夜間マイクロ物理 RGB(気象庁の配合)。夜間の霧と下層雲 13−15/7−13/13 10 分
watervapor 水蒸気(6.2 µm)。昼夜とも使えます バンド 8 10 分
btd_split スプリットウィンドウ差。砂塵・火山灰と通常の雲で符号が逆になります 13 − 15 10 分
btd_fog 夜間の霧と下層雲 7 − 13 10 分
btd_wvirw オーバーシューティングトップ(深い対流) 8 − 13 10 分
btd_so2 火山性 SO₂、雲相 11 − 13 10 分
btd_co2 薄い巻雲、雲高 16 − 13 10 分
btd_ozone オゾン、対流圏界面の折れ込み 12 − 13 10 分
cloudtop 雲頂温度(NOAA のリトリーバル)。190–300 K NOAA の雲頂高度プロダクト 1 時間ごと
cloudmask 4 段階の雲マスク(晴天から有雲) NOAA の雲マスクプロダクト 1 時間ごと
sst 海面水温。271.15–305.15 K NOAA CoastWatch ACSPO 1 時間ごと
tpw 可降水量。0–75 mm NOAA NESDIS Blended TPW 1 時間ごと
ndvi 植生指数 (B04−B03)/(B04+B03)。雲のある場所は透明 バンド 4、3 と雲マスク 1 時間ごと
ndwi 水域指数 (B02−B04)/(B02+B04)。雲のある場所は透明 バンド 2、4 と雲マスク 1 時間ごと
mndwi 改良水域指数 (B02−B06)/(B02+B06)。水域と市街地を区別できる。雲のある場所は透明 バンド 2、6 と雲マスク 1 時間ごと

ndvi、ndwi、mndwi は、大気補正をしていない大気上端の指数です。変化と範囲を見る用途に向き、補正済みの地表面の量としては使えません。

MapLibre GL JS に、あるバンドの最新シーンを追加します。まずリストを取り、累積して最新時刻を出し、タイル URL のテンプレートを raster source に足します。アニメーションの手順はレーダーと同じです。地図タイルの概要を参照してください。

const API = "https://api.core-tnn1.exptech.dev";
const STATIC = "https://static.core-tnn1.exptech.dev";
async function addLatestSatellite(map, channel = "13", style = "normal") {
const list = await (await fetch(`${API}/api/v2/tiles/satellite/${channel}/list`)).json();
if (list.length === 0) return null;
let t = 0;
for (const v of list) t += v;
map.addSource("satellite", {
type: "raster",
tiles: [`${STATIC}/api/v2/tiles/satellite/${channel}/${style}/${t}/{z}/{x}/{y}.webp`],
tileSize: 256,
minzoom: 0,
maxzoom: 11,
attribution: "データ出典:気象庁 ひまわり9号(NOAA Open Data 経由)、ExpTech Studio(exptech.dev)",
});
map.addLayer({ id: "satellite", type: "raster", source: "satellite", paint: { "raster-opacity": 0.85 } });
return t;
}
  • 時刻が存在しないときは 404 の JSON です。 404 の結果は約 10 秒残ります。リストにある時刻だけを使ってください。約 48 時間を超えたシーンはリストから消えます。
  • time は 10 分区間の先頭に揃えられます。同じ区間のどの秒でも、同じシーンが返ります。
  • 可視バンド(1–6)と truecolor、naturalcolor、指数レイヤーに画像があるのは日中だけです。リストには夜間の時刻も出ますが、夜側のタイルは透明です。
  • 1 時間ごとに更新するレイヤー(cloudtop、cloudmask、sst、tpw、および 3 種の指数)は、通常、観測バンドより 1.5 時間以上遅れて現れます。一時的にデータがないときは、リストは空配列 [] です。
  • style は normal、jma、bd を使ってください。gray は normal の旧名で、公開タイルホストは受け付けません(400)。
  • channel または style が不正なときは 400 です。time、z、x、y が整数でないときは 404 です(パスが一致しません)。
  • 地図には、データライセンスの推奨表記で出典を表示してください。cloudtop、cloudmask、sst、tpw、および指数レイヤーを使うときは、さらに NOAA を加えてください。