vidjil issueshttps://gitlab.inria.fr/vidjil/vidjil/-/issues2019-09-16T16:58:45+02:00https://gitlab.inria.fr/vidjil/vidjil/-/issues/1437Spécificité / P-value / E-value d'une recombinaison2019-09-16T16:58:45+02:00Vidjil TeamSpécificité / P-value / E-value d'une recombinaisonPrend en compte nb de délétions, mutations V/J, N... Normalement cela devrait se voir dans les scores de FineSegmentation.
Détecter ces probabilités depuis nos jeux de données (mais cela suppose d'avoir des segmentations VDJ de référe...Prend en compte nb de délétions, mutations V/J, N... Normalement cela devrait se voir dans les scores de FineSegmentation.
Détecter ces probabilités depuis nos jeux de données (mais cela suppose d'avoir des segmentations VDJ de référence...)
Lien avec génération aléatoire.
Faire cela dans notre coin ? Mettre quelqu'un dans la boucle ? (Laurent ?)
***
De manière empirique, pas nécessairement besoin de segmentations VDJ de réf. Ne peut-on pas le faire directement depuis les fenêtres ? On sait où est censé se terminer le V et commencer le J. Et donc on peut retrouver si on trouve une fenêtre à distance 0 ou 1.
Et si on va sur la génération aléatoire, le problème est la probabilité qu'on affecte à des délétions, insertions (et cela dépend des chaînes et des récepteurs, la dTd et la bouffeuse de nucléotides ne sont pas aussi actives partout). Ou alors on part de nos données, mais là pour le coup on a besoin de segmentations VDJ de références.
***
On en parle donc un jour avec Laurent. Voir quand.
***
On a donc maintenant une e-valeur d'une découpe left/right, mais la question reste toujours ouverte pour une recomb VDJ, à partir d'exemples, d'estimer les paramètres. On en avait aussi parlé avec Nikos.
***
(copié depuis tâche "Taille de fenêtre en multi-système") Si on a un V/J collé avec 0 zone de N, ce sera très limite même avec une fenêtre de taille 100 :-) On doit mettre un gros warning dessus, et permettre de revenir sur les reads.
***
Remonté, car l'heuristique peut regrouper des choses curieuses si la fenêtre n'est pas spécifique. (mais bon, contrôle par le coverage ?). Devient légèrement différent : quelle est la P/E-valeur d'une fenêtre ?
- compter les N (après Fine Segmenter)
- un bidule dans le FineSegmenter qui compte en plus les mutations de la fenêtre
- ... ou bien un truc magique à base de k-mers (y compris des D) ?
(Voir par exemple notable/0481)
***
euh... on maintenant a un warning si faible e-valeur ?
toujours d'actualité ?
***
Cela a été fait très sérieusement par Thierry Mora et Aleksandra Walczak
-> Quantifying lymphocyte receptor diversity
http://arxiv.org/abs/1604.00487
***
Et il y a un article qui utilise cela pour calculer la p-value de clones identifiés au diag : http://www.nature.com.sci-hub.cc/bmt/journal/vaop/ncurrent/full/bmt2016148a.html « Reliability of immune receptor rearrangements as genetic markers for minimal residual disease monitoring »
***
@magiraud @mikael-shttps://gitlab.inria.fr/vidjil/vidjil/-/issues/1473Axes génériques, depuis .json (coverage, evalue...)2021-07-12T16:09:41+02:00Vidjil TeamAxes génériques, depuis .json (coverage, evalue...)Être capable d'afficher n'importe quelle donnée passée dans le .json.
Notons que l'auto-découverte (comme pour le segmenter) peut ne pas être toujours très robuste et faire du bruit dans certains cas. Une solution acceptable pourrait êt...Être capable d'afficher n'importe quelle donnée passée dans le .json.
Notons que l'auto-découverte (comme pour le segmenter) peut ne pas être toujours très robuste et faire du bruit dans certains cas. Une solution acceptable pourrait être de demander à l'utilisateur de fournir une liste "axis" indiquant les axes à considérer (et en profiter pour demander le type entier / flottant / ..., ce qui peut être difficile à deviner).
***
Après réflexion, oui, il faudrait vraiment un mécanisme générique pour qu'on puisse spécifier quels axes on veut et ce qu'ils signifient (et on peut en profiter pour passer une chaîne d'aide) :
En ce moment, on aimerait pouvoir afficher
_coverage, en float, entre 0 et 1, "Coverage of the representative"
seg._evalue, en float, en échelle log, "E-value (number of k-mers)"
***
ping
***
Revenu au goût du jour le mois dernier avec "productive".
"Axes" veut dire x, y, et aussi couleur.
***
@nobodyRyan HerbertRyan Herberthttps://gitlab.inria.fr/vidjil/vidjil/-/issues/1654Ne proposer que des presets qui ont du sens2020-12-11T13:17:40+01:00Vidjil TeamNe proposer que des presets qui ont du sensClone length a un sens pour les séquençages avec des reads à longueur variable, mais pas des reads à longueur fixe. Si tous les clones ont quasiment la même longueur moyenne de read, on devrait désactiver la fonctionnalité
***
Discuté ce...Clone length a un sens pour les séquençages avec des reads à longueur variable, mais pas des reads à longueur fixe. Si tous les clones ont quasiment la même longueur moyenne de read, on devrait désactiver la fonctionnalité
***
Discuté ce matin. On peut laisser les axes, mais au moins les presets doivent faire sens.
Le preset "Clone length distribution" pourrait ainsi être plutôt "Coverage distribution".
(Il y a aussi un souci que "clone length" est relativement universel (longeur des séquences), alors que "coverage" est une spécificité du calcul de Vidjil.)
***
@magiraud @mikael-s @flothonihttps://gitlab.inria.fr/vidjil/vidjil/-/issues/1684Afficher séparément les tubes de PCR différents, même quand ils concernent le...2019-01-09T17:16:15+01:00Vidjil TeamAfficher séparément les tubes de PCR différents, même quand ils concernent le même locusDemande de Yann: quand on fait Vg1-9 et Vg10, on aimerait voir les % par rapport au tube de PCR.
La même question se pose pour quasiment tous les locus, en fonction des tubes utilisés.
- afficher cela comme deux locus différents ? (dan...Demande de Yann: quand on fait Vg1-9 et Vg10, on aimerait voir les % par rapport au tube de PCR.
La même question se pose pour quasiment tous les locus, en fonction des tubes utilisés.
- afficher cela comme deux locus différents ? (dans ce cas, on ne voit plus de grid avec tout le TRG)
- est-ce que le browser est bien robuste au changement de germlines.data ? (difficulté avec germlines.js) ?
- avoir un germlines.data différent par utilisateur / par patient ? ou stocker cela dans le .vidjil ?
- ou bien déjà avoir plusieurs germlines.data (un comme actuel, un Lille, un tubes BIOMED-2, ...) ?
à réfléchir
***
@nobodyhttps://gitlab.inria.fr/vidjil/vidjil/-/issues/2060Afficher la documentation des axes2023-03-01T18:19:49+01:00Mathieu GiraudAfficher la documentation des axesDans `available_axis` (pour l’instant dans `scatterplot.js`), avoir pour chaque axe, une documentation / commentaire en ~1 ligne. Cela aiderait en particulier pour les choses obscures comme « coverage » et autres :-)
Cette doc serait vi...Dans `available_axis` (pour l’instant dans `scatterplot.js`), avoir pour chaque axe, une documentation / commentaire en ~1 ligne. Cela aiderait en particulier pour les choses obscures comme « coverage » et autres :-)
Cette doc serait visible en ` :hover` :
- dans le choix des axes x/y dans le sous-menu plot
- sur la grid, sur la légende
- et potentiellement à d'autres endroits une fois qu'on aura #1471
@mikael-s @RyanHerb
* [x] Rajouter un champ `.doc` dans certains axes
* [ ] Implémenter le `:hover`, déjà sur la grid, dans la légendehttps://gitlab.inria.fr/vidjil/vidjil/-/issues/2174Features de séquences et axes : concepts et liens2020-10-14T11:29:54+02:00Mathieu GiraudFeatures de séquences et axes : concepts et liensDiscussion débutée avec @RyanHerb.
Nous avons deux concepts dont nous souhaitons améliorer la généricité :
* les "features" ~"client-segmenter" (quelque chose sur une portion de la séquence) #2136 #2137
* les "axes" ~"client-ax...Discussion débutée avec @RyanHerb.
Nous avons deux concepts dont nous souhaitons améliorer la généricité :
* les "features" ~"client-segmenter" (quelque chose sur une portion de la séquence) #2136 #2137
* les "axes" ~"client-axis" (une valeur pour un clone) #1471 #2175
Déjà, sommes-nous cohérents dans notre vocabulaire, entre *"feature"* et *"axe"* ? (Meilleur nom que "axe" ?) (#2136 parle-t-il de feature ou d'axes ?)
Est-ce que ce sont toujours deux concepts bien séparés ? Il y a parfois des liens entre ces concepts. C'est le cas de #2043 @flothoni : on peut calculer un axe à partir de feature. Longueur de N, entre deux primers... on pourrait en avoir d'autres (nombre de D, ...).
Et des features sur toute la séquence sont naturellement des axes... la description du format `.vidjil` indique :
```
// any feature to be highlighted in the sequence, with optional fields related to this feature:
// - "start"/"stop" : positions on the clone sequence (starting at 1)
// - "seq" : a sequence
// - "val" : a numerical value
// - "info" : a textual vlaue
"somefeature": { "start": 56, "stop": 61, "seq": "ACTGTA", "val": 145.7, "info": "analyzed with xyz" },
// Numerical or textual features concerning all the sequence or its analysis (such as 'evalue')
// can be provided by omitting "start" and "stop" elements.
"someotherfeature": {"val": 0.004521},
```
Ici on aimerait clairement pouvoir afficher `someotherfeature` comme un axe.
Mais ces deux concepts sont tout de même fort différents. Que nous évoquent-ils ? Quelque part, le ~client Vidjil n'est-il pas principalement un affichage de clones avec des features et des axes (et des samples) ?
cc @mikael-shttps://gitlab.inria.fr/vidjil/vidjil/-/issues/2299Afficher d'un coup les clones de plusieurs samples / d'un set2019-01-10T15:21:23+01:00Mathieu GiraudAfficher d'un coup les clones de plusieurs samples / d'un setÀ propos des contaminations #1744, nous avons eu la discussion suivante :
> @magiraud : Pour un run, ce serait pertinent de visualiser par défaut un grid tel que "nb of samples / locus"...
> @mikael-s : Sauf que — actuellement — la gr...À propos des contaminations #1744, nous avons eu la discussion suivante :
> @magiraud : Pour un run, ce serait pertinent de visualiser par défaut un grid tel que "nb of samples / locus"...
> @mikael-s : Sauf que — actuellement — la grille porte sur un seul échantillon. On ne verra donc que la contamination de l'échantillon courant dans les autres échantillons.
Une critique similaire (moins importante) pourrait s'appliquer à la fonctionnalité "size (other sample)". Serait-il donc souhaitable de pouvoir voir les clones de *plusieurs* samples en même temps, voire de tous les samples d'un sample set ? Outre les cas mentionnés, on pourrait aussi alors aligner/comparer des clones de samples différents. Y aurait-il d'autres applications, typiquement ~"bio-control" ?
En négatif, cela risquerait de casser fortement nos habitudes (et que deviendrait la boîte en haut à gauche ?) et donc peut-être de nuire à l'~"client-ergonomy" globale.
cc @RyanHerb @flothoni @mikael-shttps://gitlab.inria.fr/vidjil/vidjil/-/issues/2360axes: entiers2018-07-07T07:20:59+02:00Mathieu Giraudaxes: entiersLes longueurs de clones (et d’autres choses) sont entières. On ne doit pas voir de décimale dans les labels.
À voir si cela est correct actuellement ou s’il y a besoin de faire une classe spécifique pour les entiers.
cc @RyanHerbLes longueurs de clones (et d’autres choses) sont entières. On ne doit pas voir de décimale dans les labels.
À voir si cela est correct actuellement ou s’il y a besoin de faire une classe spécifique pour les entiers.
cc @RyanHerbhttps://gitlab.inria.fr/vidjil/vidjil/-/issues/2368axis: mettre toutes les valeurs de available_axis dans GenericAxis()2018-08-08T20:49:02+02:00Mathieu Giraudaxis: mettre toutes les valeurs de available_axis dans GenericAxis()Suite à la discussion de hier, et en particulier les problèmes sur le `init`, je me demande
si on ne pourrait pas mettre tout ce qu’on a besoin pour chaque axe dans `GenericAxis()`,
peut-être sous la forme d’un dictionnaire comme il y a ...Suite à la discussion de hier, et en particulier les problèmes sur le `init`, je me demande
si on ne pourrait pas mettre tout ce qu’on a besoin pour chaque axe dans `GenericAxis()`,
peut-être sous la forme d’un dictionnaire comme il y a des choses optionnelles.
On aurait quelque chose du genre :
```
avalaible_axis = [
...,
new PercentCustomAxis("sequenceLength", this.m,
{
doc: "ratio of the number of reads of each clone to the total number of reads in the selected locus",
label: "size",
fct : function(clone){return clone.getSizeZero()},
min : function(){return self.m.min_size},
max : 1,
log : true
}),
...
]
```
Ou, si on souhaite garder un dictionnaire, `"sequenceLength": new PercentCustomAxis( ... )`
Si on n'a plus de dictionnaire pour `available_axis`, une conséquence pourrait être, dans `scatterPlot.js`, de se passer complètement de `splitX` et `splitY` (sauf dans `changeSplitMethod`) et de remplacer
- `this.available_axis[this.splitX]` par quelque chose du type`this.axisX.data`
- `this.splitX` en `this.axisX.key`
Les appels à `available_axis` ne seraient alors que dans la construction du menu "plot" (et aussi dans`updateMenu`)
(et peut-être aider #2367).
cc @RyanHerbhttps://gitlab.inria.fr/vidjil/vidjil/-/issues/2369axes: pouvoir trier la liste des clones suivant n'importe quel axe2021-09-15T19:20:36+02:00Mathieu Giraudaxes: pouvoir trier la liste des clones suivant n'importe quel axeExtrait de #1471.Extrait de #1471.marc duezmarc duezhttps://gitlab.inria.fr/vidjil/vidjil/-/issues/2378Axes: ne pas afficher "?" s'il n'y a pas de clones concernés2021-11-23T15:58:18+01:00Mathieu GiraudAxes: ne pas afficher "?" s'il n'y a pas de clones concernésMais peut-être faudrait-il prendre en compte *tous* les clones, y compris ceux possiblement filtrés ?
Voir aussi #2364.Mais peut-être faudrait-il prendre en compte *tous* les clones, y compris ceux possiblement filtrés ?
Voir aussi #2364.https://gitlab.inria.fr/vidjil/vidjil/-/issues/2394Axes: ne pas bouger entre grid et bar2018-08-14T23:13:24+02:00Mathieu GiraudAxes: ne pas bouger entre grid et barVu avec @RyanHerb
Même description que #2377 : alterner grid/bar, on aimerait que les labels ne bougent pas.
Déjà le '?' toujours du même côté.Vu avec @RyanHerb
Même description que #2377 : alterner grid/bar, on aimerait que les labels ne bougent pas.
Déjà le '?' toujours du même côté.https://gitlab.inria.fr/vidjil/vidjil/-/issues/2399axes/colonnes: pretty_verbose2017-10-13T12:43:02+02:00Mathieu Giraudaxes/colonnes: pretty_verbosecc @heto @RyanHerbcc @heto @RyanHerbhttps://gitlab.inria.fr/vidjil/vidjil/-/issues/2407Compléter feature-c/flexible_axis_display2017-11-22T12:49:04+01:00Ghost UserCompléter feature-c/flexible_axis_displayLa nouvelle fonctionnalité est opérationnelle (-> !22), présente en dev mode pour l'instant.
Il reste cependant plusieurs choses à régler avant de la rendre 'publique'.
Problèmes connus :
- le plus important, les `.fct` (et `.prett...La nouvelle fonctionnalité est opérationnelle (-> !22), présente en dev mode pour l'instant.
Il reste cependant plusieurs choses à régler avant de la rendre 'publique'.
Problèmes connus :
- le plus important, les `.fct` (et `.pretty` selon le besoin) manquants dans `Axes`
-> comme discuté plusieurs fois, tous les axes doivent pouvoir être utilisés ; dans certains cas la `fct` voulue existe déjà mais se trouve ailleurs ; enfin cela mènera sans doute à supprimer l'utilisation `clone.axisOptions`
- déroulement de haut en bas du `segmenter_axis_menu`, dû à l'utilisation du fonctionnement du menu du haut de page (`menu-container`, classe `.selector` et fonctions associées)
-> sans doute plutôt l'inverse puisqu'ici le menu part du bas
- beaucoup de divs, parfois 'vides', pour reproduire la structure du menu et pouvoir utiliser les fonctions liées à `.selector`
- `#segmenter_axis_select.style.top` fixé arbitrairement, dans l'attente d'une solution meilleure et surtout fonctionnelle
-> j'avais essayé plusieurs choses pour obtenir `top = -height`, sans réussite
- alignement des 'colonnes' dans le segmenteur
-> en bonne partie résolu mais la solution en place mène dans certains cas à des 'rognages' de caractères (`overflow : hidden`), notamment avec Chromium
- 'disparition' de `.getPrintabeSize`
-> lire #2399, #2400
- besoin potentiel de nouveaux tests, dédiés aux modifications apportées
- valeur 'undefined' renvoyée par certains axes, transformée en '?' par `.pretty`
-> le string 'undefined' débordait dans les spans d'axisBox, mais '?' n'est pas forcément le plus pertinent ; p-ê mieux à choisir, notamment pour uniformiser si besoin
- espace pris par `list_axis_select`
-> p-ê une solution à trouver pour éviter d'augmenter la hauteur de `list_menu`
Globalement, tout ce qui concerne les contrôleurs/menus peut tout à fait bouger, il s'agissait surtout pour le moment d'avoir quelque chose d'utilisable.https://gitlab.inria.fr/vidjil/vidjil/-/issues/2430Export csv flexible2023-03-01T17:14:11+01:00Mathieu GiraudExport csv flexible#2428 est déjà intéressant et servira potentiellement à plusieurs utilisateurs.
On pourrait à terme avoir un export flexible type ce qui a été fait pour la liste et le segmenter (#2175 par @heto).
Pas pour tout de suite, rien d'urgent.#2428 est déjà intéressant et servira potentiellement à plusieurs utilisateurs.
On pourrait à terme avoir un export flexible type ce qui a été fait pour la liste et le segmenter (#2175 par @heto).
Pas pour tout de suite, rien d'urgent.https://gitlab.inria.fr/vidjil/vidjil/-/issues/2574-2 dans preset 72017-08-22T17:18:31+02:00Mathieu Giraud-2 dans preset 7Demo L3, preset 7, plein écran : Un "-2" à la fin.
Voir aussi #2548.
@RyanHerb : "compileBarLabels"Demo L3, preset 7, plein écran : Un "-2" à la fin.
Voir aussi #2548.
@RyanHerb : "compileBarLabels"https://gitlab.inria.fr/vidjil/vidjil/-/issues/2700Réduire les différences entre MODE_BAR et MODE_GRID2018-10-03T23:57:38+02:00Mathieu GiraudRéduire les différences entre MODE_BAR et MODE_GRIDY a-t-il des raisons autres qu'historiques qui fait qu'on a tant de différences/recopies entre les deux modes d'affichage ?
- dans `generic_axis.js`, `computeLabels` et `computeBarLabels` sont bien différents (je m'en suis rendu compt...Y a-t-il des raisons autres qu'historiques qui fait qu'on a tant de différences/recopies entre les deux modes d'affichage ?
- dans `generic_axis.js`, `computeLabels` et `computeBarLabels` sont bien différents (je m'en suis rendu compte en essayant de faire #2699, voir !91)
- dans `scatterplot.js`, similarités de codes entre `computeBarTab` utilise `axisX.posBarLabel
Dans `scatterplot.js`, au moment de faire le bar plot, on doit certes avoir une gestion différenciée de l'axe Y. Mais j'ai l'impression que tout ce qui touche l'axe X devrait être identique/générique (et #2394 serait alors naturel). Que ce soit en `BAR` ou en `GRID`, que ce soit en valeurs génériques ou numériques, on peut avoir (ou pas) des valeurs `?`, on a envie d'avoir du `nice_{floor,ceil}` #2699, on peut vouloir (ou pas) zoomer #2431.
cc @RyanHerbWeb 2018.01https://gitlab.inria.fr/vidjil/vidjil/-/issues/2754Histogramme et axe y2018-08-14T22:21:53+02:00Mathieu GiraudHistogramme et axe yVu par @flothoni.
L'axe `y` ne change pas la taille des barres des histogrammes.
En théorie il change juste l'ordre des clones dans chaque barre... mais cela ne fonctionne plus.
Et, même dans ce cas, il faudrait mieux le documenter.
Br...Vu par @flothoni.
L'axe `y` ne change pas la taille des barres des histogrammes.
En théorie il change juste l'ordre des clones dans chaque barre... mais cela ne fonctionne plus.
Et, même dans ce cas, il faudrait mieux le documenter.
Bref, on pourrait enlever la légende "axe y", elle est plus trompeuse qu'autre chose.
Enlever/cacher aussi la boîte "axe y" ou autre ?https://gitlab.inria.fr/vidjil/vidjil/-/issues/2890Erreur sur FloatAxis.getLabelText()2017-11-23T15:00:32+01:00Mathieu GiraudErreur sur FloatAxis.getLabelText()En me balladant sur les logs accessibles depuis l'onglet `admin` de `vda`, je vois une erreur qui est arrivée à plusieurs utilisateurs
```
FloatAxis.prototype.getLabelText@https://app.vidjil.org/js/numerical_axis.js:273:17
computeBarLab...En me balladant sur les logs accessibles depuis l'onglet `admin` de `vda`, je vois une erreur qui est arrivée à plusieurs utilisateurs
```
FloatAxis.prototype.getLabelText@https://app.vidjil.org/js/numerical_axis.js:273:17
computeBarLabels@https://app.vidjil.org/js/generic_axis.js:220:24
computeBarTab@https://app.vidjil.org/js/scatterPlot.js:751:9
updateClones@https://app.vidjil.org/js/scatterPlot.js:1185:13
update@https://app.vidjil.org/js/scatterPlot.js:1166:13
update@https://app.vidjil.org/js/model.js:997:13
displayTop@https://app.vidjil.org/js/model.js:1096:9
onchange@https://app.vidjil.org/index.html?set=25171&config=26:1:1
```
Bloquant ou pas ?
Lien avec #2731/#2703 changé ces derniers jours ?https://gitlab.inria.fr/vidjil/vidjil/-/issues/2922Trouver un meilleur affichage dans le client des gènes CD et autres2017-12-08T21:57:55+01:00Mathieu GiraudTrouver un meilleur affichage dans le client des gènes CD et autresVoir #1801. Avec !76, (capture avec en plus les choses de !142) :
![CD](/uploads/08ace03be2eeb9f9c74feac798b2aa5d/CD.png)
Mais cela me gène de passer par 31581d71 et f0b4806.
Ce n'est pas très propre de stocker cela dans un "gène D". U...Voir #1801. Avec !76, (capture avec en plus les choses de !142) :
![CD](/uploads/08ace03be2eeb9f9c74feac798b2aa5d/CD.png)
Mais cela me gène de passer par 31581d71 et f0b4806.
Ce n'est pas très propre de stocker cela dans un "gène D". Une autre entrée dans `seg` ?