Aller au contenu

Discussion modèle:Aéroport-Statistiques/Bac à sable

Le contenu de la page n’est pas pris en charge dans d’autres langues.
Une page de Wikipédia, l'encyclopédie libre.
Autres discussions [liste]
  • Admissibilité
  • Neutralité
  • Droit d'auteur
  • Article de qualité
  • Bon article
  • Lumière sur
  • À faire
  • Archives
  • Commons

Hello Tractopelle-jaune (d · c · b) saurais tu m'aider à encapsuler le paramètre iata dans ce bac à sable (dont la valeur pour exemple serait ICN) ? Ou m'indiquer qq'n qui saurait m'aider ? C'est censé paramétrer le code SPARQL pour consultation automatique des statistiques de l'aéroport ICN (et d'autres avec le code IATA idoine). Merci pour tes lumières --Bouzinac (discuter) 21 juillet 2019 à 18:43 (CEST)[répondre]

Salut Notification Bouzinac,
✔️ J'ai corrigé différents problèmes syntaxiques :
  1. J'ai remplacé l'appel {{tag|graph| par {{#tag:graph| ;
  2. J'ai remplacé {{{urlencode: par {{urlencode: (une accolade de trop, c'est une fonction magique, pas une variable) ;
  3. J'ai corrigé la ligne "text": {"template": "{ { datum[\"data\"] | truncate:25 } }"}, par "text": {"template": "\u007b{ datum[\"data\"] {{!}} truncate:25 }\u007d"}, après consultation de mw:Extension:Graph/Guide#Using_double_curly_braces_in_the_graphs ;
  4. J'ai corrigé la syntaxe des attributs accompagnent la balise <graph> générée, et les ais déplacés à la fin ;
J'ai par contre une question sur le paramètre iata, pourquoi est-ce que c'est au paramètre à contenir les guillemets ", cela ne devrait pas plutôt être géré par le modèle lui-même, mais c'est peut-être voulu ainsi ?
Si jamais, je peux aussi te conseiller deux outils pour déboguer les graphs : Spécial:GraphSandbox (nécessite d'enlever le <graph> ou le {{#tag:graph|, pour ne laisser que le JSON) et aussi Spécial:ExpansionDesModèles, qui permet de voir le wikicode généré après l'expansion de tous les modèles.
Bonne soirée.
--Tractopelle-jaune (discuter) 21 juillet 2019 à 20:16 (CEST)[répondre]
Super, ça a l'air parfaitement exploitable, merci Tractopelle-jaune (d · c · b) !
En fait, l'objectif final est d'avoir cette syntaxe :
{{Aéroport-Statistiques
|iata=[un ou plusieurs codes iata, alors effectivement, le plus simple est pas d'avoir les ". Mais la requête sparql exige cette syntaxe (exemple) "ICN" "NRT" "HND"]
|icao[un ou plusieurs codes OACI, l'IATA étant préférable au ICAO, même contraintes de guillemets]
|faa=un ou plusieurs codes FAA, sur le même principe que OACI
|légende= (vide par défaut, et si "-", présence d'une légende)
|début=(1945 par défaut ou si présence du paramètre, année de filtrage 
|width=800px ou valeur saisie
|titre=titre du graphique (valeur par défaut "Trafic annuel")
}}

Je vais essayer d'inclure moi même ces paramétrages... et te ferai signe pour te demander de tester, si tu le veux bien

Re Tractopelle-jaune (d · c · b), je pense avoir corrigé les points suivants :
  • paramètre iata ou icao ou FAA
  • année de début
  • titre

En revanche, je suis faux dans le cas de :

  • multiples codes (j'ai l'impression que la requête est OK mais pas l'affichage des barres)
  • demande d'affichage de légende (d'autant plus nécessaire que parfois, il faut comparer plusieurs aéroports)
  • affichage de l'infobulle qui donne la valeur de telle année surlignée à la souris [j'ai l'impression que l'extension Graph: est en panne sur cette fonctionnalité]
  • affichage des valeurs au sommet de chaque barre

Si tu as une idée pour simplifier l'usage des ", je suis preneur. Merci encore pour tes corrections et améliorations ! --Bouzinac (discuter) 21 juillet 2019 à 21:45 (CEST)[répondre]

Remarques mars 2021[modifier le code]

Salut @Bouzinac,

Je découvre ce modèle (plutôt bien fait globalement), je viens de faire une première analyse un peu rapide et je me permet de faire quelques remarques en vrac (pas forcément toute aussi utile ni importante, voir sans doute des choses que j'ai mal comprises) :

  • ce modèle devrait faire une vérification que les paramètres sont corrects (actuellement, ce travail est fait indirectement par la requête SPARQL et donc aucune erreur explicite, juste un graphe blanc), au minimum vérifier la longueur
    • d'ailleurs, on pourrait aussi passer le code en capitale par précaution (et retirer les caractères inutiles, cf. br:Special:Diff/1898840)
  • le modèle ne gère pas le cas où plusieurs types d'identifiants sont entrés
    • quid des cas où plusieurs codes correspondent au même aéroport, doit-on donner une priorité à certains codes (par exemple Qid > IATA > OACI > FAA ?)
  • que faire du cas où le code a été donné à plusieurs aéroports successifs ? (cf. le test ci-dessous avec PAS, qui semble bon mais est-ce vraiment correct et tout les cas fonctionnent-ils aussi bien ? des cas de superposition, par exemple où un aéroport dont le code IATA n'est plus valide mais avec toujours du trafic ?)
  • je vois pas mal de code partagé entre aéroport civil et militaire au même endroit, je me souviens vaguement d'une discussion à ce sujet mais je ne la retrouve plus, aurais-tu le lien ?
  • tant qu'à récupérer le libellé de l’aéroport, ne serait-il pas possible l'utiliser dans le titre ? (j'ai tout juste regardé ce paramètre dont le code contenu ne me semble pas évident au premier regard)
  • il faudrait penser à commenter le code pour le rendre plus clair
  • enfin, ce n'est pas vraiment le problème de ce modèle, mais il y aurait des corrections à faire sur Wikidata (cf. d:Wikidata:Database reports/Constraint violations/P238)

Exemple avec PAS (Q3212151 (« ancien aéroport de Paros ») puis Q28229923 (« nouvel aéroport de Paros »)) :


Voir la requête brute et les sources sur Wikidata.


Cdlt, Vigneron * discut. 26 mars 2021 à 12:57 (CET)[répondre]

Salut VIGNERON (d · c · b), merci pour tes remarques.
  • Pourrais-tu stp rajouter la traduction bretonne pour les lignes de type "br" dans ce fichier https://commons.wikimedia.org/wiki/Data:I18n/Template:Graphs.tab ? Et vérifier https://commons.wikimedia.org/wiki/Data:I18n/Template:Airport-Statistics.tab ?
  • Qu'entends tu par vérification de paramètres corrects? Au départ, je ne savais pas automatiser les " dans le code. Donc les premiers usages étaient d'avoir la syntaxe {{Aéroport-Statistiques|iata="PAS" "HNL"}}, et après automatisation du placement des " via ce code "{{#invoke:String|replace|{{{iata|}}}{{{icao|}}}{{{faa|}}}| |" "||}}" , il est devenu inutile de rédiger "xxx" "yyy", seulement xxx yyy.
    • Capitalisation : pourquoi pas, j'ai mis le magic word {{uc:
  • Plusieurs types d'identifiants : je ne sais pas si c'est une bonne idée, je n'ai jamais rencontré le besoin de mélanger IATA/OACI, etc. Effectivement, le code ne gère pas de messages d'erreurs en cas d'usage de multiples type d'identifiants. Tu crois ça possible de faire cet ordre de préférence: IATA>OACI>FAA>Qid ? (le Qid est pas forcément une bonne idée, ex des merges, id qui paraît étrange à un wikipédien non wikidatiste)
  • PAS est super car c'est deux aéroports l'un fermé et l'autre ouvert, on visualise super bien l'évolution du trafic entre avant et après. ATH/HEW est sympa aussi dans le même genre de cas de figure.
  • Partage aéroport civil et militaire : effectivement c'est un pb car un aéroport peut partager ses pistes entre le civil et le militaire. Normalement, la donnée de trafic commercial n'existe que sur le Q civil et pas sur le Q militaire.
  • Réutilisation du titre : si tu peux réutiliser le libellé, ça peut être intéressant en effet (je n'ai su faire)
  • Je vais regarder d:Wikidata:Database reports/Constraint violations/P238)
  • Il faut garder à l'esprit d'avoir un code compatible crosswikis d'où la difficulté du comptage des blancs en arguments. --Bouzinac (discuter) 26 mars 2021 à 14:00 (CET)[répondre]
Mise en place du comptage de blancs qui fonctionne (mais est-il crosswiki?)
<code>{{#invoke:String|count|{{{iata|}}}{{{icao|}}}{{{faa|}}}{{{Qid|}}}|[ ]|plain=false}}>=1</code>
Bouzinac (discuter) 26 mars 2021 à 15:05 (CET)[répondre]