vloux / ProteoRE

GNU General Public License v3.0
2 stars 5 forks source link

heatmap tool #118

Closed davidchristiany closed 5 years ago

davidchristiany commented 6 years ago

Je viens de mettre en ligne l'outil heatmap dans la section "other tools" de Proteore. De ce que j'ai pu tester, le fichier html s'affiche correctement mais il faut attendre ou rafraichir la page la plupart du temps. Le fichier pdf s'affiche correctement aussi. En revanche pour le fichier png, il n'y a pas de valeur sur la légende couleur et le fichier jpg ne s'affiche pas.

Je n'ai pas encore mis toute les options, le but était de tester plotly et heatmaply pour voir si le rendu est convenable. link

combesf commented 6 years ago

@davidchristiany j'ai une erreur qd je clique sur le lien je sais pas si c'est normal ou pas ... ? je joins un screenshot merci !! tmp

davidchristiany commented 6 years ago

C'est normal mais je n'avais pas prévu ça. En fait, j'ai créé une branche github pour développer l'outil et ne pas le mettre directement dans la branche master. Cependant, lorsque je retourne sur la branche master, galaxy ne peut plus accèder au dossier contenant l'outil, c'est pourquoi il est inaccessible. Je vais surement fusionner les branches ça sera plus simple.

Edit : l'outil est bien disponible sur dev-migale.

combesf commented 6 years ago

Je ne peux pas tester cet outil car il n'est pas dans la section bêta de proteore.org, et (contrairement à Yves) je n'ai tjrs pas accès à dev-migale malgré la mise à jour de mon PC ...

davidchristiany commented 6 years ago

Je voulais l'améliorer un peu avant de le mettre dans beta tools mais autant me dire ce que tu en pense en l'état. Je le mets cet après midi sur proteore.org

davidchristiany commented 6 years ago

J'ai mis l'outil heatmap sur le toolshed test. Je l'ai installé sur dev-migale et sur proteore.org. Il fonctionne sur dev-migale mais pas sur proteore.org ... J'ai l'erreur suivante :

