Problème d'affichage de certains graphiques
Définition du problème : Voici quelques exemples de graphiques ok dans la dernière V14 mais qui n'affichent plus rien dans la V15 notamment à cause des routines "pairing-with" et "graph-by". J'ai pu les "réparer" en utilisant la routine "cross-by" à la place.
Exemples : Exemple 1 : Synthaxe vega-lite Diagramme à barres empilées (réparable en utilisant "cross-by" au lieu de "pairing-with") V14 OK : https://instance-globale-14077.lodex-dev.inist.fr/instance/inst-dev-ref-func/graph/dzXO V15 NOK : https://lodex-dev.inist.fr/instance/inst-dev-ref-func/graph/dzXO
Exemple 2 : Treemap (réparable en utilisant "cross-by" au lieu de "graph-by") V14 OK : Car https://instance-globale-14077.lodex-dev.inist.fr/instance/inst-dev-ref-func/graph/acIW V15 NOK : https://lodex-dev.inist.fr/instance/inst-dev-ref-func/graph/acIW
Exemple 3 : Cartographie de flux (non réparable en utilisant "cross-by" au lieu de "pairingwith"
V14 OK : https://instance-globale-14077.lodex-dev.inist.fr/instance/test-vbo-presta/graph/aVlS
V15 NOK : https://instance-globale-1501.lodex-dev.inist.fr/instance/test-vbo-presta/graph/aVlS
Autres exemples de graphiques qui ne s'affichent plus : les cartes de chaleur (routein : pairing-with) : V15 : https://instance-globale-1502.lodex-dev.inist.fr/instance/echantillon-cnrs-chu/graph/u3Tz V14 : https://instance-globale-14077.lodex-dev.inist.fr/instance/echantillon-cnrs-chu/graph/u3Tz
la routine pairing-with est une fonction map-reduce de mongodb, le code est ici https://github.com/Inist-CNRS/lodex/blob/master/packages/ezsLodex/src/reducers/pairing.js
Idem pour Diagramme à bulle avec pairing-with (réparable avec cross-by) NOK https://instance-globale-1502.lodex-dev.inist.fr/instance/test-vbo-presta/graph/REPn OK https://instance-globale-14077.lodex-dev.inist.fr/instance/test-vbo-presta/graph/REPn
idem pour format Réseaux (réparable avec cross-by) NOK https://instance-globale-1502.lodex-dev.inist.fr/instance/test-vbo-presta/graph/qPJk OK https://instance-globale-14077.lodex-dev.inist.fr/instance/test-vbo-presta/graph/qPJk
J'ajoute pour compléter qu'en plus de la cartographie de collaborations (exemple 3), les graphiques en réseaux et les cartes de chaleur ne sont pas réparables en remplaçant "pairing-with" ou "graph-by" (les routines renvoient des flux json vides) par "cross-by", le flux Json renvoyé est incomplet que ce soit en V14 ou en V15 :
Carte de chaleur OK en V14.0.67 avec pairing-with : https://instance-globale-14067.lodex-dev.inist.fr/instance/export-bibtex-zotero-bibliometrics/graph/LCrb
Carte de chaleur KO (données manquantes) en V15.0.2 (et V14.0.67) avec cross-by : https://lodex-dev.inist.fr/instance/export-bibtex-zotero-bibliometrics/graph/CzXq
Réseau OK en V14.0.67 avec pairing-with : https://instance-globale-14067.lodex-dev.inist.fr/instance/export-bibtex-zotero-bibliometrics/graph/DiaB
Réseau KO (données manquantes) en V15.0.2 (et V14.0.67) avec cross-by : https://lodex-dev.inist.fr/instance/export-bibtex-zotero-bibliometrics/graph/h8qV
De plus, la routine "decompose-by" ne semble renvoyer aucun flux :
De mon côté les Cartes de chaleur sont réparables avec cross-by https://instance-globale-1502.lodex-dev.inist.fr/instance/test-vbo-presta/graph/YhNq
@yannguillemin je ne vois pas de différence entre les graphes https://lodex-dev.inist.fr/instance/export-bibtex-zotero-bibliometrics/graph/LCrb et https://instance-globale-14067.lodex-dev.inist.fr/instance/export-bibtex-zotero-bibliometrics/graph/LCrb
oui merci pour l'alerte @Bonvallot , j'avais "oublié" de travailler sur des copies de graphiques. J'ai réédité mon commentaire pour le corriger. Dans le cas de cette instance : "cross-by" "zappe" des données par rapport à "pairing-with".
Carte de chaleur OK en V14.0.67 avec pairing-with : https://instance-globale-14067.lodex-dev.inist.fr/instance/export-bibtex-zotero-bibliometrics/graph/LCrb
Carte de chaleur KO (données manquantes) en V15.0.2 (et V14.0.67) avec cross-by : https://lodex-dev.inist.fr/instance/export-bibtex-zotero-bibliometrics/graph/CzXq
Le probléme semble venir d'ezs. Les données en sortie du mapReduce sont bonnes, mais disparaissent (les objest sont toujours là, mais deviennent vide) aprés être passée à feed.flow.
Un extérieur pour qui j'avais fait une instance vient de me signaler qu'un tableau que j'avais créé en EJS ne fonctionne plus, il utilise la routine group-and-sum-with et est sous la v 14.0.77.
en 15.0.2
je ne pense pas pouvoir vous donnez accès à l'instance buggée, si j'essaie de switcher mon instance en passant de 15.0.2 à 14.0.77 je n'ai pas le bug... (j'ai bien vidé le cache)
@AnaelKremer, mais est-ce que l'utilisateur extérieur a bien vidé son cache ? Car en vérifiant, group-and-sum-with fonctionne aussi bien 14.0.77 qu'en 15.0.2. Dans ton exemple, il semble que la somme est faite de 2019 à 2023 dans un cas et de 2018 à 2021 dans l'autre ? ou le bug concerne les cases grisés qui devraient être remplies ?
La fonction mongodb finalize n'est plus exécutée, du coup la routine essaye de reformater des objets qui ne sont pas de le format attendu. cf. https://github.com/Inist-CNRS/lodex/pull/2476
Sur cette instance: https://instance-globale-1503.lodex-dev.inist.fr/instance/test-vre-annota, la mise en plein écran du graphe à bulles "Thématiques" de la page d'accueil ne fonctionne pas. La taille du graphique ne change pas, alors que que cela fonctionne pour les deux autres graphiques ("Types de ressources" (diagramme circulaire) et "Domaines scientifiques" (diagramme en barres))
@vresz : c'est normal car dans la configuration actuelle, la taille des graphiques à bulles est fixée par la taille des bulles qui est renseignée "en dur" dans les paramètres du graphique (en l'occurrence 300px) et ceci ne change pas que tu sois en plein écran ou pas. Une solution (hors scope) serait d'ajouter l'option "rapport d'aspect" qui s'appliquerait au graphique uniquement en mode plein écran tout en désactivant la taille des bulles spécifiée pour un affichage partiel.
Tous les graphiques de l'instance de démo bibtex-zotero pour des graphiques simples ont pu être restaurés par la PR #2476 de @touv. Les graphiques de cette instance concernés par la réparation sont : carte de chaleur, cartographie des coopérations internationales, réseau des collaborations internationales, diagramme à bulles (pairing-with) et diagramme à barres groupées (graph-by). Ceci étant, même si dans le premier exemple ci-dessous, j'obtiens les mêmes données en sortie pour les 3 routines "cross-by", "graph-by" et "pairing-with", je n'arrive pas à produire les mêmes cartes de chaleur avec ces 3 routines dans le deuxième exemple.
À suivre...
Pour compléter, voici 4 cartes de chaleur issues du même jeu de données (instance : https://lodex-dev.inist.fr/instance/zotero-bibtex-test-2). Selon la doc actuelle, la routine "decompose-by" se comporte comme la routine "graph-by" en créant les paires ID1/ID2, ID1/ID1 et ID2/ID2. Les routines "pairing-with" et "cross-by" se limitent à créer les paires ID1/ID2.
Voici ce que l'on obtient actuellement avec ces 4 routines : "decompose-by" ne semble renvoyer aucun flux, "graph-by" renvoie les paires ID1/ID2 et une partie des paires ID2/ID2, "pairing-with" est ok et donne le résultat attendu et "cross-by" ne renvoie qu'une partie des paires ID1/ID2.
-
decompose-by : KO
-
graph-by : KO
-
pairing-with : OK
-
cross-by : KO
Tous les graphes qui posaient pb en 1502 sont ok en 1503 pour les exemples que j'avais listés.
V 1503 : cartes de chaleurs OK ((routine : pairing-with)
Vu au daily : Nicolas regarde le problème des routines