Vous pouvez choisir METRIC ou IMPERIAL pour tous les points de terminaison de l'API Weather.
Pour demander un système d'unités, définissez units_system sur METRIC ou IMPERIAL. Si aucun units_system n'est spécifié, la valeur par défaut est METRIC.
https://weather.googleapis.com/v1/currentConditions:lookup?key=YOUR_API_KEY&location.latitude=LATITUDE&location.longitude=LONGITUDE&units_system=IMPERIAL
Les valeurs de l'API Weather sont passées des unités métriques aux unités impériales
Le tableau suivant répertorie les valeurs de réponse de l'API Weather qui peuvent être converties entre les systèmes d'unités.
| Conversion d'unités (métrique vers impérial) | Valeurs de l'API Weather |
|---|---|
| Celsius (°C) en Fahrenheit (°F) | Température, température ressentie, point de rosée, indice de chaleur, température ressentie par le vent, température humide |
| Millimètres (mm) en pouces (po) | Précipitations, QPF, Épaisseur de glace |
| Kilomètres par heure (km/h) en miles par heure (mph) | Vitesse du vent, rafales |
| Kilomètres (km) en miles (mi) | Visibilité |
Exemple de réponse pour currentConditions
Le tableau suivant répertorie les valeurs incluses dans le corps de la réponse d'une requête currentConditions. Les valeurs en bleu gras sont passées d'unités METRIC à IMPERIAL:
| Fonctionnalité de l'API Weather | MÉTRIQUE (par défaut) | IMPÉRIAL |
|---|---|---|
| Heure actuelle | 2025-03-06T11:08:49.126979608Z | 3/6/2025, 6:08:49 AM |
| Fuseau horaire | America/New_York | America/New_York |
| Est jour | FALSE | FALSE |
| Description de la météo | Assez nuageux | Assez nuageux |
| Température | 11,5 °C | 11,5 °C |
| Ressenti | 9,9 °C | 49,7 °F |
| Point de rosée | 8,7 °C | 47,6 °C |
| Indice de chaleur | 11,5 °C | 11,5 °C |
| Refroidissement éolien | 9,9 °C | 49,7 °F |
| Humidité relative | 83 % | 83 % |
| Indice UV | 0 | 0 |
| Probabilité de précipitations | 9 % | 9 % |
| Précipitations | 0 mm | 0 dans |
| Probabilité d'orage | 0 | 0 |
| Pression atmosphérique | 991,47 Mo | 991,47 Mo |
| Direction du vent | 275 ° | 275 ° |
| Direction du vent (cardinal) | OUEST | OUEST |
| Vitesse du vent | 14 km/h | 9 mi/h |
| Rafale de vent | 27 km/h | 27 km/h |
| Visibilité | 10 km | 6 mi |
| CloudCover | 65 % | 65 % |
| Changement de température | 1,4 °C | 2,6 °F |
| Température maximale | 13,2 °C | 13,2 °C |
| Température minimale | 10,1 °C | 10,1 °C |
| QPF | 27,5564 mm | 1,0849 in |
Systèmes d'unités dans le monde
Systèmes d'unités par pays
La plupart des pays situés en dehors des États-Unis utilisent le système METRIC, tandis que les États-Unis utilisent le système IMPERIAL. Certains pays, comme le Canada et le Royaume-Uni, utilisent un système hybride. Pour obtenir une carte et une liste complète des pays qui utilisent le système métrique, consultez la page Métrisation.

Convertir les unités de la réponse de l'API Weather
Convertir des unités manuellement
Vous pouvez convertir manuellement des unités à l'aide du script suivant:
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
Convertir des unités à l'aide d'une bibliothèque
Vous pouvez également utiliser une bibliothèque telle que convert-units pour convertir des unités:
// 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