# HG changeset patch # User galaxyp # Date 1623521188 0 # Node ID 57f01ca855cd81c393e772391af2ede7b6378262 "planemo upload commit 47d779aa1de5153673ac8bb1e37c9730210cbb5d" diff -r 000000000000 -r 57f01ca855cd README.rst --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/README.rst Sat Jun 12 18:06:28 2021 +0000 @@ -0,0 +1,49 @@ +Wrapper for JVenn Diagram Tool +============================== + +**Authors** + +Philippe Bardou, Jérôme Mariette, Frédéric Escudié, Christophe Djemiel and Christophe Klopp. jvenn: an interactive Venn diagram viewer. BMC Bioinformatics 2014, 15:293 doi:10.1186/1471-2105-15-293 + +**Galaxy integration** + +T.P. Lien Nguyen, Florence Combes, Yves Vandenbrouck CEA, INSERM, CNRS, Grenoble-Alpes University, BIG Institute, FR + +Sandra Dérozier, Olivier Rué, Christophe Caron, Valentin Loux INRA, Paris-Saclay University, MAIAGE Unit,Migale Bioinformatics platform + +Contact support@proteore.org for any questions or concerns about the Galaxy implementation of this tool. + +------------------------------ + +This tool draw a venn diagram from lists/files using Jvenn plug-in (http://jvenn.toulouse.inra.fr/app/index.html). It also creates output files that contain common or specific elements between query and each compared lists/files. + +**Inputs** + +* **Query file:** A file containing different information of proteins, could be output of previous components. + +* **File of a list of IDs:** .TXT format, each line contains 1 ID + + AMY1A + + ALB + + IGKC + + CSTA + + IGHA1 + + ACTG1 + +* **List of IDs:** IDs separated by a space + AMY1A ALB IGKC CSTA IGHA1 ACTG1 + +If you choose a file, it is necessary to specify the column where you would like to perform the comparison. + +**Outputs** + +* **Summary file** (venn_diagram_summary.html): + Venn diagram: Could be downloaded as image (PNG, SVG) + +* **Venn text output file** + A text file containing common/specific elements among compared lists/files. diff -r 000000000000 -r 57f01ca855cd jvenn_template.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/jvenn_template.html Sat Jun 12 18:06:28 2021 +0000 @@ -0,0 +1,228 @@ + + + + + Jvenn+ + + + + + + + + + + + + + + + + + + + +

+ javascript is needed to display data.
+ If you try to view this data on galaxy please contact your administrator to authorise javascript or download the file to view. +

