User:Barnes38/GrenobleAlpesMétropole StationnementsVélos

From OpenStreetMap Wiki
Jump to navigation Jump to search

Stationnements vélos

Périmètre de recherche "Grenoble-Alpes Métropole"

amenity=bicycle_parking
bicycle_parking=*

Numéro Explications Requête Overpass
1 "Grenoble-Alpes Métropole"
try it yourself in overpass-turbo
[out:json][timeout:25];
// On cherche l'entité "Grenoble-Alpes Métropole"
area[name="Grenoble-Alpes Métropole"]->.searchArea;
// Dans ce résultat de recherche, on cherche toutes les communes 
//  ["boundary"="administrative"]["admin_level"="8"]
nwr["boundary"="administrative"]["admin_level"="8"](area.searchArea);
// print results
out geom;

Recherche des stationnements vélos par Overpass

Numéro Explications Requête Overpass Résultats nov 2023 Résultats déc 2024
1.1 Stationnements vélos dans GAM
try it yourself in overpass-turbo
[out:json][timeout:25];
area[name="Grenoble-Alpes Métropole"]->.searchArea;
nwr["amenity"="bicycle_parking"](area.searchArea);
out geom;
1.2 Stationnements vélos dans GAM : comptage total
try it yourself in overpass-turbo
[out:csv(name, ::"count")];
area[name="Grenoble-Alpes Métropole"]->.searchArea;
nwr["amenity"="bicycle_parking"](area.searchArea);
out count;

3910

4323

1.3 Stationnements vélos dans GAM : comptage par commune
try it yourself in overpass-turbo
// Format CSV de sortie avec les colonnes : nom, total, terminaison
[out:csv(nom, total, terminaison; false; ";")];
// On recherche l'entité "Grenoble-Alpes Métropole" pour effectuer une recherche 
area[name="Grenoble-Alpes Métropole"]->.searchArea;
// Dans cette aire de recherche, on cherche les relations caractérisées par 
//  [boundary=administrative][admin_level=8] : 
//  ceci correspond à toutes les communes de "Grenoble-Alpes Métropole"
relation[boundary=administrative][admin_level=8](area.searchArea);
// Et on transforme ces relations en aires de recherche
map_to_area;
// La boucle itère sur l'ensemble des relations sélectionnées dans l'étape précédente
// Donc pour chaque commune  
for (t["name"])
(
  // La commune courante 
  (._;)->.commune;
   ( 
    node(area.commune)[amenity=bicycle_parking];
    way(area.commune)[amenity=bicycle_parking];
    relation(area.commune)[amenity=bicycle_parking];
   );
  // Et puis on se sert de la possibilité de calculer et affecter des variables
  make count nom = commune.set(t["name"]), total = count(nodes) + count(ways) + count(relations), terminaison="<br>";
  // A chaque tour de boucle, on génère un output
  out;
);

Bresson;2;
Brié-et-Angonnes;4;
Champ-sur-Drac;6;
Champagnier;5;
Claix;26;
Corenc;6;
Domène;28;
Eybens;87;
Fontaine;266;
Fontanil-Cornillon;10;
Gières;91;
Grenoble;2356;
Herbeys;4;
Jarrie;3;
La Tronche;98;
Le Gua;2;
Le Pont-de-Claix;19;
Le Sappey-en-Chartreuse;11;
Meylan;108;
Miribel-Lanchâtre;0;
Mont-Saint-Martin;0;
Montchaboud;1;
Murianette;3;
Notre-Dame-de-Commiers;0;
Notre-Dame-de-Mésage;0;
Noyarey;15;
Poisat;8;
Proveysieux;0;
Quaix-en-Chartreuse;1;
Saint-Barthélemy-de-Séchilienne;2;
Saint-Georges-de-Commiers;2;
Saint-Martin-d'Hères;299;
Saint-Martin-le-Vinoux;22;
Saint-Paul-de-Varces;0;
Saint-Pierre-de-Mésage;0;
Saint-Égrève;101;
Sarcenas;1;
Sassenage;52;
Seyssinet-Pariset;91;
Seyssins;21;
Séchilienne;2;
Varces-Allières-et-Risset;13;
Vaulnaveys-le-Bas;0;
Vaulnaveys-le-Haut;0;
Venon;0;
Veurey-Voroize;5;
Vif;20;
Vizille;7;
Échirolles;112;

