気象庁APIの追記 週間天気予報+その他関数
週間天気予報・他関数
細かい所はすっかり忘れてるので説明無し😅
forecostCode.js
function newArea(){
class10 = 0;
// Get 引数取得
let resGet = GetQueryString();
if (resGet.area != null){
areaCode = resGet.area;
let cityCodeGet = resGet.city;
let cityCodeAry = cityCodeGet.split(':');
cityCode = cityCodeAry[1];
class10 = cityCodeAry[0];
}
if (resGet.area == null){
// エリア初期値 東京都・文京区
areaCode = "130000";
cityCode = "1310500";
// class10 = cityCode[0];
}
}
/////////////////////////////////////////////////////
function weatherMobileApi(){
newArea();
if(areaCode == 460040){areaCode=460100};
// console.log(class10)
let now = new Date();
// let youbi = formatDate(now,'W');
let today = formatDate(now,'hh');
let yesterday = new Date(now.setDate(now.getDate() -1));
let hidden;
let tomorrwStrings="";//明日
let dayAfterTomorrw="";//明後日
if( Number(today) < 6 ){ //今の時刻
hidden = 'hidden';
yesterday = new Date(now.setDate(now.getDate() - 1));
tomorrwStrings="";//今日
dayAfterTomorrw="";//明日
}
// console.log(yesterday)
let day =[];
for (let i=0;i<8;i++){
day.push(formatDate(new Date(yesterday.setDate(yesterday.getDate()+1)),'mm/dd'));
}
yesterday = new Date(now.setDate(now.getDate() ));
let week = Array();
for (let i=0;i<8;i++){
week.push(formatDate(new Date(yesterday.setDate(yesterday.getDate()+1)),'(W)'));
}
yesterday = new Date(now.setDate(now.getDate() ));
let weekTag = Array();
for (let i=0;i<8;i++){
weekTag.push(formatDate(new Date(yesterday.setDate(yesterday.getDate()+1)),'(W)'));
}
// weekTag = week;
for (let i=0;i<8;i++){
if(weekTag[i]==='(土)' || weekTag[i]==='(日)'){
weekTag[i] = weekTag[i].replace('(土)', 'blue');
weekTag[i] = weekTag[i].replace('(日)', 'red');
}else{
weekTag[i] = '';
}
}
let an_hour_ago = new Date(now - (1000 * 60 * 15));
let hh = formatDate(an_hour_ago,'hh');
let date = formatDate(an_hour_ago,'YYYYMMDD');
const url = `https://www.jma.go.jp/bosai/forecast/data/forecast/${areaCode}.json`;
// main.js getJson()
getData(url).then((data) => {
// console.log(data)
let class10s = class10;
// if( class10 > 1 ){ class10s = 1 };
if( class10 < 0 ){ class10s = 0 };
if( class10 >= 2 ){ class10s = class10-1 };
// if( class10 === 2 ){ class10s = 1 };
let codeArray;
if (data[1].timeSeries[0].areas[class10s]){
codeArray=data[1].timeSeries[0].areas[class10s].weatherCodes;
}else{
codeArray=data[1].timeSeries[0].areas[0].weatherCodes;
}
let temp=data[0].timeSeries[2].areas[class10s].temps;
let code=forecastCode[data[0].timeSeries[0].areas[class10s].weatherCodes[0]];
let code2=forecastCode[data[0].timeSeries[0].areas[class10s].weatherCodes[1]];
// console.log(code+':'+code2)
let weaterCode = [];
for (let i=0;i<7;i++){
weaterCode.push(forecastCode[codeArray[i]]);
}
let tempsMax;
let tempsMin;
if (data[1].timeSeries[1].areas[class10s]){
tempsMax =data[1].timeSeries[1].areas[class10s].tempsMax;
tempsMin =data[1].timeSeries[1].areas[class10s].tempsMin;
}else{
tempsMax =data[1].timeSeries[1].areas[0].tempsMax;
tempsMin =data[1].timeSeries[1].areas[0].tempsMin;
}
// console.log('class10:'+class10)
// console.log('class10s:'+class10s)
let areaName
if (data[1].timeSeries[0].areas[class10s]){
areaName = data[1].timeSeries[1].areas[class10s].area['name'];
areaName += '・' + data[0].timeSeries[0].areas[class10].area['name'];
areaName += '.(気温:' + data[1].timeSeries[1].areas[class10s].area['name'] + ')';
}else{
areaName = data[1].timeSeries[0].areas[0].area['name'];
areaName += '.(気温:' + data[1].timeSeries[1].areas[0].area['name'] + ')';
}
let todayMinTemp=temp[1];
let todayMaxTemp=temp[0];
let tomorrowMinTemp=temp[2];
let tomorrowMaxTemp=temp[3];
if(todayMinTemp === todayMaxTemp){todayMinTemp = '-';}
if(temp[3] === undefined){
todayMinTemp="-";
todayMaxTemp="-";
tomorrowMinTemp=data[0].timeSeries[2].areas[class10].temps[0];
tomorrowMaxTemp=data[0].timeSeries[2].areas[class10].temps[1];
}
let urlLink = `https://www.jma.go.jp/bosai/#pattern=default&area_type=class20s&area_code=${cityCode}`;
let imgLink = "https://www.jma.go.jp/bosai/forecast/img/";
let output = `
<table>
<caption><a href="${urlLink}">${areaName}</a></caption>
<tr>
<th class="${weekTag[0]} ${hidden}">${day[0]}${week[0]}</th>
<th class="${weekTag[1]}">${tomorrwStrings}${day[1]}${week[1]}</th>
<th class="${weekTag[2]}">${dayAfterTomorrw}${day[2]}${week[2]}</th>
<th class="${weekTag[3]}">${day[3]}${week[3]}</th>
<th class="${weekTag[4]}">${day[4]}${week[4]}</th>
<th class="${weekTag[5]}">${day[5]}${week[5]}</th>
<th class="${weekTag[6]}">${day[6]}${week[6]}</th>
<th class="${weekTag[7]}">${day[7]}${week[7]}</th>
</tr>
<tr>
<td class=" ${hidden}"><img src="${imgLink}${code[0]}" alt="${code[3]}"></td>
<td><img src="${imgLink}${code2[0]}" alt="${code2[3]}"></td>
<td><img src="${imgLink}${weaterCode[1][0]}" alt="${weaterCode[1][3]}"></td>
<td><img src="${imgLink}${weaterCode[2][0]}" alt="${weaterCode[2][3]}"></td>
<td><img src="${imgLink}${weaterCode[3][0]}" alt="${weaterCode[3][3]}"></td>
<td><img src="${imgLink}${weaterCode[4][0]}" alt="${weaterCode[4][3]}"></td>
<td><img src="${imgLink}${weaterCode[5][0]}" alt="${weaterCode[5][3]}"></td>
<td><img src="${imgLink}${weaterCode[6][0]}" alt="${weaterCode[6][3]}"></td>
</tr>
<tr>
<td class=" ${hidden}">${code[3]}</td>
<td>${code2[3]}</td>
<td>${weaterCode[1][3]}</td>
<td>${weaterCode[2][3]}</td>
<td>${weaterCode[3][3]}</td>
<td>${weaterCode[4][3]}</td>
<td>${weaterCode[5][3]}</td>
<td>${weaterCode[6][3]}</td>
</tr>
<tr>
<td class="${hidden}"><span class="blue">${todayMinTemp}</span>/<span class="red">${todayMaxTemp}</span></td>
<td><span class="blue">${tomorrowMinTemp}</span>/<span class="red">${tomorrowMaxTemp}</td>
<td><span class="blue">${tempsMin[1]}</span>/<span class="red">${tempsMax[1]}</span></td>
<td><span class="blue">${tempsMin[2]}</span>/<span class="red">${tempsMax[2]}</span></td>
<td><span class="blue">${tempsMin[3]}</span>/<span class="red">${tempsMax[3]}</span></td>
<td><span class="blue">${tempsMin[4]}</span>/<span class="red">${tempsMax[4]}</span></td>
<td><span class="blue">${tempsMin[5]}/<span class="red">${tempsMax[5]}</span></td>
<td><span class="blue">${tempsMin[6]}/<span class="red">${tempsMax[6]}</span></td>
</tr>
</table>`
const element = document.getElementById('week-weather');
element.innerHTML = output;
// //////// アメダス用code /////////////
const nameAme = data[0].timeSeries[2].areas[class10].area.name;
const codeAme = data[0].timeSeries[2].areas[class10].area.code;
getAmedus(nameAme,codeAme);
// ////////////////////////////////////////
});
}
////////////////////////////////////////////////////////////
function getAmedus(nameAme,codeAme){
newArea();
// console.log('areacode'+areaCode)
if(areaCode == 460040){areaCode=460100};
const now = new Date();
// let nowHH = formatDate(now,'hh');
// console.log(nowHH)
let an_hour_ago = new Date(now - (1000 * 60 * 15));//15分前
let hh = formatDate(an_hour_ago,'hh');
// let mm = formatDate(an_hour_ago,'mm');
let date = formatDate(an_hour_ago,'YYYYMMDD');
// console.log('mm:'+mm)
//////// アメダス用code /////////////
hh = Number(hh);
let hhStr;
if (hh < 24){ hhStr = '21'; }
if (hh < 21){ hhStr = '18'; }
if (hh < 18){ hhStr = '15'; }
if (hh < 15){ hhStr = '12'; }
if (hh < 12){ hhStr = '09'; }
if (hh < 9 ){ hhStr = '06'; }
if (hh < 6 ){ hhStr = '03'; }
if (hh < 3 ){ hhStr = '00'; }
const urlAmedas = `https://www.jma.go.jp/bosai/amedas/data/point/${codeAme}/${date}_${hhStr}.json`
getData(urlAmedas).then((dataAmedas) => {
// let amedasDate=formatDate(new Date(),'YYYYMMDD')+'180000';
// if(hh == '00') {
// amedasDate=formatDate(new Date(),'YYYYMMDD')+'000000';
// }
if (dataAmedas === "Error"){
return;
}
let date=[];
Object.keys(dataAmedas).forEach((key) => {
date.push(key);
})
let num = date[date.length-1];
// console.log(dataAmedas[num])
const nowTemp = dataAmedas[num].temp[0];
const humidity = dataAmedas[num].humidity[0];
const maxTemp = dataAmedas[num].maxTemp[0];
const minTemp = dataAmedas[num].minTemp[0];
const maxWind = dataAmedas[num].gust[0];
let maxWindDirection = dataAmedas[num].gustDirection[0];
maxWindDirection = getDirection(maxWindDirection);
const wind = dataAmedas[num].wind[0];
let nowWindDirection = dataAmedas[num].windDirection[0];
nowWindDirection = getDirection(nowWindDirection);
// console.log(maxWindDirection)
// console.log('/max:'+maxAmedas);
const output = `${nameAme}<span id="latlon"></span> <a href="https://www.jma.go.jp/bosai/amedas/#amdno=${codeAme}&area_type=offices&area_code=${areaCode}">(${nowTemp}℃-${wind}m/${nowWindDirection}-${humidity}%)(min/max:${minTemp}℃/${maxTemp}℃-${maxWind}m/${maxWindDirection})</a>`;
const element = document.getElementById('amedas');
// element.innerHTML = output;
})
const url = 'https://www.jma.go.jp/bosai/amedas/const/amedastable.json';
getData(url).then((data) => {
let lat = data[codeAme].lat;
let lon = data[codeAme].lon;
const output = lat + '/' +lon
const element = document.getElementById('latlon');
// element.innerHTML = output;
})
}
function getDirection(n){
// 数値を方位に変換
switch(n){
case 1: return '北北東';
case 2: return '北東';
case 3: return '東北東';
case 4: return '東';
case 5: return '東南東';
case 6: return '南東';
case 7: return '南南東';
case 8: return '南';
case 9: return '南南西';
case 10: return '南西';
case 11: return '西南西';
case 12: return '西';
case 13: return '西北西';
case 14: return '北西';
case 15: return '北北西';
case 16: return '北';
default: return 'error';
}
}
// https://www.t3a.jp/blog/web-develop/weather-code-list/
// 天気コード(weatherCodes)
// 〇画像の設置場所
// 天気予報の画像のURLは、
// https://www.jma.go.jp/bosai/forecast/img/〇〇.svg
const forecastCode = {
"100": [
"100.svg",
"500.svg",
"100",
"晴",
"CLEAR"
],
"101": [
"101.svg",
"501.svg",
"100",
"晴時々曇",
"PARTLY CLOUDY"
],
"102": [
"102.svg",
"502.svg",
"300",
"晴一時雨",
"CLEAR, OCCASIONAL SCATTERED SHOWERS"
],
"103": [
"102.svg",
"502.svg",
"300",
"晴時々雨",
"CLEAR, FREQUENT SCATTERED SHOWERS"
],
"104": [
"104.svg",
"504.svg",
"400",
"晴一時雪",
"CLEAR, SNOW FLURRIES"
],
"105": [
"104.svg",
"504.svg",
"400",
"晴時々雪",
"CLEAR, FREQUENT SNOW FLURRIES"
],
"106": [
"102.svg",
"502.svg",
"300",
"晴一時雨か雪",
"CLEAR, OCCASIONAL SCATTERED SHOWERS OR SNOW FLURRIES"
],
"107": [
"102.svg",
"502.svg",
"300",
"晴時々雨か雪",
"CLEAR, FREQUENT SCATTERED SHOWERS OR SNOW FLURRIES"
],
"108": [
"102.svg",
"502.svg",
"300",
"晴一時雨か雷雨",
"CLEAR, OCCASIONAL SCATTERED SHOWERS AND/OR THUNDER"
],
"110": [
"110.svg",
"510.svg",
"100",
"晴後時々曇",
"CLEAR, PARTLY CLOUDY LATER"
],
"111": [
"110.svg",
"510.svg",
"100",
"晴後曇",
"CLEAR, CLOUDY LATER"
],
"112": [
"112.svg",
"512.svg",
"300",
"晴後一時雨",
"CLEAR, OCCASIONAL SCATTERED SHOWERS LATER"
],
"113": [
"112.svg",
"512.svg",
"300",
"晴後時々雨",
"CLEAR, FREQUENT SCATTERED SHOWERS LATER"
],
"114": [
"112.svg",
"512.svg",
"300",
"晴後雨",
"CLEAR,RAIN LATER"
],
"115": [
"115.svg",
"515.svg",
"400",
"晴後一時雪",
"CLEAR, OCCASIONAL SNOW FLURRIES LATER"
],
"116": [
"115.svg",
"515.svg",
"400",
"晴後時々雪",
"CLEAR, FREQUENT SNOW FLURRIES LATER"
],
"117": [
"115.svg",
"515.svg",
"400",
"晴後雪",
"CLEAR,SNOW LATER"
],
"118": [
"112.svg",
"512.svg",
"300",
"晴後雨か雪",
"CLEAR, RAIN OR SNOW LATER"
],
"119": [
"112.svg",
"512.svg",
"300",
"晴後雨か雷雨",
"CLEAR, RAIN AND/OR THUNDER LATER"
],
"120": [
"102.svg",
"502.svg",
"300",
"晴朝夕一時雨",
"OCCASIONAL SCATTERED SHOWERS IN THE MORNING AND EVENING, CLEAR DURING THE DAY"
],
"121": [
"102.svg",
"502.svg",
"300",
"晴朝の内一時雨",
"OCCASIONAL SCATTERED SHOWERS IN THE MORNING, CLEAR DURING THE DAY"
],
"122": [
"112.svg",
"512.svg",
"300",
"晴夕方一時雨",
"CLEAR, OCCASIONAL SCATTERED SHOWERS IN THE EVENING"
],
"123": [
"100.svg",
"500.svg",
"100",
"晴山沿い雷雨",
"CLEAR IN THE PLAINS, RAIN AND THUNDER NEAR MOUTAINOUS AREAS"
],
"124": [
"100.svg",
"500.svg",
"100",
"晴山沿い雪",
"CLEAR IN THE PLAINS, SNOW NEAR MOUTAINOUS AREAS"
],
"125": [
"112.svg",
"512.svg",
"300",
"晴午後は雷雨",
"CLEAR, RAIN AND THUNDER IN THE AFTERNOON"
],
"126": [
"112.svg",
"512.svg",
"300",
"晴昼頃から雨",
"CLEAR, RAIN IN THE AFTERNOON"
],
"127": [
"112.svg",
"512.svg",
"300",
"晴夕方から雨",
"CLEAR, RAIN IN THE EVENING"
],
"128": [
"112.svg",
"512.svg",
"300",
"晴夜は雨",
"CLEAR, RAIN IN THE NIGHT"
],
"130": [
"100.svg",
"500.svg",
"100",
"朝の内霧後晴",
"FOG IN THE MORNING, CLEAR LATER"
],
"131": [
"100.svg",
"500.svg",
"100",
"晴明け方霧",
"FOG AROUND DAWN, CLEAR LATER"
],
"132": [
"101.svg",
"501.svg",
"100",
"晴朝夕曇",
"CLOUDY IN THE MORNING AND EVENING, CLEAR DURING THE DAY"
],
"140": [
"102.svg",
"502.svg",
"300",
"晴時々雨で雷を伴う",
"CLEAR, FREQUENT SCATTERED SHOWERS AND THUNDER"
],
"160": [
"104.svg",
"504.svg",
"400",
"晴一時雪か雨",
"CLEAR, SNOW FLURRIES OR OCCASIONAL SCATTERED SHOWERS"
],
"170": [
"104.svg",
"504.svg",
"400",
"晴時々雪か雨",
"CLEAR, FREQUENT SNOW FLURRIES OR SCATTERED SHOWERS"
],
"181": [
"115.svg",
"515.svg",
"400",
"晴後雪か雨",
"CLEAR, SNOW OR RAIN LATER"
],
"200": [
"200.svg",
"200.svg",
"200",
"曇",
"CLOUDY"
],
"201": [
"201.svg",
"601.svg",
"200",
"曇時々晴",
"MOSTLY CLOUDY"
],
"202": [
"202.svg",
"202.svg",
"300",
"曇一時雨",
"CLOUDY, OCCASIONAL SCATTERED SHOWERS"
],
"203": [
"202.svg",
"202.svg",
"300",
"曇時々雨",
"CLOUDY, FREQUENT SCATTERED SHOWERS"
],
"204": [
"204.svg",
"204.svg",
"400",
"曇一時雪",
"CLOUDY, OCCASIONAL SNOW FLURRIES"
],
"205": [
"204.svg",
"204.svg",
"400",
"曇時々雪",
"CLOUDY FREQUENT SNOW FLURRIES"
],
"206": [
"202.svg",
"202.svg",
"300",
"曇一時雨か雪",
"CLOUDY, OCCASIONAL SCATTERED SHOWERS OR SNOW FLURRIES"
],
"207": [
"202.svg",
"202.svg",
"300",
"曇時々雨か雪",
"CLOUDY, FREQUENT SCCATERED SHOWERS OR SNOW FLURRIES"
],
"208": [
"202.svg",
"202.svg",
"300",
"曇一時雨か雷雨",
"CLOUDY, OCCASIONAL SCATTERED SHOWERS AND/OR THUNDER"
],
"209": [
"200.svg",
"200.svg",
"200",
"霧",
"FOG"
],
"210": [
"210.svg",
"610.svg",
"200",
"曇後時々晴",
"CLOUDY, PARTLY CLOUDY LATER"
],
"211": [
"210.svg",
"610.svg",
"200",
"曇後晴",
"CLOUDY, CLEAR LATER"
],
"212": [
"212.svg",
"212.svg",
"300",
"曇後一時雨",
"CLOUDY, OCCASIONAL SCATTERED SHOWERS LATER"
],
"213": [
"212.svg",
"212.svg",
"300",
"曇後時々雨",
"CLOUDY, FREQUENT SCATTERED SHOWERS LATER"
],
"214": [
"212.svg",
"212.svg",
"300",
"曇後雨",
"CLOUDY, RAIN LATER"
],
"215": [
"215.svg",
"215.svg",
"400",
"曇後一時雪",
"CLOUDY, SNOW FLURRIES LATER"
],
"216": [
"215.svg",
"215.svg",
"400",
"曇後時々雪",
"CLOUDY, FREQUENT SNOW FLURRIES LATER"
],
"217": [
"215.svg",
"215.svg",
"400",
"曇後雪",
"CLOUDY, SNOW LATER"
],
"218": [
"212.svg",
"212.svg",
"300",
"曇後雨か雪",
"CLOUDY, RAIN OR SNOW LATER"
],
"219": [
"212.svg",
"212.svg",
"300",
"曇後雨か雷雨",
"CLOUDY, RAIN AND/OR THUNDER LATER"
],
"220": [
"202.svg",
"202.svg",
"300",
"曇朝夕一時雨",
"OCCASIONAL SCCATERED SHOWERS IN THE MORNING AND EVENING, CLOUDY DURING THE DAY"
],
"221": [
"202.svg",
"202.svg",
"300",
"曇朝の内一時雨",
"CLOUDY OCCASIONAL SCCATERED SHOWERS IN THE MORNING"
],
"222": [
"212.svg",
"212.svg",
"300",
"曇夕方一時雨",
"CLOUDY, OCCASIONAL SCCATERED SHOWERS IN THE EVENING"
],
"223": [
"201.svg",
"601.svg",
"200",
"曇日中時々晴",
"CLOUDY IN THE MORNING AND EVENING, PARTLY CLOUDY DURING THE DAY,"
],
"224": [
"212.svg",
"212.svg",
"300",
"曇昼頃から雨",
"CLOUDY, RAIN IN THE AFTERNOON"
],
"225": [
"212.svg",
"212.svg",
"300",
"曇夕方から雨",
"CLOUDY, RAIN IN THE EVENING"
],
"226": [
"212.svg",
"212.svg",
"300",
"曇夜は雨",
"CLOUDY, RAIN IN THE NIGHT"
],
"228": [
"215.svg",
"215.svg",
"400",
"曇昼頃から雪",
"CLOUDY, SNOW IN THE AFTERNOON"
],
"229": [
"215.svg",
"215.svg",
"400",
"曇夕方から雪",
"CLOUDY, SNOW IN THE EVENING"
],
"230": [
"215.svg",
"215.svg",
"400",
"曇夜は雪",
"CLOUDY, SNOW IN THE NIGHT"
],
"231": [
"200.svg",
"200.svg",
"200",
"曇海上海岸は霧か霧雨",
"CLOUDY, FOG OR DRIZZLING ON THE SEA AND NEAR SEASHORE"
],
"240": [
"202.svg",
"202.svg",
"300",
"曇時々雨で雷を伴う",
"CLOUDY, FREQUENT SCCATERED SHOWERS AND THUNDER"
],
"250": [
"204.svg",
"204.svg",
"400",
"曇時々雪で雷を伴う",
"CLOUDY, FREQUENT SNOW AND THUNDER"
],
"260": [
"204.svg",
"204.svg",
"400",
"曇一時雪か雨",
"CLOUDY, SNOW FLURRIES OR OCCASIONAL SCATTERED SHOWERS"
],
"270": [
"204.svg",
"204.svg",
"400",
"曇時々雪か雨",
"CLOUDY, FREQUENT SNOW FLURRIES OR SCATTERED SHOWERS"
],
"281": [
"215.svg",
"215.svg",
"400",
"曇後雪か雨",
"CLOUDY, SNOW OR RAIN LATER"
],
"300": [
"300.svg",
"300.svg",
"300",
"雨",
"RAIN"
],
"301": [
"301.svg",
"701.svg",
"300",
"雨時々晴",
"RAIN, PARTLY CLOUDY"
],
"302": [
"302.svg",
"302.svg",
"300",
"雨時々止む",
"SHOWERS THROUGHOUT THE DAY"
],
"303": [
"303.svg",
"303.svg",
"400",
"雨時々雪",
"RAIN,FREQUENT SNOW FLURRIES"
],
"304": [
"300.svg",
"300.svg",
"300",
"雨か雪",
"RAINORSNOW"
],
"306": [
"300.svg",
"300.svg",
"300",
"大雨",
"HEAVYRAIN"
],
"308": [
"308.svg",
"308.svg",
"300",
"雨で暴風を伴う",
"RAINSTORM"
],
"309": [
"303.svg",
"303.svg",
"400",
"雨一時雪",
"RAIN,OCCASIONAL SNOW"
],
"311": [
"311.svg",
"711.svg",
"300",
"雨後晴",
"RAIN,CLEAR LATER"
],
"313": [
"313.svg",
"313.svg",
"300",
"雨後曇",
"RAIN,CLOUDY LATER"
],
"314": [
"314.svg",
"314.svg",
"400",
"雨後時々雪",
"RAIN, FREQUENT SNOW FLURRIES LATER"
],
"315": [
"314.svg",
"314.svg",
"400",
"雨後雪",
"RAIN,SNOW LATER"
],
"316": [
"311.svg",
"711.svg",
"300",
"雨か雪後晴",
"RAIN OR SNOW, CLEAR LATER"
],
"317": [
"313.svg",
"313.svg",
"300",
"雨か雪後曇",
"RAIN OR SNOW, CLOUDY LATER"
],
"320": [
"311.svg",
"711.svg",
"300",
"朝の内雨後晴",
"RAIN IN THE MORNING, CLEAR LATER"
],
"321": [
"313.svg",
"313.svg",
"300",
"朝の内雨後曇",
"RAIN IN THE MORNING, CLOUDY LATER"
],
"322": [
"303.svg",
"303.svg",
"400",
"雨朝晩一時雪",
"OCCASIONAL SNOW IN THE MORNING AND EVENING, RAIN DURING THE DAY"
],
"323": [
"311.svg",
"711.svg",
"300",
"雨昼頃から晴",
"RAIN, CLEAR IN THE AFTERNOON"
],
"324": [
"311.svg",
"711.svg",
"300",
"雨夕方から晴",
"RAIN, CLEAR IN THE EVENING"
],
"325": [
"311.svg",
"711.svg",
"300",
"雨夜は晴",
"RAIN, CLEAR IN THE NIGHT"
],
"326": [
"314.svg",
"314.svg",
"400",
"雨夕方から雪",
"RAIN, SNOW IN THE EVENING"
],
"327": [
"314.svg",
"314.svg",
"400",
"雨夜は雪",
"RAIN,SNOW IN THE NIGHT"
],
"328": [
"300.svg",
"300.svg",
"300",
"雨一時強く降る",
"RAIN, EXPECT OCCASIONAL HEAVY RAINFALL"
],
"329": [
"300.svg",
"300.svg",
"300",
"雨一時みぞれ",
"RAIN, OCCASIONAL SLEET"
],
"340": [
"400.svg",
"400.svg",
"400",
"雪か雨",
"SNOWORRAIN"
],
"350": [
"300.svg",
"300.svg",
"300",
"雨で雷を伴う",
"RAIN AND THUNDER"
],
"361": [
"411.svg",
"811.svg",
"400",
"雪か雨後晴",
"SNOW OR RAIN, CLEAR LATER"
],
"371": [
"413.svg",
"413.svg",
"400",
"雪か雨後曇",
"SNOW OR RAIN, CLOUDY LATER"
],
"400": [
"400.svg",
"400.svg",
"400",
"雪",
"SNOW"
],
"401": [
"401.svg",
"801.svg",
"400",
"雪時々晴",
"SNOW, FREQUENT CLEAR"
],
"402": [
"402.svg",
"402.svg",
"400",
"雪時々止む",
"SNOWTHROUGHOUT THE DAY"
],
"403": [
"403.svg",
"403.svg",
"400",
"雪時々雨",
"SNOW,FREQUENT SCCATERED SHOWERS"
],
"405": [
"400.svg",
"400.svg",
"400",
"大雪",
"HEAVYSNOW"
],
"406": [
"406.svg",
"406.svg",
"400",
"風雪強い",
"SNOWSTORM"
],
"407": [
"406.svg",
"406.svg",
"400",
"暴風雪",
"HEAVYSNOWSTORM"
],
"409": [
"403.svg",
"403.svg",
"400",
"雪一時雨",
"SNOW, OCCASIONAL SCCATERED SHOWERS"
],
"411": [
"411.svg",
"811.svg",
"400",
"雪後晴",
"SNOW,CLEAR LATER"
],
"413": [
"413.svg",
"413.svg",
"400",
"雪後曇",
"SNOW,CLOUDY LATER"
],
"414": [
"414.svg",
"414.svg",
"400",
"雪後雨",
"SNOW,RAIN LATER"
],
"420": [
"411.svg",
"811.svg",
"400",
"朝の内雪後晴",
"SNOW IN THE MORNING, CLEAR LATER"
],
"421": [
"413.svg",
"413.svg",
"400",
"朝の内雪後曇",
"SNOW IN THE MORNING, CLOUDY LATER"
],
"422": [
"414.svg",
"414.svg",
"400",
"雪昼頃から雨",
"SNOW, RAIN IN THE AFTERNOON"
],
"423": [
"414.svg",
"414.svg",
"400",
"雪夕方から雨",
"SNOW, RAIN IN THE EVENING"
],
"425": [
"400.svg",
"400.svg",
"400",
"雪一時強く降る",
"SNOW, EXPECT OCCASIONAL HEAVY SNOWFALL"
],
"426": [
"400.svg",
"400.svg",
"400",
"雪後みぞれ",
"SNOW, SLEET LATER"
],
"427": [
"400.svg",
"400.svg",
"400",
"雪一時みぞれ",
"SNOW, OCCASIONAL SLEET"
],
"450": [
"400.svg",
"400.svg",
"400",
"雪で雷を伴う",
"SNOW AND THUNDER"
]
}
コメント
コメントを投稿