+ + +
+ + + + + diff -r 000000000000 -r 57f01ca855cd releases_notes.rst --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/releases_notes.rst Sat Jun 12 18:06:28 2021 +0000 @@ -0,0 +1,19 @@ +============================= +Venn diagram - Releases Notes +============================= + +================== +2019-05-13 Release +================== + +New +--- + +Improvements +------------ + +- handle multiple IDs per line in input file (";" separated) +- better handle of copy/paste + +Fixes +----- diff -r 000000000000 -r 57f01ca855cd test-data/Bredberg.txt --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/Bredberg.txt Sat Jun 12 18:06:28 2021 +0000 @@ -0,0 +1,121 @@ +P04637 +P31947 +P63104 +P60709 +P43652 +P02763 +P04217 +P01023 +P04083 +P07355 +P12429 +P08758 +P01008 +P02647 +P02649 +P05089 +P61769 +Q13867 +P27482 +P07339 +P00450 +Q9NSK0 +P10909 +P23528 +P02747 +P06681 +P01024 +P0C0L4 +P0C0L5 +Q15517 +P22528 +P01036 +Q9UGM3 +Q02413 +Q86SJ6 +P61916 +A2IPI6 +P04117 +Q01469 +Q5D862 +Q8NF17 +Q08380 +P04406 +P11217 +P00738 +P07900 +P08238 +P68871 +P02790 +B4E1Z4 +P04196 +P62807 +P62805 +Q86YZ3 +P05362 +P01880 +P01765 +P01598 +P01613 +P01611 +P01617 +P01621 +P06313 +P01625 +P15814 +P80748 +P01714 +P01717 +A4F255 +P01591 +P19827 +P01011 +P01009 +P02751 +P06396 +P02774 +P01871 +Q14624 +Q13835 +P15924 +P02788 +P04233 +P31025 +P00338 +P61626 +P22897 +Q9UL86 +Q9UL77 +Q9UL83 +P59665 +P80188 +O95613 +Q96S96 +P05155 +P01833 +P07737 +P12273 +Q16378 +P02760 +P05109 +Q08188 +P00734 +Q8IWL2 +P11686 +A0A0U1RVJ5 +Q6N093 +Q6MZX7 +Q7Z351 +A0N5G5 +P02787 +Q96P63 +P02768 +P01622 +Q9BYE4 +Q9UBC9 +O95436 +P10599 +P02766 +Q13885 +P25311 +Q96DA0 diff -r 000000000000 -r 57f01ca855cd test-data/ID_Converter_FKW_Lacombe_et_al_2017_OK.txt --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/ID_Converter_FKW_Lacombe_et_al_2017_OK.txt Sat Jun 12 18:06:28 2021 +0000 @@ -0,0 +1,152 @@ +Protein accession number (UniProt) Protein name Number of peptides (razor + unique) neXtProt_ID UniProt.ID GeneID MIM Ensembl +P15924 Desmoplakin 69 NX_P15924 DESP_HUMAN 1832 125647; 605676; 607450; 607655; 609638; 612908; 615821 ENSG00000096696 +P02538 Keratin, type II cytoskeletal 6A 53 NX_P02538 K2C6A_HUMAN 3853 148041; 615726 ENSG00000205420 +P02768 Serum albumin 44 NX_P02768 ALBU_HUMAN 213 103600; 615999; 616000 ENSG00000163631 +P08779 Keratin, type I cytoskeletal 16 29 NX_P08779 K1C16_HUMAN 3868 148067; 167200; 613000 ENSG00000186832 +Q02413 Desmoglein-1 24 NX_Q02413 DSG1_HUMAN 1828 125670; 148700; 615508 ENSG00000134760 +P07355 Annexin A2;Putative annexin A2-like protein 22 NX_P07355 ANXA2_HUMAN 302 151740 ENSG00000182718 +P14923 Junction plakoglobin 22 NX_P14923 PLAK_HUMAN 3728 173325; 601214; 611528 ENSG00000173801 +P02788 Lactotransferrin 21 NX_P02788 TRFL_HUMAN 4057 150210 ENSG00000012223 +Q9HC84 Mucin-5B 21 NX_Q9HC84 MUC5B_HUMAN 727897 178500; 600770 ENSG00000117983 +P29508 Serpin B3 20 NX_P29508 SPB3_HUMAN 6317 600517 ENSG00000057149 +P63261 Actin, cytoplasmic 2 19 NX_P63261 ACTG_HUMAN 71 102560; 604717; 614583 ENSG00000184009 +Q8N1N4 Keratin, type II cytoskeletal 78 18 NX_Q8N1N4 K2C78_HUMAN 196374 611159 ENSG00000170423 +Q04695 Keratin, type I cytoskeletal 17 18 NX_Q04695 K1C17_HUMAN 3872 148069; 167210; 184500 ENSG00000128422 +P01876 Ig alpha-1 chain C region 16 NX_P01876 IGHA1_HUMAN NA 146900 ENSG00000211895; ENSG00000282633 +Q01469 Fatty acid-binding protein 5, epidermal 15 NX_Q01469 FABP5_HUMAN 2171 605168 ENSG00000164687 +P31944 Caspase-14 15 NX_P31944 CASPE_HUMAN 23581 605848; 617320 ENSG00000105141 +P01833 Polymeric immunoglobulin receptor 15 NX_P01833 PIGR_HUMAN 5284 173880 ENSG00000162896 +P06733 Alpha-enolase 15 NX_P06733 ENOA_HUMAN 2023 172430 ENSG00000074800 +P25311 Zinc-alpha-2-glycoprotein 15 NX_P25311 ZA2G_HUMAN 563 194460 ENSG00000160862 +Q15149 Plectin 15 NX_Q15149 PLEC_HUMAN 5339 131950; 226670; 601282; 612138; 613723; 616487 ENSG00000178209 +P19013 Keratin, type II cytoskeletal 4 13 NX_P19013 K2C4_HUMAN NA 123940; 193900 ENSG00000170477 +Q6KB66 Keratin, type II cytoskeletal 80 13 NX_Q6KB66 K2C80_HUMAN 144501 611161 ENSG00000167767 +Q08188 Protein-glutamine gamma-glutamyltransferase E 12 NX_Q08188 TGM3_HUMAN 7053 600238; 617251 ENSG00000125780 +P13646 Keratin, type I cytoskeletal 13 11 NX_P13646 K1C13_HUMAN 3860 148065; 615785 ENSG00000171401 +Q86YZ3 Hornerin 11 NX_Q86YZ3 HORN_HUMAN 388697 616293 ENSG00000197915 +P04259 Keratin, type II cytoskeletal 6B 10 NX_P04259 K2C6B_HUMAN 3854 148042; 615728 ENSG00000185479 +P02545 Prelamin-A/C;Lamin-A/C 10 NX_P02545 LMNA_HUMAN 4000 115200; 150330; 151660; 159001; 176670; 181350; 212112; 248370; 275210; 605588; 610140; 613205; 616516 ENSG00000160789 +P04083 Annexin A1 10 NX_P04083 ANXA1_HUMAN 301 151690 ENSG00000135046 +P11021 78 kDa glucose-regulated protein 10 NX_P11021 GRP78_HUMAN 3309 138120 ENSG00000044574 +P02787 Serotransferrin 9 NX_P02787 TRFE_HUMAN 7018 190000; 209300 ENSG00000091513 +P04040 Catalase 9 NX_P04040 CATA_HUMAN 847 115500; 614097 ENSG00000121691 +P31151 Protein S100-A7 9 NX_P31151 S10A7_HUMAN 6278 600353 ENSG00000143556 +P31947 14-3-3 protein sigma 9 NX_P31947 1433S_HUMAN 2810 601290 ENSG00000175793 +Q96P63 Serpin B12 9 NX_Q96P63 SPB12_HUMAN 89777 615662 ENSG00000166634 +P14618 Pyruvate kinase PKM 9 NX_P14618 KPYM_HUMAN 5315 179050 ENSG00000067225 +P60174 Triosephosphate isomerase 9 NX_P60174 TPIS_HUMAN 7167 190450; 615512 ENSG00000111669 +Q06830 Peroxiredoxin-1 9 NX_Q06830 PRDX1_HUMAN 5052 176763 ENSG00000117450 +P01040 Cystatin-A 8 NX_P01040 CYTA_HUMAN 1475 184600; 607936 ENSG00000121552 +P05089 Arginase-1 8 NX_P05089 ARGI1_HUMAN 383 207800; 608313 ENSG00000118520 +P01834 Ig kappa chain C region 8 NX_P01834 IGKC_HUMAN NA 147200; 614102 NA +P04406 Glyceraldehyde-3-phosphate dehydrogenase 8 NX_P04406 G3P_HUMAN 2597 138400 ENSG00000111640 +P0DMV9 Heat shock 70 kDa protein 1B 8 NX_P0DMV9 HS71B_HUMAN 3303; 3304 140550; 603012 ENSG00000204388; ENSG00000224501; ENSG00000212866; ENSG00000231555; ENSG00000232804 +P13639 Elongation factor 2 8 NX_P13639 EF2_HUMAN 1938 130610; 609306 ENSG00000167658 +P35579 Myosin-9 8 NX_P35579 MYH9_HUMAN 4627 153640; 153650; 155100; 160775; 600208; 603622; 605249 ENSG00000100345 +P68371 Tubulin beta-4B chain 8 NX_P68371 TBB4B_HUMAN 10383 602660 ENSG00000188229 +Q8WVV4 Protein POF1B 8 NX_Q8WVV4 POF1B_HUMAN 79983 300603; 300604 ENSG00000124429 +O75635 Serpin B7 7 NX_O75635 SPB7_HUMAN 8710 603357; 615598 ENSG00000166396 +P01857 Ig gamma-1 chain C region 7 NX_P01857 IGHG1_HUMAN NA 147100; 254500 ENSG00000211896; ENSG00000277633 +P61626 Lysozyme C 7 NX_P61626 LYSC_HUMAN 4069 105200; 153450 ENSG00000090382 +P68363 Tubulin alpha-1B chain 7 NX_P68363 TBA1B_HUMAN 10376 602530 ENSG00000123416 +P01009 Alpha-1-antitrypsin;Short peptide from AAT 6 NX_P01009 A1AT_HUMAN 5265 107400; 613490 ENSG00000197249 +P07900 Heat shock protein HSP 90-alpha 6 NX_P07900 HS90A_HUMAN 3320 140571 ENSG00000080824 +Q9NZH8 Interleukin-36 gamma 6 NX_Q9NZH8 IL36G_HUMAN 56300 605542 ENSG00000136688 +O43707 Alpha-actinin-4;Alpha-actinin-1 6 NX_O43707 ACTN4_HUMAN 81 603278; 604638 ENSG00000130402; ENSG00000282844 +O75223 Gamma-glutamylcyclotransferase 6 NX_O75223 GGCT_HUMAN 79017 137170 ENSG00000006625 +P00338 L-lactate dehydrogenase A chain 6 NX_P00338 LDHA_HUMAN 3939 150000; 612933 ENSG00000134333 +P07339 Cathepsin D 6 NX_P07339 CATD_HUMAN 1509 116840; 610127 ENSG00000117984 +P62987 Ubiquitin-60S ribosomal protein L40 6 NX_P62987 RL40_HUMAN 7311 191321 ENSG00000221983 +P10599 Thioredoxin 6 NX_P10599 THIO_HUMAN 7295 187700 ENSG00000136810 +Q9UGM3 Deleted in malignant brain tumors 1 protein 6 NX_Q9UGM3 DMBT1_HUMAN 1755 137800; 601969 ENSG00000187908 +Q9UI42 Carboxypeptidase A4 6 NX_Q9UI42 CBPA4_HUMAN 51200 607635 ENSG00000128510 +P47929 Galectin-7 5 NX_P47929 LEG7_HUMAN 3963; 653499 600615; 617139 ENSG00000178934; ENSG00000205076; ENSG00000282902; ENSG00000283082 +Q13867 Bleomycin hydrolase 5 NX_Q13867 BLMH_HUMAN 642 602403 ENSG00000108578 +Q6P4A8 Phospholipase B-like 1 5 NX_Q6P4A8 PLBL1_HUMAN 79887 NA ENSG00000121316 +O75369 Filamin-B 5 NX_O75369 FLNB_HUMAN 2317 108720; 108721; 112310; 150250; 272460; 603381 ENSG00000136068 +P00441 Superoxide dismutase [Cu-Zn] 5 NX_P00441 SODC_HUMAN 6647 105400; 147450 ENSG00000142168 +P04792 Heat shock protein beta-1 5 NX_P04792 HSPB1_HUMAN 3315 602195; 606595; 608634 ENSG00000106211 +P11142 Heat shock cognate 71 kDa protein 5 NX_P11142 HSP7C_HUMAN 3312 600816 ENSG00000109971 +P58107 Epiplakin 5 NX_P58107 EPIPL_HUMAN 83481 607553 NA +P60842 Eukaryotic initiation factor 4A-I 5 NX_P60842 IF4A1_HUMAN 1973 602641 ENSG00000161960 +P62937 Peptidyl-prolyl cis-trans isomerase A 5 NX_P62937 PPIA_HUMAN 5478 123840 ENSG00000196262 +P63104 14-3-3 protein zeta/delta 5 NX_P63104 1433Z_HUMAN 7534 601288 ENSG00000164924 +Q92820 Gamma-glutamyl hydrolase 5 NX_Q92820 GGH_HUMAN 8836 601509 ENSG00000137563 +O75342 Arachidonate 12-lipoxygenase, 12R-type 4 NX_O75342 LX12B_HUMAN 242 242100; 603741 ENSG00000179477 +P09211 Glutathione S-transferase P 4 NX_P09211 GSTP1_HUMAN 2950 134660 ENSG00000084207 +P31025 Lipocalin-1 4 NX_P31025 LCN1_HUMAN 3933 151675 ENSG00000160349 +P48594 Serpin B4 4 NX_P48594 SPB4_HUMAN 6318 600518 ENSG00000206073 +Q14574 Desmocollin-3 4 NX_Q14574 DSC3_HUMAN 1825 600271; 613102 ENSG00000134762 +Q5T750 Skin-specific protein 32 4 NX_Q5T750 XP32_HUMAN 100129271 NA ENSG00000198854 +Q6UWP8 Suprabasin 4 NX_Q6UWP8 SBSN_HUMAN 374897 609969 ENSG00000189001 +O60911 Cathepsin L2 4 NX_O60911 CATL2_HUMAN 1515 603308 ENSG00000136943 +P00558 Phosphoglycerate kinase 1 4 NX_P00558 PGK1_HUMAN 5230 300653; 311800 ENSG00000102144 +P04075 Fructose-bisphosphate aldolase A 4 NX_P04075 ALDOA_HUMAN 226 103850; 611881 ENSG00000149925 +P07384 Calpain-1 catalytic subunit 4 NX_P07384 CAN1_HUMAN 823 114220; 616907 ENSG00000014216 +P0CG05 Ig lambda-2 chain C regions 4 NA NA NA NA NA +P18206 Vinculin 4 NX_P18206 VINC_HUMAN 7414 193065; 611407; 613255 ENSG00000035403 +P62258 14-3-3 protein epsilon 4 NX_P62258 1433E_HUMAN 7531 605066 ENSG00000108953; ENSG00000274474 +P68871 Hemoglobin subunit beta 4 NX_P68871 HBB_HUMAN 3043 140700; 141900; 603902; 603903; 611162; 613985 ENSG00000244734 +Q9C075 Keratin, type I cytoskeletal 23 4 NX_Q9C075 K1C23_HUMAN 25984 606194 ENSG00000108244; ENSG00000263309 +A8K2U0 Alpha-2-macroglobulin-like protein 1 3 NX_A8K2U0 A2ML1_HUMAN 144568 610627 ENSG00000166535 +P00738 Haptoglobin 3 NX_P00738 HPT_HUMAN 3240 140100; 614081 ENSG00000257017 +P01011 Alpha-1-antichymotrypsin 3 NX_P01011 AACT_HUMAN 12 107280 ENSG00000196136 +P02763 Alpha-1-acid glycoprotein 1 3 NX_P02763 A1AG1_HUMAN 5004 138600 ENSG00000229314 +P18510 Interleukin-1 receptor antagonist protein 3 NX_P18510 IL1RA_HUMAN 3557 147679; 612628; 612852 ENSG00000136689 +P22528 Cornifin-B 3 NX_P22528 SPR1B_HUMAN 6699 182266 ENSG00000169469 +P30740 Leukocyte elastase inhibitor 3 NX_P30740 ILEU_HUMAN 1992 130135 ENSG00000021355 +P80188 Neutrophil gelatinase-associated lipocalin 3 NX_P80188 NGAL_HUMAN 3934 600181 ENSG00000148346 +Q15828 Cystatin-M 3 NX_Q15828 CYTM_HUMAN 1474 601891 ENSG00000175315 +Q9HCY8 Protein S100-A14 3 NX_Q9HCY8 S10AE_HUMAN 57402 607986 ENSG00000189334 +P01623 Ig kappa chain V-III region 3 NA NA NA NA NA +P01877 Ig alpha-2 chain C region 3 NX_P01877 IGHA2_HUMAN NA 147000 ENSG00000211890 +P06396 Gelsolin 3 NX_P06396 GELS_HUMAN 2934 105120; 137350 ENSG00000148180 +P14735 Insulin-degrading enzyme 3 NX_P14735 IDE_HUMAN 3416 146680 ENSG00000119912 +P20933 N(4)-(beta-N-acetylglucosaminyl)-L-asparaginase 3 NX_P20933 ASPG_HUMAN 175 208400; 613228 ENSG00000038002 +P25788 Proteasome subunit alpha type-3 3 NX_P25788 PSA3_HUMAN 5684 176843; 176845 ENSG00000100567 +P26641 Elongation factor 1-gamma 3 NX_P26641 EF1G_HUMAN 1937 130593 ENSG00000254772 +P36952 Serpin B5 3 NX_P36952 SPB5_HUMAN 5268 154790 ENSG00000206075 +P40926 Malate dehydrogenase, mitochondrial 3 NX_P40926 MDHM_HUMAN 4191 154100; 617339 ENSG00000146701 +Q9Y6R7 IgGFc-binding protein 3 NX_Q9Y6R7 FCGBP_HUMAN 8857 617553 ENSG00000281123 +O95274 Ly6/PLAUR domain-containing protein 3 2 NX_O95274 LYPD3_HUMAN 27076 609484 ENSG00000124466 +P00491 Purine nucleoside phosphorylase 2 NX_P00491 PNPH_HUMAN 4860 164050; 613179 ENSG00000198805 +P04080 Cystatin-B 2 NX_P04080 CYTB_HUMAN 1476 254800; 601145 ENSG00000160213 +P09972 Fructose-bisphosphate aldolase C 2 NX_P09972 ALDOC_HUMAN 230 103870 ENSG00000109107 +P19012 Keratin, type I cytoskeletal 15 2 NX_P19012 K1C15_HUMAN 3866 148030 ENSG00000171346 +P20930 Filaggrin 2 NX_P20930 FILA_HUMAN 2312 135940; 146700; 605803 ENSG00000143631 +Q96FX8 p53 apoptosis effector related to PMP-22 2 NX_Q96FX8 PERP_HUMAN 64065 609301 ENSG00000112378 +Q9UIV8 Serpin B13 2 NX_Q9UIV8 SPB13_HUMAN 5275 604445 ENSG00000197641 +P01625 Ig kappa chain V-IV region Len 2 NA NA NA NA NA +P01765 Ig heavy chain V-III region TIL 2 NA NA NA NA NA +P01766 Ig heavy chain V-III region BRO 2 NX_P01766 HV313_HUMAN NA NA ENSG00000211942; ENSG00000282286 +P01860 Ig gamma-3 chain C region 2 NX_P01860 IGHG3_HUMAN NA 147120 NA +P01871 Ig mu chain C region 2 NX_P01871 IGHM_HUMAN NA 147020; 601495 ENSG00000211899; ENSG00000282657 +P05090 Apolipoprotein D 2 NX_P05090 APOD_HUMAN 347 107740 ENSG00000189058 +P06870 Kallikrein-1 2 NX_P06870 KLK1_HUMAN 3816 147910; 615953 ENSG00000167748 +P07858 Cathepsin B 2 NX_P07858 CATB_HUMAN 1508 116810 ENSG00000164733 +P08865 40S ribosomal protein SA 2 NX_P08865 RSSA_HUMAN 3921 150370; 271400 ENSG00000168028 +P11279 Lysosome-associated membrane glycoprotein 1 2 NX_P11279 LAMP1_HUMAN 3916 153330 ENSG00000185896 +P13473 Lysosome-associated membrane glycoprotein 2 2 NX_P13473 LAMP2_HUMAN 3920 300257; 309060 ENSG00000005893 +P19971 Thymidine phosphorylase 2 NX_P19971 TYPH_HUMAN 1890 131222; 603041 ENSG00000025708 +P23284 Peptidyl-prolyl cis-trans isomerase B 2 NX_P23284 PPIB_HUMAN 5479 123841; 259440 ENSG00000166794 +P23396 40S ribosomal protein S3 2 NX_P23396 RS3_HUMAN 6188 600454 ENSG00000149273 +P25705 ATP synthase subunit alpha, mitochondrial 2 NX_P25705 ATPA_HUMAN 498 164360; 615228; 616045 ENSG00000152234 +P27482 Calmodulin-like protein 3 2 NX_P27482 CALL3_HUMAN 810 114184 ENSG00000178363 +P31949 Protein S100-A11 2 NX_P31949 S10AB_HUMAN 6282 603114 ENSG00000163191 +P40121 Macrophage-capping protein 2 NX_P40121 CAPG_HUMAN 822 153615 ENSG00000042493 +P42357 Histidine ammonia-lyase 2 NX_P42357 HUTH_HUMAN 3034 235800; 609457 ENSG00000084110 +P47756 F-actin-capping protein subunit beta 2 NX_P47756 CAPZB_HUMAN 832 601572 ENSG00000077549 +P48637 Glutathione synthetase 2 NX_P48637 GSHB_HUMAN 2937 231900; 266130; 601002 ENSG00000100983 +P49720 Proteasome subunit beta type-3 2 NX_P49720 PSB3_HUMAN 5691 602176 ENSG00000277791; ENSG00000275903 +P50395 Rab GDP dissociation inhibitor beta 2 NX_P50395 GDIB_HUMAN 2665 600767 ENSG00000057608 +P59998 Actin-related protein 2/3 complex subunit 4 2 NX_P59998 ARPC4_HUMAN 10093 604226 ENSG00000241553 +P61160 Actin-related protein 2 2 NX_P61160 ARP2_HUMAN 10097 604221 ENSG00000138071 +P61916 Epididymal secretory protein E1 2 NX_P61916 NPC2_HUMAN 10577 601015; 607625 ENSG00000119655 +P04745 Alpha-amylase 1 23 NX_P04745 AMY1_HUMAN 276; 277; 278 104700; 104701; 104702 ENSG00000174876; ENSG00000187733; ENSG00000237763 +Q9NZT1 Calmodulin-like protein 5 8 NX_Q9NZT1 CALL5_HUMAN 51806 605183 ENSG00000178372 +P12273 Prolactin-inducible protein 6 NX_P12273 PIP_HUMAN 5304 176720 ENSG00000159763 +Q96DA0 Zymogen granule protein 16 homolog B 5 NX_Q96DA0 ZG16B_HUMAN 124220 NA ENSG00000162078; ENSG00000283056 +P01036 Cystatin-S 5 NX_P01036 CYTS_HUMAN 1472 123857 ENSG00000101441 +Q8TAX7 Mucin-7 2 NX_Q8TAX7 MUC7_HUMAN 4589 158375; 600807 ENSG00000171195 +P01037 Cystatin-SN 2 NX_P01037 CYTN_HUMAN 1469 123855 ENSG00000170373 +P09228 Cystatin-SA 2 NX_P09228 CYTT_HUMAN 1470 123856 ENSG00000170369 diff -r 000000000000 -r 57f01ca855cd test-data/Mucilli.txt --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/Mucilli.txt Sat Jun 12 18:06:28 2021 +0000 @@ -0,0 +1,167 @@ +P04264 +P35908 +P35527 +P04259 +P13647 +P08779 +P02533 +Q04695 +P01040 +P13645 +P59665 +Q01469 +Q9NZT1 +P22531 +P04792 +P01834 +Q96KK5 +Q06830 +P60709 +P13646 +P31949 +P06702 +P14923 +Q13835 +P60174 +P07737 +P62805 +P31947 +P10599 +P15924 +Q6UWP8 +P02768 +Q6KB66 +P12035 +P47929 +P04406 +P17931 +Q3ZCW2 +P63167 +P63104 +P0CG48 +Q5XKE5 +P11142 +P06733 +Q7Z794 +P01593 +Q9NZH8 +P14174 +P01620 +P36952 +P68104 +O60814 +Q8N1N4 +P00338 +Q02413 +P07355 +P52907 +Q6ZVX7 +P08865 +P09211 +Q96P63 +P68371 +P30041 +P27482 +P08107 +P22392 +P29508 +P01861 +Q08188 +Q9C075 +P14618 +P31025 +P02679 +P54652 +Q13748 +P01857 +P80188 +P35321 +P02675 +P19013 +Q14CN4 +P37802 +P05783 +P51149 +P01876 +P28072 +Q86YZ3 +Q5T749 +P28070 +P05109 +P02671 +P58107 +Q5T750 +P04040 +P00558 +P62244 +P03973 +Q6E0U4 +P47756 +P13639 +P68431 +P32119 +Q8WVV4 +Q96QA5 +P68871 +Q9Y337 +P11021 +P01871 +P61626 +P25311 +P22735 +P30050 +P06576 +O43175 +O43790 +P37837 +P04083 +P04075 +P02545 +P50990 +O43707 +Q5D862 +P17900 +O75223 +Q14134 +Q08554 +P60842 +P00738 +P07476 +P05120 +P28074 +O15523 +P25787 +P13489 +P05091 +P31944 +P23490 +P05090 +P06396 +P49862 +P18206 +P15880 +P05089 +P40925 +P40926 +P20933 +Q9UIV8 +Q5VVQ6 +P07900 +P02788 +Q9Y3R4 +P23526 +P07339 +Q15517 +Q8IW75 +P49189 +P01023 +P26641 +P61978 +P10809 +P29401 +O75369 +Q15365 +P29373 +P14735 +Q14210 +Q9Y277 diff -r 000000000000 -r 57f01ca855cd test-data/Venn_diagram_html.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/Venn_diagram_html.html Sat Jun 12 18:06:28 2021 +0000 @@ -0,0 +1,228 @@ + + + + + Jvenn+ + + + + + + + + + + + + + + + + + + + +