Bresson;4;
Brié-et-Angonnes;5;
Champ-sur-Drac;6;
Champagnier;5;
Claix;27;
Corenc;9;
Domène;28;
Eybens;94;
Fontaine;254;
Fontanil-Cornillon;17;
Gières;135;
Grenoble;2502;
Herbeys;4;
Jarrie;5;
La Tronche;110;
Le Gua;4;
Le Pont-de-Claix;28;
Le Sappey-en-Chartreuse;11;
Meylan;144;
Miribel-Lanchâtre;0;
Mont-Saint-Martin;1;
Montchaboud;1;
Murianette;3;
Notre-Dame-de-Commiers;0;
Notre-Dame-de-Mésage;0;
Noyarey;17;
Poisat;9;
Proveysieux;2;
Quaix-en-Chartreuse;2;
Saint-Barthélemy-de-Séchilienne;2;
Saint-Georges-de-Commiers;4;
Saint-Martin-d'Hères;385;
Saint-Martin-le-Vinoux;25;
Saint-Paul-de-Varces;1;
Saint-Pierre-de-Mésage;0;
Saint-Égrève;110;
Sarcenas;3;
Sassenage;53;
Seyssinet-Pariset;95;
Seyssins;26;
Séchilienne;2;
Varces-Allières-et-Risset;14;
Vaulnaveys-le-Bas;0;
Vaulnaveys-le-Haut;0;
Venon;1;
Veurey-Voroize;6;
Vif;22;
Vizille;7;
Échirolles;140;

1.4 Stationnements vélos dans GAM : comptage par commune rapporté à la population
try it yourself in overpass-turbo
// Format CSV de sortie avec les colonnes : nom, population, total, par_habitant
[out:csv(nom, population, total, par_habitant, terminaison; true; ";")];
// On recherche l'entité "Grenoble-Alpes Métropole" pour effectuer une recherche 
area[name="Grenoble-Alpes Métropole"]->.searchArea;
// Dans cette aire de recherche, on cherche les relations caractérisées par 
//  [boundary=administrative][admin_level=8] : 
// ceci correspond à toutes les communes de "Grenoble-Alpes Métropole"
relation[boundary=administrative][admin_level=8](area.searchArea);
// Et on transforme ces relations en aires de recherche
map_to_area;
// La boucle itère sur l'ensemble des relations sélectionnées dans l'étape précédente
// Donc pour chaque commune  
for (t["name"])
(
  // La commune courante 
  (._;)->.commune;
   ( 
    node(area.commune)[amenity=bicycle_parking];
    way(area.commune)[amenity=bicycle_parking];
    relation(area.commune)[amenity=bicycle_parking];
   );
  // Et puis on se sert de la possibilité de calculer et affecter des variables
  make count nom = commune.set(t["name"]), population=commune.set(t["population"]), total = count(nodes) + count(ways) + count(relations), par_habitant=((count(nodes) + count(ways) + count(relations))/commune.set(t["population"])), terminaison="<br>";
   // A chaque tour de boucle, on génère un output
   out;
);