Fatal error: Exit code 1 () Error in with_pandoc_safe_environment({ : The 'HOME' environment variable must be set before running Pandoc. Calls: heatmaply ... FUN -> get_pandoc_version -> with_pandoc_safe_environment Execution halted

Pourtant je n'ai jamais défini de variable HOME sur dev-migale.

Edit : j'ai redémarré proteore.org, sans succès

combesf commented 6 years ago

je viens de tester sur proteore.org bêta (juste pas acquis de conscience) et j'ai la même erreur que toi @davidchristiany

vloux commented 6 years ago

La variable d'environnement HOME est positionnée par le système. Sur dev :

[galaxydev@galaxydev ~]$ echo $HOME
/projet/galaxydev/

Sur proteore :

[proteore@proteore ~]$ echo $HOME
/home//proteore

Peux tu me mettre un lien vers un historique fautif que je regarde en détail ?

combesf commented 6 years ago

j'ai mis l'erreur en PJ est-ce que ça va ou tu veux autrement ? heatmaperror

davidchristiany commented 6 years ago

http://www.proteore.org/u/dchristiany/h/heatmapvisualization C'est normalement accessible par tous.

vloux commented 6 years ago

C'était plutôt le dataset en entrée qui m'interessait ;-)

combesf commented 6 years ago

test-quanti.txt

le voilà juste 1 colonne d'ID et des colonnes de quanti

vloux commented 6 years ago

Ca a l'air de passer en ligne de commande dans l'environnement conda :

[proteore@proteore ~]$ source /home/proteore/galaxy/database/dependencies/_conda/bin/activate
(root) [proteore@proteore ~]$ source activate /home/proteore/galaxy/database/dependencies/_conda/envs/mulled-v1-403bf41612da01bb6cb040b2664cbb2f9a4a25336b903f90620045e962f81af9
(/home/proteore/galaxy/database/dependencies/_conda/envs/mulled-v1-403bf41612da01bb6cb040b2664cbb2f9a4a25336b903f90620045e962f81af9) [proteore@proteore ~]$ which R
/home/proteore/galaxy/database/dependencies/_conda/envs/mulled-v1-403bf41612da01bb6cb040b2664cbb2f9a4a25336b903f90620045e962f81af9/bin/R
(/home/proteore/galaxy/database/dependencies/_conda/envs/mulled-v1-403bf41612da01bb6cb040b2664cbb2f9a4a25336b903f90620045e962f81af9) [proteore@proteore ~]$ Rscript /home/proteore/shed_tools/testtoolshed.g2.bx.psu.edu/repos/proteore/proteore_heatmap_visualization/aa0b2692ab8a/proteore_heatmap_visualization/heatmap_viz.R --input='/home/proteore/galaxy/database/files/002/dataset_2112.dat' --output="test-quanti.txt"  --type='html' --cols='3:6' --row_names=1 --header='true' --col_text_angle='0'
(/home/proteore/galaxy/database/dependencies/_conda/envs/mulled-v1-403bf41612da01bb6cb040b2664cbb2f9a4a25336b903f90620045e962f81af9) [proteore@proteore ~]$ ll
total 2784
drwxrwxr-x 24 proteore proteore    4096 29 août  10:01 galaxy
drwxrwxr-x  4 proteore proteore      70 23 août  09:20 shed_tools
-rw-rw-r--  1 proteore proteore 2846199 29 août  11:44 test-quanti.html
(/home/proteore/galaxy/database/dependencies/_conda/envs/mulled-v1-403bf41612da01bb6cb040b2664cbb2f9a4a25336b903f90620045e962f81af9) [proteore@proteore ~]$
davidchristiany commented 6 years ago

J'ai modifié la variable '$HOME' avec le fichier galaxyprod_env.sh, référencé dans le fichier galaxy.ini à "environment_setup_file". HOME="/home/proteore" à la place de HOME="/home//proteore" . J'ai aussi dû ajouté heatmap_visualization à la white list de proteore. Cela a permis de faire tourner l'outil et de de pouvoir afficher le résultat. Vous pouvez maintenant le tester sur proteore.

vloux commented 6 years ago

C'était donc du au // ? Pb contourné, il faudrait par contre comprendre pourquoi la variable d'env HOME initiale a un double / Je vais essayer de dépiler tout ça.

yvandenb commented 6 years ago

Peux-tu indiquer un pointeur toolshed du tool heatmap que tu as installé sur ProteoRE? est ce celui-ci ? https://toolshed.g2.bx.psu.edu/repository/display_tool?repository_id=65f484f14864edfe&render_repository_actions_for=galaxy&tool_config=%2Fsrv%2Ftoolshed%2Fmain%2Fvar%2Fdata%2Frepos%2F002%2Frepo_2584%2Fheatmap_config.xml&changeset_revision=ad06aeed02c9 c'est celui du W4M...;-)

davidchristiany commented 6 years ago

l'outil heatmap que j'ai fait et installé sur proteore est ici : https://testtoolshed.g2.bx.psu.edu/view/proteore/proteore_heatmap_visualization/aa0b2692ab8a

davidchristiany commented 6 years ago

Je suis en train de voir pour utiliser "Next-Generation Clustered Heat Map (NG-CHM) Viewer" qui a l'air très complet :

https://bioinformatics.mdanderson.org/main/NG-CHM-V2:Overview

Après avoir suivi le tuto d'installation, j'ai l'erreur suivante :

Fatal error: Exception in thread "main" java.lang.UnsupportedClassVersionError: mda/ngchm/datagenerator/GalaxyMapGen : Unsupported major.minor version 52.0 at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:803) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at java.net.URLClassLoader.defineClass(URLClassLoader.java:442) at java.net.URLClassLoader.access$100(URLClassLoader.java:64) at java.net.URLClassLoader$1.run(URLClassLoader.java:354) at java.net.URLClassLoader$1.run(URLClassLoader.java:348) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:347) at java.lang.ClassLoader.loadClass(ClassLoader.java:425) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:323) at java.lang.ClassLoader.loadClass(ClassLoader.java:358) at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:482) WARNING:galaxy.model:Datatype class not found for extension 'ngchm' WARNING:galaxy.model:Datatype class not found for extension 'ngchm' WARNING:galaxy.model:Datatype class not found for extension 'ngchm' WARNING:galaxy.model:Datatype class not found for extension 'ngchm' WARNING:galaxy.model:Datatype class not found for extension 'ngchm'

