mirror of
https://forge.chapril.org/tykayn/libre-charge-map
synced 2025-06-20 01:34:43 +02:00
add stats page
This commit is contained in:
parent
fca7661ad8
commit
8c6dbae3e6
5 changed files with 108 additions and 8 deletions
BIN
img/edfgroupe_comprendre_consommation_repartition_1066x595.png
Normal file
BIN
img/edfgroupe_comprendre_consommation_repartition_1066x595.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 43 KiB |
BIN
img/repartition_puissance_bornes.png
Normal file
BIN
img/repartition_puissance_bornes.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 330 KiB |
|
@ -1,34 +1,71 @@
|
|||
|
||||
// source https://www.edf.fr/groupe-edf/comprendre/electricite-au-quotidien/usages/consommation-electricite-en-chiffres
|
||||
const france_twh = 460
|
||||
// source baromètre avere
|
||||
const irve_monthly_consumption_gwh = 69
|
||||
|
||||
|
||||
// info vue je ne sais plus où pour l'avere
|
||||
const stations_avere = 40000
|
||||
|
||||
|
||||
fetch('./js/stats.json')
|
||||
.then(response => response.json())
|
||||
.then(stats => {
|
||||
|
||||
annual_consumption_gwh = compute_annual_consumption_gwh(irve_monthly_consumption_gwh, france_twh)
|
||||
|
||||
// import * as stats from './stats.json' assert { type: 'json' };
|
||||
|
||||
console.log(stats);
|
||||
|
||||
document.getElementById('countStationsOSM').textContent = formatSpaceSeparator(stats.countStationsOSM);
|
||||
document.getElementById('countStationsOpenData').textContent = formatSpaceSeparator(stats.countStationsOpenData);
|
||||
document.getElementById('countStationsAVERE').textContent = formatSpaceSeparator(40000);
|
||||
document.getElementById('countStationsOpenData').textContent = formatSpaceSeparator(stats.count_unique_id_station_itinerance);
|
||||
document.getElementById('countStationsAVERE').textContent = formatSpaceSeparator(stations_avere);
|
||||
document.getElementById('countPointsDeChargeAVERE').textContent = formatSpaceSeparator(stats.countStationsAVERE);
|
||||
document.getElementById('countPointsDeChargeOSM').textContent = formatSpaceSeparator(stats.countPointsDeChargeOSM);
|
||||
document.getElementById('countPointsDeChargeOpenData').textContent = formatSpaceSeparator(stats.countPointsDeChargeOpenData);
|
||||
document.getElementById('dateGeneration').textContent = stats.dateGeneration;
|
||||
|
||||
france_twh = 500
|
||||
irve_monthly_consumption_gwh = 69
|
||||
|
||||
annual_consumption_gwh = compute_annual_consumption_gwh(irve_monthly_consumption_gwh, france_twh)
|
||||
proportion_annual_consumption_gwh = compute_proportion_annual_consumption_gwh(annual_consumption_gwh, stats.countStationsAVERE)
|
||||
|
||||
stats.proportion_annual_consumption_gwh = proportion_annual_consumption_gwh;
|
||||
|
||||
console.log('estimation de la consommation annuelle des stations de recharge en France', annual_consumption_gwh, 'GWh sur ', france_twh * 1000, 'GWh')
|
||||
console.log('proportion de la consommation annuelle par borne', proportion_annual_consumption_gwh)
|
||||
|
||||
// document.addEventListener('DOMContentLoaded', () => {
|
||||
makeComparaisonAnalyse(stats);
|
||||
// });
|
||||
|
||||
|
||||
})
|
||||
.catch(error => {
|
||||
console.error('Erreur lors du chargement du fichier stats.json:', error);
|
||||
});
|
||||
|
||||
|
||||
function makeComparaisonAnalyse(stats) {
|
||||
|
||||
annual_consumption_gwh = compute_annual_consumption_gwh(irve_monthly_consumption_gwh, france_twh)
|
||||
|
||||
let analyse = document.getElementById('analyse_comparaison');
|
||||
if (analyse) {
|
||||
|
||||
analyse.textContent = 'La consommation annuelle des stations de recharge en France est de ' + formatSpaceSeparator(annual_consumption_gwh) + 'GWh sur ' + formatSpaceSeparator(france_twh * 1000) + 'GWh. Soit ' + formatSpaceSeparator(stats.proportion_annual_consumption_gwh) + '% de la consommation annuelle en électricité de la France.';
|
||||
|
||||
let manqueOSM = stations_avere - stats.countStationsOSM;
|
||||
let pourcentageManquant = ((manqueOSM / stations_avere) * 100).toFixed(1);
|
||||
|
||||
// let manquePointsDeChargeOSM = stats.countStationsOpenData - stats.countPointsDeChargeOSM;
|
||||
// let pourcentagePointsDeChargeManquant = ((manquePointsDeChargeOSM / stats.countStationsOpenData) * 100).toFixed(1);
|
||||
// analyse.innerHTML += `<br/> Il manque ${formatSpaceSeparator(manquePointsDeChargeOSM)} points de charge dans OSM par rapport aux données de l'OpenData, soit ${pourcentagePointsDeChargeManquant}% des points de charge.`;
|
||||
analyse.innerHTML += `<br/> Il manque ${formatSpaceSeparator(manqueOSM)} stations dans OSM par rapport aux données de l'AVERE, soit ${pourcentageManquant}% des stations et de points de charge.`;
|
||||
}
|
||||
}
|
||||
function compute_annual_consumption_gwh(irve_monthly_consumption_gwh, france_twh) {
|
||||
return irve_monthly_consumption_gwh * 12 * france_twh;
|
||||
return irve_monthly_consumption_gwh * 12;
|
||||
}
|
||||
|
||||
function compute_proportion_annual_consumption_gwh(annual_consumption_gwh, countStationsAVERE) {
|
||||
|
@ -38,4 +75,4 @@ function compute_proportion_annual_consumption_gwh(annual_consumption_gwh, count
|
|||
|
||||
function formatSpaceSeparator(number) {
|
||||
return number.toString().replace(/\B(?=(\d{3})+(?!\d))/g, " ");
|
||||
}
|
||||
}
|
||||
|
|
57
stats.html
57
stats.html
|
@ -24,6 +24,10 @@
|
|||
<img class="icon-img" src="img/prise-de-courant.png" alt="prise"> Statistiques de
|
||||
<a href="/">Libre Charge Map</a> 📊
|
||||
</h1>
|
||||
<p>
|
||||
Ces nombres sont des estimations concernant les données OSM, ce qui est compté comme station ou point de charge est
|
||||
en partie non distingué par les personnes qui contribuent aux données.
|
||||
</p>
|
||||
<p>
|
||||
Mise à jour le <span id="dateGeneration"></span>
|
||||
</p>
|
||||
|
@ -31,6 +35,7 @@
|
|||
<div>
|
||||
<div class="stats-item">
|
||||
<h2>Nombre de bornes de recharges en France</h2>
|
||||
<p id="analyse_comparaison"></p>
|
||||
<h3>Dans OSM:</h3>
|
||||
<div class="pair">
|
||||
|
||||
|
@ -44,6 +49,7 @@
|
|||
|
||||
<p id="countPointsDeChargeOSM" class="text-right counter"></p>
|
||||
</div>
|
||||
<hr>
|
||||
<h3>Dans L'OpenData de DataGouv:</h3>
|
||||
<div class="pair">
|
||||
|
||||
|
@ -57,8 +63,10 @@
|
|||
|
||||
<p id="countPointsDeChargeOpenData" class="text-right counter"></p>
|
||||
</div>
|
||||
<hr>
|
||||
<h3>Sur le site de l'AVERE:</h3>
|
||||
<p>Nombre de stations</p>
|
||||
<p class="description">Info introuvable sur le site de l'AVERE</p>
|
||||
<p id="countStationsAVERE" class="text-right counter"></p>
|
||||
<p>Nombre de points de charge</p>
|
||||
<p id="countPointsDeChargeAVERE" class="text-right counter"></p>
|
||||
|
@ -66,18 +74,65 @@
|
|||
</div>
|
||||
<div class="stats-item">
|
||||
<h2>Répartition par type de borne</h2>
|
||||
<img src="img/avere_repartition_puissance_nominale.png"
|
||||
<p class="description">
|
||||
Environ un cinquième des points de charge est de la recharge réellement rapide, proposant 50kW ou plus. Ce qui
|
||||
permet de faire une recharge de 26kWh en moins de 30 minutes. Les bornes installées depuis 2024 sont
|
||||
principalement plus rapides et permettent de faire des pauses entre 4 et 15 minutes pour faire 2h d'autoroute,
|
||||
jusqu'à la prochaine pause.
|
||||
</p>
|
||||
<p>Selon les données OSM</p>
|
||||
<img style="max-width: 95vw;" src="/img/repartition_puissance_bornes.png"
|
||||
alt="répartition des bornes de recharge par puissance nominale">
|
||||
<p>Selon le baromètre de l'AVERE</p>
|
||||
<img style="max-width: 95vw;" src="img/avere_repartition_puissance_nominale.png"
|
||||
alt="répartition des bornes de recharge par puissance nominale">
|
||||
|
||||
<p id="repartitionTypeBorne"></p>
|
||||
</div>
|
||||
<div class="stats-item"></div>
|
||||
<h2>Issues Osmose</h2>
|
||||
<p>Nombre de stations à intégrer</p>
|
||||
<p id="issuesOsmose">
|
||||
<img src="https://osmose.openstreetmap.fr/en/issues/graph.png?item=8410
|
||||
" alt="graphique issues charging station">
|
||||
</p>
|
||||
<p class="description">Osmose détecte près de 27 000 stations manquantes dans OSM.</p>
|
||||
</div>
|
||||
|
||||
<h3>Électricité en France</h3>
|
||||
<img style="width: 95vw;" src="/img/edfgroupe_comprendre_consommation_repartition_1066x595.png"
|
||||
alt="électricité en France">
|
||||
</div>
|
||||
<h2>
|
||||
Sources
|
||||
</h2>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
Osmose : <a href="https://osmose.openstreetmap.fr/en/issues/graph.png?item=8410">
|
||||
https://osmose.openstreetmap.fr/en/issues/graph.png?item=8410
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
Avere : <a href="https://barometre.avere.fr/"> https://barometre.avere.fr/ </a>
|
||||
</li>
|
||||
<li>
|
||||
EDF : <a
|
||||
href="https://www.edf.fr/groupe-edf/comprendre/electricite-au-quotidien/usages/consommation-electricite-en-chiffres">
|
||||
https://www.edf.fr/groupe-edf/comprendre/electricite-au-quotidien/usages/consommation-electricite-en-chiffres
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
Transports: <a href="https://www.statistiques.developpement-durable.gouv.fr/bilan-annuel-des-transports-en-2023">
|
||||
https://www.statistiques.developpement-durable.gouv.fr/bilan-annuel-des-transports-en-2023
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
Libre Charge Map : <a href="https://libre-charge-map.cipherbliss.com/">
|
||||
https://libre-charge-map.cipherbliss.com/
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</body>
|
||||
|
||||
</html>
|
|
@ -20,4 +20,12 @@
|
|||
display: flex;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
img {
|
||||
width: 95vw;
|
||||
}
|
||||
|
||||
.description {
|
||||
color: #555;
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue