Weather API birim sistemleri

Tüm Weather API uç noktaları için METRIC veya IMPERIAL arasından seçim yapabilirsiniz.

Bir birim sistemi istemek için units_system öğesini METRIC veya IMPERIAL olarak ayarlayın. Belirtilmeyen units_system değerleri varsayılan olarak METRIC olur.

https://weather.googleapis.com/v1/currentConditions:lookup?key=YOUR_API_KEY&location.latitude=LATITUDE&location.longitude=LONGITUDE&units_system=IMPERIAL

Weather API değerleri METRIC birimlerinden IMPERIAL birimlerine değiştirildi

Aşağıdaki tabloda, birim sistemleri arasında dönüştürülebilen Hava Durumu API'si yanıt değerleri listelenmektedir.

Birim Dönüşümü (Metrikten İngiliz Birim Sistemine) Weather API Değerleri
Santigrat (°C) - Fahrenhayt (°F) Sıcaklık, Hissedilen Sıcaklık, Çiy Noktası, Isı Endeksi, Hissedilen Soğuk, Yaş Termometre
Milimetre (mm) - İnç (in) Yağış, QPF, Buz Kalınlığı
Kilometre/saat (km/h) - Mil/saat (mph) Rüzgar Hızı, Rüzgar Hamlesi
Kilometre (km) - Mil (mi) Görünürlük

currentConditions yanıtı örneği

Aşağıdaki tabloda, bir currentConditions isteğinin yanıt gövdesinde yer alan değerler listelenmektedir. Kalın mavi renkteki değerler METRIC biriminden IMPERIAL birimine değiştirildi:

Hava durumu API'si özelliği METRİK (varsayılan) IMPERIAL
Geçerli Saat 2025-03-06T11:08:49.126979608Z 3/6/2025, 6:08:49 AM
Saat Dilimi America/New_York America/New_York
Gündüz mü? YANLIŞ YANLIŞ
Hava Durumu Açıklaması Çok bulutlu Çok bulutlu
Sıcaklık 11,5 °C 11,5 °C
Hissedilen 9,9 °C 9,8 °C
Çiy noktası 8,7 °C 8,7 °C
Isı indeksi 11,5 °C 11,5 °C
Ayaz 9,9 °C 9,8 °C
Bağıl nem %83 %83
UV Endeksi 0 0
Yağış olasılığı %9 %9
Yağış miktarı 0 mm 0 in
Gök Gürültülü Fırtına Olasılığı 0 0
Hava Basıncı 991,47 MB 991,47 MB
Rüzgar Yönü 275 ° 275 °
Rüzgar Yönü (Ana) BATI BATI
Rüzgar Hızı 14 km/sa. 14 km/sa.
Rüzgar Hamlesi 27 km/sa. 27 km/sa
Görünürlük 10 km 6 mil
Cloud Cover %65 %65
Sıcaklık Değişimi 1,4 °C 2,6 °F
Maksimum Sıcaklık 13,2 °C 13,2 °C
Minimum Sıcaklık 10,1 °C 10 °C
QPF 27,5564 mm 1,0849 inç

Dünyadaki birim sistemleri

Ülkeye göre birim sistemleri

ABD dışındaki çoğu ülkede METRIC sistemi kullanılırken ABD'de IMPERIAL sistemi kullanılır. Birleşik Krallık ve Kanada gibi bazı ülkelerde ise her iki sistemin bir karışımı kullanılır. Metrik sistemi kullanan ülkelerin haritası ve tam listesi için Metrikleşme konusuna bakın.

Dünya birimleri
sistemi

Hava durumu API'si yanıtındaki birimleri dönüştürme

Birimleri manuel olarak dönüştürme

Aşağıdaki komut dosyasını kullanarak birimleri manuel olarak dönüştürebilirsiniz:

function convert(conversionType, value) {
  if (value === null || value === undefined || typeof value !== 'number') {
    return "Invalid input"; // Handle null, undefined, or non-numeric input
  }

  switch (conversionType) {
    case 'C_to_F': // Celsius to Fahrenheit
      let convertedCtoF = (value * 9 / 5) + 32;
      return convertedCtoF.toFixed(2) + " °F";
    case 'mm_to_in': // Millimeters to Inches
      let convertedMmToIn = value * 0.0393701;
      return convertedMmToIn.toFixed(2) + " in";
    case 'km_to_mi': // Kilometers to Miles
      let convertedKmToMi = value * 0.621371;
      return convertedKmToMi.toFixed(2) + " mi";
    case 'km/h_to_mph': // Kilometers per hour to Miles per hour
      let convertedKmHToMph = value * 0.621371;
      return convertedKmHToMph.toFixed(2) + " mph";
    case 'millibar_to_psi': // Millibar to PSI
      let convertedMillibarToPsi = value * 0.0145038;
      return convertedMillibarToPsi.toFixed(2) + " psi";
    default:
      return "Invalid conversion type";
  }
}

console.log(convert('C_to_F', 10)); // Output: 50.00 °F
console.log(convert('mm_to_in', 25)); // Output: 0.98 in
console.log(convert('invalid_type', 5)); // Output: Invalid conversion type

Kitaplık kullanarak birimleri dönüştürme

Birimleri dönüştürmek için convert-units gibi bir kitaplık da kullanabilirsiniz:


// module

import convert from 'convert-units';

// or script inclusion
//   <script src="https://unpkg.com/convert@5.8.0/dist/index.js" ></script> 
// let convert = convert.convert

function convertWithLibrary(conversionType, value) {
  if (value === null || value === undefined || typeof value !== 'number') {
    return "Invalid input";
  }

  try {
    switch (conversionType) {
      case 'C_to_F':
        let convertedCtoF = convert(value, 'C').to('F');
        return convertedCtoF.toFixed(2) + " °F";
      case 'mm_to_in':
        let convertedMmToIn = convert(value, 'mm').to('in');
        return convertedMmToIn.toFixed(2) + " in";
      case 'km_to_mi':
        let convertedKmToMi = convert(value, 'km').to('mi');
        return convertedKmToMi.toFixed(2) + " mi";
      case 'km/h_to_mph':
        // km/h is not directly supported, so we convert km to mi
        // then assume it's per hour
        let convertedKmToMiValue = convert(value, 'km').to('mi');
        return convertedKmToMiValue.toFixed(2) + " mph";
      case 'millibar_to_psi':
        // millibar is not directly supported, so convert millibar to bar, then bar to psi
        let barValue = value / 1000;
        let convertedMillibarToPsi = convert(barValue, 'bar').to('psi');
        return convertedMillibarToPsi.toFixed(2) + " psi";
      default:
        return "Invalid conversion type";
    }
  } catch (error) {
    console.error("Conversion error:", error);
    return "Conversion failed";
  }
}

console.log(convertWithLibrary('C_to_F', 10)); // Output: 50.00 °F
console.log(convertWithLibrary('mm_to_in', 25)); // Output: 0.98 in
console.log(convertWithLibrary('invalid_type', 5)); // Output: Invalid conversion type