Apparemment cela est dû à une différence de version java entre le compilateur et la version qui fait tourner l'outil. La version java de galaxy serait plus ancienne que celle du compilateur.

Je vais voir si j'y arrive avec une version plus ancienne de l'outil.

vloux commented 6 years ago

TODO @davidchristiany : installer le heatmap de W4M sur beta-tools proteore.org

davidchristiany commented 6 years ago

J'ai installé NG-CHM heatmap car il a l'air très complet (cf posts précédents) L'erreur java qui me bloque est toujours Unsupported major.minor version 52.0.

J'ai contacté les auteurs sur github : https://github.com/MD-Anderson-Bioinformatics/NG-CHM/issues/3

leur réponse : "The issue is your machine needs to be updated to use Java 1.8. 1.8 version has been out for a several years. I am going to look into adding a Galaxy xml requirements statement in the tool xml and see if that will notify users in a more friendly way of this requirement.

If there is anything else regarding this issue please let us know. And thank you for trying our tool and giving us feedback."

Il n'y a pas eu de mise à jour mais je vais voir si j'arrive à faire fonctionner la version docker. Sinon il faut que je vois le problème java avec Valentin, normalement il suffit juqte d'installer une nouvelle version (1.8)

Edit : En fait le docker sert à installer une version de galaxy contenant l'outil ng-chm installé, je vais donc voir avec Valentin quand il aura le temps pour ce problème java.

vloux commented 6 years ago

De ce que je comprend le problème vient du coup de la def des dépendances dans le wrapper (ie java 1.8) ? Sur galaxydev , java 1.8 est installé là : /usr/local/public/jdk1.8.0_112/bin/java

davidchristiany commented 6 years ago

D'après les auteurs, l'erreur que j'obtiens est du à un problème de version :

image

Mais peut-être est-ce autre chose.

vloux commented 6 years ago

On est d'accord, mais c'est bien une dépendance de l'outil ?

davidchristiany commented 6 years ago

Non ce n'est pas un dépendance de l'outil, il ne fait pas parti des requirements. L'outil utilise donc la version de galaxy de java.

vloux commented 6 years ago

C'est donc bien de là dont vient le souci. Il n'y a pas de Java installé par Galaxy, il utilise donc le java du serveur, sans mettre de contrainte sur la version.

vloux commented 6 years ago

Deux façons de faire à mon sens :

La seconde est sans doute la + simple, mais la plus sale.

yvandenb commented 5 years ago

Test sur l'outil HeatMap (dev-migale ProteoRE -> Other tools -> HeatMap) history : Heat_Map_Test shared with David

  1. que ce soit un tableau à 1000 entrées ou 250 les display en html via l'interface sont lents...is it normal ?
  2. si testés avec des output figés (pdf, png) : display immédiat OK
  3. pas d'ouput textuel: ce serait bien me semble t'il pour manipuler les clusters générés et faire des analyses ? est-ce possible ?
yvandenb commented 5 years ago

Tested on dev-migale: History: "Heat_Map_Test" : shared with David

De façon générale, comment se passe la gestion des "NA" avec cet outil ? c'est fréquent qu'il y ait des NaN en "omics

yvandenb commented 5 years ago

Les displays sont très écrasés (même avec peu de lignes) et l'espace d'affichage disponible ne semble pas utilisé de façon optimale => comment gérer le layout en HTML, png…un auto-sizing en fonction du nombre de lignes de l'input file est-il possible ? Pas une priorité