nom; population; total; par_habitant; terminaison Bresson; 667; 4; 0.0059970014992504;
Brié-et-Angonnes; 2521; 5; 0.0019833399444665;
Champ-sur-Drac; 3339; 6; 0.0017969451931716;
Champagnier; 1406; 5; 0.0035561877667141;
Claix; 7859; 27; 0.0034355515968953;
Corenc; 4139; 9; 0.0021744382701136;
Domène; 6720; 28; 0.0041666666666667;
Eybens; 9974; 94; 0.0094245037096451;
Fontaine; 22891; 254; 0.011096063955266;
Fontanil-Cornillon; 3405; 17; 0.004992657856094;
Gières; 7161; 135; 0.018852115626309;
Grenoble; 157477; 2502; 0.015888034443125;
Herbeys; 1378; 4; 0.0029027576197388;
Jarrie; 3903; 5; 0.0012810658467845;
La Tronche; 6470; 110; 0.017001545595054;
Le Gua; 1838; 4; 0.0021762785636561;
Le Pont-de-Claix; 10805; 28; 0.0025913928736696;
Le Sappey-en-Chartreuse; 1137; 11; 0.009674582233949;
Meylan; 18573; 144; 0.0077531901146826;
Miribel-Lanchâtre; 450; 0; 0;
Mont-Saint-Martin; 88; 1; 0.011363636363636;
Montchaboud; 342; 1; 0.0029239766081871;
Murianette; 867; 3; 0.0034602076124567;
Notre-Dame-de-Commiers; 535; 0; 0;
Notre-Dame-de-Mésage; 1106; 0; 0;
Noyarey; 2277; 17; 0.0074659639877031;
Poisat; 2123; 9; 0.0042392840320301;
Proveysieux; 517; 2; 0.0038684719535783;
Quaix-en-Chartreuse; 908; 2; 0.0022026431718062;
Saint-Barthélemy-de-Séchilienne; 426; 2; 0.0046948356807512;
Saint-Georges-de-Commiers; 2646; 4; 0.0015117157974301;
Saint-Martin-d'Hères; 38454; 385; 0.01001196234462;
Saint-Martin-le-Vinoux; 5825; 25; 0.0042918454935622;
Saint-Paul-de-Varces; 2224; 1; 0.00044964028776978;
Saint-Pierre-de-Mésage; 791; 0; 0;
Saint-Égrève; 16995; 110; 0.0064724919093851;
Sarcenas; 242; 3; 0.012396694214876;
Sassenage; 11660; 53; 0.0045454545454545;
Seyssinet-Pariset; 11753; 95; 0.0080830426274143;
Seyssins; 7997; 26; 0.0032512192072027;
Séchilienne; 1024; 2; 0.001953125;
Varces-Allières-et-Risset; 8287; 14; 0.0016893930252202;
Vaulnaveys-le-Bas; 1360; 0; 0;
Vaulnaveys-le-Haut; 4000; 0; 0;
Venon; 801; 1; 0.0012484394506866;
Veurey-Voroize; 1401; 6; 0.0042826552462527;
Vif; 8584; 22; 0.0025629077353215;
Vizille; 7293; 7; 0.00095982448923625;
Échirolles; 36849; 140; 0.0037992889902033;


Recherche stylisée

Numéro Explications Requête Overpass
3.1 Fontaine&Sassenage
try it yourself in overpass-turbo
[out:json][timeout:25];
area[name="Grenoble-Alpes Métropole"]->.searchArea;
(
nwr["ref:INSEE"=38169](area.searchArea); // Fontaine
nwr["ref:INSEE"=38474](area.searchArea); // Sassenage
);

out geom;
3.2 stionnemens vélos dans Fontaine&Sassenage couleur suivant le type et capacité
try it yourself in overpass-turbo
[out:json][timeout:25];
(
area["ref:INSEE"=38169]; // Fontaine
area["ref:INSEE"=38474]; // Sassenage
)->.NODrac;