+ javascript is needed to display data.
+ If you try to view this data on galaxy please contact your administrator to authorise javascript or download the file to view. +

+ + +
+ + + + + diff -r 000000000000 -r 57f01ca855cd test-data/Venn_text_output.txt --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/Venn_text_output.txt Sat Jun 12 18:06:28 2021 +0000 @@ -0,0 +1,228 @@ + + + + + Jvenn+ + + + + + + + + + + + + + + + + + + + +

+ javascript is needed to display data.
+ If you try to view this data on galaxy please contact your administrator to authorise javascript or download the file to view. +

+ + +
+ + + + + diff -r 000000000000 -r 57f01ca855cd venn_diagram.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/venn_diagram.py Sat Jun 12 18:06:28 2021 +0000 @@ -0,0 +1,204 @@ +#!/usr/bin/env python + +import argparse +import csv +import json +import os +import re +from itertools import combinations + + +CURRENT_DIR = os.path.dirname(os.path.abspath(__file__)) + +######################################################################## +# FUNCTIONS +######################################################################## + + +def isnumber(format, n): + """ + Check if an element is integer or float + """ + float_format = re.compile(r"^[-]?[1-9][0-9]*.?[0-9]+$") + int_format = re.compile(r"^[-]?[1-9][0-9]*$") + test = "" + if format == "int": + test = re.match(int_format, n) + elif format == "float": + test = re.match(float_format, n) + if test: + return True + else: + return False + + +def input_to_dict(inputs): + """ + Parse input and return a dictionary of name and data of each lists/files + """ + comp_dict = {} + title_dict = {} + c = ["A", "B", "C", "D", "E", "F"] + for i in range(len(inputs)): + input_file = inputs[i][0] + name = inputs[i][1] + input_type = inputs[i][2] + title = c[i] + title_dict[title] = name + ids = set() + if input_type == "file": + header = inputs[i][3] + ncol = inputs[i][4] + with open(input_file, "r") as handle: + file_content = csv.reader(handle, delimiter="\t") + file_content = list(file_content) # csv object to list + + # Check if column number is in right form + if isnumber("int", ncol.replace("c", "")): + if header == "true": + # gets ids from defined column + file_content = [x for x in [line[int(ncol.replace("c", ""))-1].split(";") for line in file_content[1:]]] # noqa 501 + + else: + file_content = [x for x in [line[int(ncol.replace("c", ""))-1].split(";") for line in file_content]] # noqa 501 + else: + raise ValueError("Please fill in the right format of column number") # noqa 501 + else: + ids = set() + file_content = inputs[i][0].split() + file_content = [x.split(";") for x in file_content] + + # flat list of list of lists, remove empty items + file_content = [item.strip() for sublist in file_content for item in sublist if item != ''] # noqa 501 + ids.update(file_content) + if 'NA' in ids: + ids.remove('NA') + comp_dict[title] = ids + + return comp_dict, title_dict + + +def intersect(comp_dict): + """ + Calculate the intersections of input + """ + names = set(comp_dict) + for i in range(1, len(comp_dict) + 1): + for group in combinations(sorted(comp_dict), i): + others = set() + [others.add(name) for name in names if name not in group] + difference = [] + intersected = set.intersection(*(comp_dict[k] for k in group)) + if len(others) > 0: + difference = intersected.difference(set.union(*(comp_dict[k] for k in others))) # noqa 501 + yield group, list(intersected), list(difference) + + +def diagram(comp_dict, title_dict): + """ + Create json string for jvenn diagram plot + """ + result = {} + result["name"] = {} + for k in comp_dict.keys(): + result["name"][k] = title_dict[k] + + result["data"] = {} + result["values"] = {} + for group, intersected, difference in intersect(comp_dict): + if len(group) == 1: + result["data"]["".join(group)] = sorted(difference) + result["values"]["".join(group)] = len(difference) + elif len(group) > 1 and len(group) < len(comp_dict): + result["data"]["".join(group)] = sorted(difference) + result["values"]["".join(group)] = len(difference) + elif len(group) == len(comp_dict): + result["data"]["".join(group)] = sorted(intersected) + result["values"]["".join(group)] = len(intersected) + + return result + +# Write intersections of input to text output file + + +def write_text_venn(json_result): + lines = [] + result = dict((k, v) for k, v in json_result["data"].items() if v != []) # noqa 501 + for key in result: + if 'NA' in result[key]: + result[key].remove("NA") + + list_names = dict((k, v) for k, v in json_result["name"].items() if v != []) # noqa 501 + nb_lines_max = max(len(v) for v in result.values()) + + # get list names associated to each column + column_dict = {} + for key in result: + if key in list_names: + column_dict[key] = list_names[key] + else: + keys = list(key) + column_dict[key] = "_".join([list_names[k] for k in keys]) + + # construct tsv + for key in result: + line = result[key] + if len(line) < nb_lines_max: + line.extend([''] * (nb_lines_max - len(line))) + line = [column_dict[key]] + line # add header + lines.append(line) + # transpose tsv + lines = zip(*lines) + + with open("venn_diagram_text_output.tsv", "w") as output: + tsv_output = csv.writer(output, delimiter='\t') + tsv_output.writerows(lines) + + +def write_summary(summary_file, inputs): + """ + Paste json string into template file + """ + a, b = input_to_dict(inputs) + data = diagram(a, b) + write_text_venn(data) + + to_replace = { + "series": [data], + "displayStat": "true", + "displaySwitch": "true", + "shortNumber": "true", + } + + FH_summary_tpl = open(os.path.join(CURRENT_DIR, "jvenn_template.html")) + FH_summary_out = open(summary_file, "w") + for line in FH_summary_tpl: + if "###JVENN_DATA###" in line: + line = line.replace("###JVENN_DATA###", json.dumps(to_replace)) + FH_summary_out.write(line) + + FH_summary_out.close() + FH_summary_tpl.close() + + +def process(args): + write_summary(args.summary, args.input) + + +##################################################################### +# MAIN +##################################################################### +if __name__ == '__main__': + # Parse parameters + parser = argparse.ArgumentParser(description='Filters an abundance file') + group_input = parser.add_argument_group('Inputs') + group_input.add_argument('--input', nargs="+", action="append", + required=True, help="The input tabular file.") + group_output = parser.add_argument_group('Outputs') + group_output.add_argument('--summary', default="summary.html", + help="The HTML file containing the graphs. \ + [Default: %(default)s]") + args = parser.parse_args() + + # Process + process(args) diff -r 000000000000 -r 57f01ca855cd venn_diagram.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/venn_diagram.xml Sat Jun 12 18:06:28 2021 +0000 @@ -0,0 +1,177 @@ + + + with JVenn + + python + + + + + + + + + + + + + + [c]{0,1}[0-9]+ + + + + + + + + + + + + + + + + + + + + + + + + + + [a-zA-Z0-9._-]+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + doi:10.1186/1471-2105-15-293 + @book{toolsProteoRE, + journal = {GitHub repository}, + publisher = {GitHub}, + title = {ProteoRE tools}, + url = {https://github.com/galaxyproteomics/tools-galaxyp}, + author = {Lien Nguyen, David Chistiany, Florence Combes,Christophe Caron, Valentin Loux Yves Vandenbrouck}, + date = {2021}, + year = {2021}, + } + +