// gather results
(
  relation["ref:INSEE"=38169];
  //relation["name"="Fontaine"];
  relation["ref:INSEE"=38474];
  //relation["name"="Sassenage"];
nwr["bicycle_parking"="stands"](area.NODrac);
nwr["bicycle_parking"="wide_stands"](area.NODrac);
nwr["bicycle_parking"="bollard"](area.NODrac);
nwr["bicycle_parking"="handlebar_holder"](area.NODrac);
nwr["bicycle_parking"="wave"](area.NODrac);
nwr["bicycle_parking"="streetpod"](area.NODrac);
  
nwr["bicycle_parking"="rack"](area.NODrac);
nwr["bicycle_parking"="ground_slots"](area.NODrac);
nwr["bicycle_parking"="anchors"](area.NODrac);
nwr["bicycle_parking"="wall_loops"](area.NODrac);

nwr["bicycle_parking"="shed"](area.NODrac);
nwr["bicycle_parking"="building"](area.NODrac);
nwr["bicycle_parking"="lockers"](area.NODrac);
nwr["bicycle_parking"="tree"](area.NODrac);
nwr["bicycle_parking"="two-tier"](area.NODrac);

nwr["bicycle_parking"="informal"](area.NODrac);
nwr["bicycle_parking"="floor"](area.NODrac);
nwr["bicycle_parking"="crossbar"](area.NODrac);
nwr["bicycle_parking"="rope"](area.NODrac);
nwr["bicycle_parking"="lean_and_stick"](area.NODrac);


  {{style: 
  node[bicycle_parking=stands]
  { color:blue; fill-color:blue; } 
  node[biycle_parking=wide_stands]
  { color:blue; fill-color:blue; } 
  node[bicycle_parking=bollard]
  { color:blue; fill-color:blue; } 
  node[bicycle_parking=handlebar_holder]
  { color:blue; fill-color:blue; } 
  node[bicycle_parking=wave]
  { color:blue; fill-color:blue; } 
  node[bicycle_parking=streetpod]
  { color:blue; fill-color:blue; } 

  way[bicycle_parking=stands]
  { color:blue; fill-color:blue; } 
  way[biycle_parking=wide_stands]
  { color:blue; fill-color:blue; } 
  way[bicycle_parking=bollard]
  { color:blue; fill-color:blue; } 
  way[bicycle_parking=handlebar_holder]
  { color:blue; fill-color:blue; } 
  way[bicycle_parking=wave]
  { color:blue; fill-color:blue; } 
  way[bicycle_parking=streetpod]
  { color:blue; fill-color:blue; } 


  node[bicycle_parking=rack][covered=yes]
  { color:orange; fill-color:orange; } 
  node[bicycle_parking=ground_slots][covered=yes]
  { color:orange; fill-color:orange; } 
  node[bicycle_parking=anchors][covered=yes]
  { color:orange; fill-color:orange; } 
  node[bicycle_parking=wall_loops][covered=yes]
  { color:orange; fill-color:orange; } 

  way[bicycle_parking=rack][covered=yes]
  { color:orange; fill-color:orange; } 
  way[bicycle_parking=ground_slots][covered=yes]
  { color:orange; fill-color:orange; } 
  way[bicycle_parking=anchors][covered=yes]
  { color:orange; fill-color:orange; } 
  way[bicycle_parking=wall_loops][covered=yes]
  { color:orange; fill-color:orange; } 

  node[bicycle_parking=rack][covered=no]
  { color:red; fill-color:red; } 
  node[bicycle_parking=ground_slots][covered=no]
  { color:red; fill-color:red; } 
  node[bicycle_parking=anchors][covered=no]
  { color:red; fill-color:red; } 
  node[bicycle_parking=wall_loops][covered=no]
  { color:red; fill-color:red; } 

  way[bicycle_parking=rack][covered=no]
  { color:red; fill-color:red; } 
  way[bicycle_parking=ground_slots][covered=no]
  { color:red; fill-color:red; } 
  way[bicycle_parking=anchors][covered=no]
  { color:red; fill-color:red; } 
  way[bicycle_parking=wall_loops][covered=no]
  { color:red; fill-color:red; } 

  node[bicycle_parking=shed]
  { color:green; fill-color:green; }
  node[bicycle_parking=building]
  { color:green; fill-color:green; }
  node[bicycle_parking=lockers]
  { color:green; fill-color:green; } 
  node[bicycle_parking=tree]
  { color:green; fill-color:green; } 
  node[bicycle_parking=two-tier]
  { color:green; fill-color:green; }

  way[bicycle_parking=shed]
  { color:green; fill-color:green; }
  way[bicycle_parking=building]
  { color:green; fill-color:green; }
  way[bicycle_parking=lockers]
  { color:green; fill-color:green; } 
  way[bicycle_parking=tree]
  { color:green; fill-color:green; } 
  way[bicycle_parking=two-tier]
  { color:green; fill-color:green; }


  node[bicycle_parking=informal]
  { color:grey; fill-color:grey;}
  way[bicycle_parking=informal]
  { color:grey; fill-color:grey;}

  node[bicycle_parking=floor]
  { color:black; fill-color:black;}
  node[bicycle_parking=crossbar]
  { color:black; fill-color:black;}
  node[bicycle_parking=rope]
  { color:black; fill-color:black;}
  node[bicycle_parking=lean_and_stick]
  { color:black; fill-color:black;}

  waye[bicycle_parking=floor]
  { color:black; fill-color:black;}
  way[bicycle_parking=crossbar]
  { color:black; fill-color:black;}
  way[bicycle_parking=rope]
  { color:black; fill-color:black;}
  way[bicycle_parking=lean_and_stick]
  { color:black; fill-color:black;}

   node, way, relation {
    text: capacity;
   }
  }}

);
out body;
>;
out skel qt;

Stationnement vélos à Comboire