biopipen 0.32.1__tar.gz → 0.32.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of biopipen might be problematic. Click here for more details.
- {biopipen-0.32.1 → biopipen-0.32.3}/PKG-INFO +2 -2
- biopipen-0.32.3/biopipen/__init__.py +1 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/core/filters.py +45 -6
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/utils/misc.liq +6 -4
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/delim/SampleInfo.R +10 -1
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/CellsDistribution.R +31 -6
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/MarkersFinder.R +67 -16
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/MetaMarkers.R +16 -7
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/RadarPlots.R +22 -2
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/SeuratClusterStats-clustree.R +7 -1
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/SeuratClusterStats-dimplots.R +9 -2
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/SeuratClusterStats-features.R +21 -3
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/SeuratClusterStats-hists.R +7 -2
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/SeuratClusterStats-ngenes.R +6 -1
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/SeuratClusterStats-stats.R +13 -2
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/SeuratMap2Ref.R +7 -1
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/SeuratPreparing-common.R +15 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/SeuratPreparing-doublet_detection.R +6 -3
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/TopExpressingGenes.R +9 -7
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/CDR3AAPhyschem.R +12 -2
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/CloneResidency.R +23 -5
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/Immunarch-basic.R +8 -1
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/Immunarch-clonality.R +5 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/Immunarch-diversity.R +25 -4
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/Immunarch-geneusage.R +15 -1
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/Immunarch-kmer.R +14 -1
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/Immunarch-overlap.R +15 -1
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/Immunarch-spectratyping.R +10 -1
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/Immunarch-tracking.R +6 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/Immunarch-vjjunc.R +33 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/TCRClusterStats.R +24 -7
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/TESSA.R +6 -1
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/utils/gsea.R +21 -7
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/utils/plot.R +53 -17
- {biopipen-0.32.1 → biopipen-0.32.3}/pyproject.toml +1 -1
- {biopipen-0.32.1 → biopipen-0.32.3}/setup.py +1 -1
- biopipen-0.32.1/biopipen/__init__.py +0 -1
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/core/__init__.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/core/config.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/core/config.toml +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/core/defaults.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/core/proc.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/core/testing.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/ns/__init__.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/ns/bam.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/ns/bed.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/ns/cellranger.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/ns/cellranger_pipeline.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/ns/cnv.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/ns/cnvkit.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/ns/cnvkit_pipeline.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/ns/delim.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/ns/gene.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/ns/gsea.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/ns/misc.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/ns/plot.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/ns/protein.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/ns/regulatory.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/ns/rnaseq.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/ns/scrna.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/ns/scrna_metabolic_landscape.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/ns/snp.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/ns/stats.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/ns/tcgamaf.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/ns/tcr.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/ns/vcf.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/ns/web.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/bam/CNAClinic.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/bam/CNVpytor.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/bam/ControlFREEC.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/cellranger/CellRangerCount.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/cellranger/CellRangerSummary.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/cellranger/CellRangerVdj.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/cnv/AneuploidyScore.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/cnv/AneuploidyScoreSummary.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/cnv/TMADScoreSummary.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/cnvkit/CNVkitDiagram.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/cnvkit/CNVkitHeatmap.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/cnvkit/CNVkitScatter.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/delim/SampleInfo.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/gsea/FGSEA.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/gsea/GSEA.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/protein/ProdigySummary.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/scrna/CellCellCommunicationPlots.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/scrna/CellsDistribution.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/scrna/DimPlots.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/scrna/MarkersFinder.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/scrna/MetaMarkers.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/scrna/RadarPlots.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/scrna/ScFGSEA.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/scrna/SeuratClusterStats.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/scrna/SeuratMap2Ref.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/scrna/SeuratPreparing.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/scrna/TopExpressingGenes.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/scrna_metabolic_landscape/MetabolicFeatures.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/scrna_metabolic_landscape/MetabolicFeaturesIntraSubset.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/scrna_metabolic_landscape/MetabolicPathwayActivity.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/scrna_metabolic_landscape/MetabolicPathwayHeterogeneity.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/snp/PlinkCallRate.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/snp/PlinkFreq.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/snp/PlinkHWE.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/snp/PlinkHet.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/snp/PlinkIBD.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/tcr/CDR3AAPhyschem.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/tcr/CloneResidency.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/tcr/Immunarch.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/tcr/SampleDiversity.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/tcr/TCRClusterStats.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/tcr/TESSA.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/tcr/VJUsage.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/utils/gsea.liq +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/vcf/TruvariBenchSummary.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/reports/vcf/TruvariConsistency.svelte +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/bam/BamMerge.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/bam/BamSampling.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/bam/BamSplitChroms.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/bam/BamSubsetByBed.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/bam/CNAClinic.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/bam/CNVpytor.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/bam/ControlFREEC.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/bed/Bed2Vcf.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/bed/BedConsensus.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/bed/BedLiftOver.sh +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/bed/BedtoolsIntersect.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/bed/BedtoolsMakeWindows.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/bed/BedtoolsMerge.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/cellranger/CellRangerCount.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/cellranger/CellRangerSummary.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/cellranger/CellRangerVdj.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/cnv/AneuploidyScore.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/cnv/AneuploidyScoreSummary.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/cnv/TMADScore.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/cnv/TMADScoreSummary.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/cnvkit/CNVkitAccess.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/cnvkit/CNVkitAutobin.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/cnvkit/CNVkitBatch.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/cnvkit/CNVkitCall.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/cnvkit/CNVkitCoverage.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/cnvkit/CNVkitDiagram.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/cnvkit/CNVkitFix.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/cnvkit/CNVkitGuessBaits.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/cnvkit/CNVkitHeatmap.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/cnvkit/CNVkitReference.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/cnvkit/CNVkitScatter.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/cnvkit/CNVkitSegment.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/cnvkit/guess_baits.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/delim/RowsBinder.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/gene/GeneNameConversion.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/gene/GenePromoters.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/gsea/Enrichr.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/gsea/FGSEA.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/gsea/GSEA.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/gsea/PreRank.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/misc/Config2File.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/misc/Shell.sh +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/misc/Str2File.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/plot/Heatmap.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/plot/Manhattan.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/plot/QQPlot.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/plot/ROC.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/plot/Scatter.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/plot/VennDiagram.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/protein/Prodigy.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/protein/ProdigySummary.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/regulatory/MotifAffinityTest.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/regulatory/MotifAffinityTest_AtSNP.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/regulatory/MotifAffinityTest_MotifBreakR.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/regulatory/MotifScan.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/regulatory/VariantMotifPlot.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/regulatory/motifs-common.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/rnaseq/Simulation-ESCO.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/rnaseq/Simulation-RUVcorr.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/rnaseq/Simulation.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/rnaseq/UnitConversion.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/AnnData2Seurat.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/CCPlotR-patch.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/CellCellCommunication.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/CellCellCommunicationPlots.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/CellTypeAnnotation-celltypist.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/CellTypeAnnotation-common.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/CellTypeAnnotation-direct.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/CellTypeAnnotation-hitype.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/CellTypeAnnotation-sccatch.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/CellTypeAnnotation-sctype.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/CellTypeAnnotation.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/DimPlots.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/ExprImputation-alra.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/ExprImputation-rmagic.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/ExprImputation-scimpute.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/ExprImputation.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/ModuleScoreCalculator.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/SCImpute.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/ScFGSEA.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/ScSimulation.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/Seurat2AnnData.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/SeuratClusterStats.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/SeuratClustering-common.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/SeuratClustering.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/SeuratFilter.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/SeuratLoading.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/SeuratMetadataMutater.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/SeuratPreparing.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/SeuratSplit.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/SeuratSubClustering.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/SeuratSubset.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/SeuratTo10X.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/Subset10X.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/celltypist-wrapper.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna/sctype.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna_metabolic_landscape/MetabolicFeatures.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna_metabolic_landscape/MetabolicFeaturesIntraSubset.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna_metabolic_landscape/MetabolicPathwayActivity.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/scrna_metabolic_landscape/MetabolicPathwayHeterogeneity.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/snp/MatrixEQTL.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/snp/Plink2GTMat.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/snp/PlinkCallRate.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/snp/PlinkFilter.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/snp/PlinkFreq.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/snp/PlinkFromVcf.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/snp/PlinkHWE.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/snp/PlinkHet.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/snp/PlinkIBD.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/snp/PlinkSimulation.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/snp/PlinkUpdateName.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/stats/ChowTest.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/stats/DiffCoexpr.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/stats/LiquidAssoc.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/stats/Mediation.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/stats/MetaPvalue.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/stats/MetaPvalue1.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcgamaf/Maf2Vcf.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcgamaf/MafAddChr.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcgamaf/maf2vcf.pl +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/Attach2Seurat.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/CloneSizeQQPlot.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/GIANA/GIANA.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/GIANA/GIANA4.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/GIANA/Imgt_Human_TRBV.fasta +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/GIANA/query.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/Immunarch.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/Immunarch2VDJtools.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/ImmunarchFilter.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/ImmunarchLoading.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/ImmunarchSplitIdents.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/SampleDiversity.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/TCRClustering.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/TCRDock.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/TESSA_source/Atchley_factors.csv +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/TESSA_source/BriseisEncoder.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/TESSA_source/MCMC_control.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/TESSA_source/TrainedEncoder.h5 +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/TESSA_source/fixed_b.csv +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/TESSA_source/initialization.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/TESSA_source/post_analysis.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/TESSA_source/real_data.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/TESSA_source/update.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/TESSA_source/utility.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/VJUsage.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/immunarch-patched.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/tcr/vdjtools-patch.sh +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/vcf/BcftoolsAnnotate.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/vcf/BcftoolsFilter.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/vcf/BcftoolsSort.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/vcf/BcftoolsView.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/vcf/TruvariBench.sh +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/vcf/TruvariBenchSummary.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/vcf/TruvariConsistency.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/vcf/Vcf2Bed.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/vcf/VcfAnno.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/vcf/VcfDownSample.sh +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/vcf/VcfFilter.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/vcf/VcfFix.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/vcf/VcfFix_utils.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/vcf/VcfIndex.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/vcf/VcfIntersect.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/vcf/VcfLiftOver.sh +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/vcf/VcfSplitSamples.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/vcf/bcftools_utils.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/web/Download.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/web/DownloadList.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/web/GCloudStorageDownloadBucket.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/web/GCloudStorageDownloadFile.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/scripts/web/gcloud_common.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/utils/__init__.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/utils/caching.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/utils/common_docstrs.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/utils/gene.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/utils/gene.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/utils/io.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/utils/misc.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/utils/misc.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/utils/mutate_helpers.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/utils/reference.py +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/utils/rnaseq.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/utils/single_cell.R +0 -0
- {biopipen-0.32.1 → biopipen-0.32.3}/biopipen/utils/vcf.py +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "0.32.3"
|
|
@@ -15,7 +15,7 @@ filtermanager = FilterManager()
|
|
|
15
15
|
@filtermanager.register
|
|
16
16
|
def dict_to_cli_args(
|
|
17
17
|
dic: Mapping[str, Any],
|
|
18
|
-
exclude: List[str] = None,
|
|
18
|
+
exclude: List[str] | None = None,
|
|
19
19
|
prefix: str | None = None,
|
|
20
20
|
sep: str | None = " ",
|
|
21
21
|
dup_key: bool = True,
|
|
@@ -118,7 +118,7 @@ def dict_to_cli_args(
|
|
|
118
118
|
def r(
|
|
119
119
|
obj: Any,
|
|
120
120
|
ignoreintkey: bool = True,
|
|
121
|
-
todot: str = None,
|
|
121
|
+
todot: str | None = None,
|
|
122
122
|
sortkeys: bool = False,
|
|
123
123
|
skip: int = 0,
|
|
124
124
|
_i: int = 0,
|
|
@@ -271,9 +271,22 @@ def _render_fgsea(
|
|
|
271
271
|
"title": "Plot",
|
|
272
272
|
"ui": "flat",
|
|
273
273
|
"contents": [
|
|
274
|
+
{
|
|
275
|
+
"kind": "descr",
|
|
276
|
+
"content": (
|
|
277
|
+
"This table presents a comprehensive summary of the "
|
|
278
|
+
"top enriched pathways derived from the fgsea. "
|
|
279
|
+
"Each row corresponds to a pathway, and the gene ranks "
|
|
280
|
+
"are shown based on the ranking metric used in the "
|
|
281
|
+
"analysis. The enrichment score, p-value, and adjusted "
|
|
282
|
+
"p-value are also provided to assess the significance "
|
|
283
|
+
"of the enrichment."
|
|
284
|
+
)
|
|
285
|
+
},
|
|
274
286
|
{
|
|
275
287
|
"kind": "image",
|
|
276
288
|
"src": str(Path(cont["dir"]).joinpath("gsea_table.png")),
|
|
289
|
+
"download": str(Path(cont["dir"]).joinpath("gsea_table.pdf"))
|
|
277
290
|
}
|
|
278
291
|
],
|
|
279
292
|
},
|
|
@@ -281,6 +294,19 @@ def _render_fgsea(
|
|
|
281
294
|
"title": "Table",
|
|
282
295
|
"ui": "flat",
|
|
283
296
|
"contents": [
|
|
297
|
+
{
|
|
298
|
+
"kind": "descr",
|
|
299
|
+
"content": (
|
|
300
|
+
"This plot represents the GSEA results for a specified "
|
|
301
|
+
"gene set, illustrating the distribution and impact of "
|
|
302
|
+
"the gene set along the ranked list of genes. "
|
|
303
|
+
"The running enrichment score curve shows the "
|
|
304
|
+
"cumulative enrichment score as genes from the input "
|
|
305
|
+
"list are encountered. Positive peaks on the curve "
|
|
306
|
+
"indicate regions where members of the gene set are "
|
|
307
|
+
"predominantly found."
|
|
308
|
+
)
|
|
309
|
+
},
|
|
284
310
|
{
|
|
285
311
|
"kind": "table",
|
|
286
312
|
"src": str(Path(cont["dir"]).joinpath("fgsea.txt")),
|
|
@@ -297,6 +323,7 @@ def _render_fgsea(
|
|
|
297
323
|
"contents": [
|
|
298
324
|
{
|
|
299
325
|
"src": str(Path(cont["dir"]) / f"fgsea_{slug}.png"),
|
|
326
|
+
"download": str(Path(cont["dir"]) / f"fgsea_{slug}.pdf"),
|
|
300
327
|
"title": pw,
|
|
301
328
|
}
|
|
302
329
|
for pw, slug in pathways
|
|
@@ -304,7 +331,7 @@ def _render_fgsea(
|
|
|
304
331
|
},
|
|
305
332
|
]
|
|
306
333
|
|
|
307
|
-
return render_ui(components, "accordion", job, level)
|
|
334
|
+
return render_ui(components, "accordion", job, level) # type: ignore
|
|
308
335
|
|
|
309
336
|
|
|
310
337
|
@register_component("pdf")
|
|
@@ -359,11 +386,23 @@ def _render_enrichr(
|
|
|
359
386
|
"title": "Plot",
|
|
360
387
|
"ui": "flat",
|
|
361
388
|
"contents": [
|
|
389
|
+
{
|
|
390
|
+
"kind": "descr",
|
|
391
|
+
"content": (
|
|
392
|
+
"The enrichment analysis results of the top "
|
|
393
|
+
"biological pathways associated with the input "
|
|
394
|
+
"gene set. Each bar represents a pathway, "
|
|
395
|
+
"with the length of the bar indicating the "
|
|
396
|
+
"number of input genes overlapping with genes "
|
|
397
|
+
"in that pathway. The color intensity of the "
|
|
398
|
+
"bars reflects the statistical significance of "
|
|
399
|
+
"the enrichment (p-value). "
|
|
400
|
+
)
|
|
401
|
+
},
|
|
362
402
|
{
|
|
363
403
|
"kind": "image",
|
|
364
|
-
"src": str(
|
|
365
|
-
|
|
366
|
-
),
|
|
404
|
+
"src": str(enrichr_plot),
|
|
405
|
+
"download": str(enrichr_plot.with_suffix(".pdf")),
|
|
367
406
|
}
|
|
368
407
|
],
|
|
369
408
|
},
|
|
@@ -43,10 +43,12 @@ import { Image } from "$libs";
|
|
|
43
43
|
{{ caps[i] }}
|
|
44
44
|
</div>
|
|
45
45
|
{% endif %}
|
|
46
|
-
|
|
47
|
-
style="max-width: 90%"
|
|
48
|
-
|
|
49
|
-
|
|
46
|
+
{% if src | replace: ".png", ".pdf" | exists %}
|
|
47
|
+
<Image style="max-width: 90%" src={{src | quote}}
|
|
48
|
+
download={{src | replace: ".png", ".pdf" | quote}} />
|
|
49
|
+
{% else %}
|
|
50
|
+
<Image style="max-width: 90%" src={{src | quote}} />
|
|
51
|
+
{% endif %}
|
|
50
52
|
</td>
|
|
51
53
|
{% endif %}
|
|
52
54
|
{% endfor %}
|
|
@@ -186,6 +186,15 @@ for (name in names(stats)) {
|
|
|
186
186
|
print(p)
|
|
187
187
|
dev.off()
|
|
188
188
|
|
|
189
|
+
plotfile_pdf <- file.path(outdir, paste0(name, ".pdf"))
|
|
190
|
+
pdf(
|
|
191
|
+
plotfile_pdf,
|
|
192
|
+
width = stat$devpars$width / stat$devpars$res,
|
|
193
|
+
height = stat$devpars$height / stat$devpars$res
|
|
194
|
+
)
|
|
195
|
+
print(p)
|
|
196
|
+
dev.off()
|
|
197
|
+
|
|
189
198
|
by_desc <- ifelse(is.null(stat$by), "", paste0(" by ", stat$by))
|
|
190
199
|
descr <- ifelse(
|
|
191
200
|
is_continuous,
|
|
@@ -193,7 +202,7 @@ for (name in names(stats)) {
|
|
|
193
202
|
paste0("The number of ", stat$on, by_desc)
|
|
194
203
|
)
|
|
195
204
|
add_report(
|
|
196
|
-
list(kind = "table_image", src = plotfile, name = name, descr = descr),
|
|
205
|
+
list(kind = "table_image", src = plotfile, name = name, descr = descr, download = plotfile_pdf),
|
|
197
206
|
h1 = "Statistics",
|
|
198
207
|
ui = "table_of_images:2"
|
|
199
208
|
)
|
|
@@ -368,9 +368,17 @@ do_case <- function(name, case) {
|
|
|
368
368
|
width <- devpars$width %||% (400 + 120 + 100 * ngroups)
|
|
369
369
|
# group_by names
|
|
370
370
|
height <- devpars$height %||% (120 + 100 * cells_rows)
|
|
371
|
+
|
|
372
|
+
p <- wrap_plots(piecharts, ncol = 1, guides = "collect")
|
|
373
|
+
|
|
371
374
|
piefile <- file.path(info$casedir, paste0(info$case_slug, ".png"))
|
|
372
375
|
png(piefile, res = res, width = width, height = height)
|
|
373
|
-
print(
|
|
376
|
+
print(p)
|
|
377
|
+
dev.off()
|
|
378
|
+
|
|
379
|
+
piefile_pdf <- file.path(info$casedir, paste0(info$case_slug, ".pdf"))
|
|
380
|
+
pdf(piefile_pdf, width = width / res, height = height / res)
|
|
381
|
+
print(p)
|
|
374
382
|
dev.off()
|
|
375
383
|
|
|
376
384
|
log_info(" Plotting and saving heatmap ...")
|
|
@@ -411,7 +419,6 @@ do_case <- function(name, case) {
|
|
|
411
419
|
hm_res <- hm_devpars$res %||% 100
|
|
412
420
|
hm_width <- hm_devpars$width %||% (600 + 15 * length(unique(meta$seurat_clusters)) + extra_width)
|
|
413
421
|
hm_height <- hm_devpars$height %||% (450 + 15 * cells_rows + extra_height)
|
|
414
|
-
png(hmfile, res = hm_res, width = hm_width, height = hm_height)
|
|
415
422
|
hm <- Heatmap(
|
|
416
423
|
as.matrix(hmdata),
|
|
417
424
|
name = "Size",
|
|
@@ -430,6 +437,12 @@ do_case <- function(name, case) {
|
|
|
430
437
|
right_annotation = row_ha,
|
|
431
438
|
top_annotation = ha
|
|
432
439
|
)
|
|
440
|
+
png(hmfile, res = hm_res, width = hm_width, height = hm_height)
|
|
441
|
+
print(hm)
|
|
442
|
+
dev.off()
|
|
443
|
+
|
|
444
|
+
hmfile_pdf <- gsub(".png$", ".pdf", hmfile)
|
|
445
|
+
pdf(hmfile_pdf, width = hm_width / hm_res, height = hm_height / hm_res)
|
|
433
446
|
print(hm)
|
|
434
447
|
dev.off()
|
|
435
448
|
|
|
@@ -454,11 +467,11 @@ do_case <- function(name, case) {
|
|
|
454
467
|
add_report(
|
|
455
468
|
list(
|
|
456
469
|
name = "Pie Charts",
|
|
457
|
-
contents = list(list(kind = "image", src = piefile))
|
|
470
|
+
contents = list(list(kind = "image", src = piefile, download = piefile_pdf))
|
|
458
471
|
),
|
|
459
472
|
list(
|
|
460
473
|
name = "Heatmap",
|
|
461
|
-
contents = list(list(src = hmfile, kind = "image"))
|
|
474
|
+
contents = list(list(src = hmfile, kind = "image", download = hmfile_pdf))
|
|
462
475
|
),
|
|
463
476
|
list(
|
|
464
477
|
name = "Distribution Table",
|
|
@@ -493,25 +506,37 @@ do_overlap <- function(section) {
|
|
|
493
506
|
print(venn_p)
|
|
494
507
|
dev.off()
|
|
495
508
|
|
|
509
|
+
venn_plot_pdf <- gsub(".png$", ".pdf", venn_plot)
|
|
510
|
+
pdf(venn_plot_pdf, width = 10, height = 6)
|
|
511
|
+
print(venn_p)
|
|
512
|
+
dev.off()
|
|
513
|
+
|
|
496
514
|
upset_plot <- file.path(sec_dir, "upset.png")
|
|
497
515
|
upset_p <- upset(fromList(overlap_cases))
|
|
498
516
|
png(upset_plot, res = 100, width = 800, height = 600)
|
|
499
517
|
print(upset_p)
|
|
500
518
|
dev.off()
|
|
501
519
|
|
|
520
|
+
upset_plot_pdf <- gsub(".png$", ".pdf", upset_plot)
|
|
521
|
+
pdf(upset_plot_pdf, width = 8, height = 6)
|
|
522
|
+
print(upset_p)
|
|
523
|
+
dev.off()
|
|
524
|
+
|
|
502
525
|
add_report(
|
|
503
526
|
list(
|
|
504
527
|
name = "Venn Plot",
|
|
505
528
|
contents = list(list(
|
|
506
529
|
kind = "image",
|
|
507
|
-
src = venn_plot
|
|
530
|
+
src = venn_plot,
|
|
531
|
+
download = venn_plot_pdf
|
|
508
532
|
))
|
|
509
533
|
),
|
|
510
534
|
list(
|
|
511
535
|
name = "UpSet Plot",
|
|
512
536
|
contents = list(list(
|
|
513
537
|
kind = "image",
|
|
514
|
-
src = upset_plot
|
|
538
|
+
src = upset_plot,
|
|
539
|
+
download = upset_plot_pdf
|
|
515
540
|
))
|
|
516
541
|
),
|
|
517
542
|
h1 = "Overlapping Groups",
|
|
@@ -208,6 +208,11 @@ plot_volcano = function(markers, volfile, sig, volgenes) {
|
|
|
208
208
|
png(volfile, res = 100, height = 1200, width = 900)
|
|
209
209
|
print(p_vol)
|
|
210
210
|
dev.off()
|
|
211
|
+
|
|
212
|
+
volfile_pdf <- gsub(".png$", ".pdf", volfile)
|
|
213
|
+
pdf(volfile_pdf, width = 9, height = 12)
|
|
214
|
+
print(p_vol)
|
|
215
|
+
dev.off()
|
|
211
216
|
}
|
|
212
217
|
|
|
213
218
|
# Do enrichment analysis for a case using Enrichr
|
|
@@ -256,14 +261,16 @@ do_enrich <- function(info, markers, sig, volgenes) {
|
|
|
256
261
|
log_warn(" No enrichment found for case: {info$casename} - {db}")
|
|
257
262
|
next
|
|
258
263
|
}
|
|
259
|
-
|
|
260
|
-
file.path(info$casedir, paste0("Enrichr-", db, ".png")),
|
|
261
|
-
res = 100, height = 1000, width = 1000
|
|
262
|
-
)
|
|
263
|
-
print(
|
|
264
|
-
plotEnrich(enriched[[db]], showTerms = 20, title = db) +
|
|
264
|
+
enrich_p <- plotEnrich(enriched[[db]], showTerms = 20, title = db) +
|
|
265
265
|
theme_prism()
|
|
266
|
-
)
|
|
266
|
+
enrich_plot <- file.path(info$casedir, paste0("Enrichr-", db, ".png"))
|
|
267
|
+
png(enrich_plot, res = 100, height = 1000, width = 1000)
|
|
268
|
+
print(enrich_p)
|
|
269
|
+
dev.off()
|
|
270
|
+
|
|
271
|
+
enrich_plot_pdf <- gsub(".png$", ".pdf", enrich_plot)
|
|
272
|
+
pdf(enrich_plot_pdf, width = 10, height = 10)
|
|
273
|
+
print(enrich_p)
|
|
267
274
|
dev.off()
|
|
268
275
|
}
|
|
269
276
|
}
|
|
@@ -287,13 +294,17 @@ do_dotplot <- function(info, siggenes, dotplot, args) {
|
|
|
287
294
|
dotplot_height <- dotplot_devpars$height %||% 600
|
|
288
295
|
dotplot_res <- dotplot_devpars$res %||% 100
|
|
289
296
|
dotplot_file <- file.path(info$casedir, "dotplot.png")
|
|
290
|
-
|
|
291
|
-
# rotate x axis labels
|
|
292
|
-
print(
|
|
293
|
-
do_call(DotPlot, dotplot) +
|
|
297
|
+
dot_p <- do_call(DotPlot, dotplot) +
|
|
294
298
|
theme(axis.text.x = element_text(angle = 90, hjust = 1)) +
|
|
295
299
|
coord_flip()
|
|
296
|
-
)
|
|
300
|
+
png(dotplot_file, res = dotplot_res, width = dotplot_height, height = dotplot_width)
|
|
301
|
+
# rotate x axis labels
|
|
302
|
+
print(dot_p)
|
|
303
|
+
dev.off()
|
|
304
|
+
|
|
305
|
+
dotplot_file_pdf <- gsub(".png$", ".pdf", dotplot_file)
|
|
306
|
+
pdf(dotplot_file_pdf, width = dotplot_height / dotplot_res, height = dotplot_width / dotplot_res)
|
|
307
|
+
print(dot_p)
|
|
297
308
|
dev.off()
|
|
298
309
|
}
|
|
299
310
|
|
|
@@ -336,9 +347,19 @@ add_case_report <- function(info, sigmarkers, siggenes) {
|
|
|
336
347
|
title = "Volcano Plot",
|
|
337
348
|
ui = "flat",
|
|
338
349
|
contents = list(
|
|
350
|
+
list(
|
|
351
|
+
kind = "descr",
|
|
352
|
+
content = paste0(
|
|
353
|
+
"The volcano plot is generated using ggplot2. ",
|
|
354
|
+
"The significant markers are highlighted in blue and red, ",
|
|
355
|
+
"indicating up-regulated and down-regulated genes, respectively. ",
|
|
356
|
+
"The non-significant genes are shown in grey. "
|
|
357
|
+
)
|
|
358
|
+
),
|
|
339
359
|
list(
|
|
340
360
|
kind = "img",
|
|
341
|
-
src = file.path(info$casedir, "volcano.png")
|
|
361
|
+
src = file.path(info$casedir, "volcano.png"),
|
|
362
|
+
download = file.path(info$casedir, "volcano.pdf")
|
|
342
363
|
)
|
|
343
364
|
)
|
|
344
365
|
),
|
|
@@ -346,9 +367,21 @@ add_case_report <- function(info, sigmarkers, siggenes) {
|
|
|
346
367
|
title = "Dot Plot",
|
|
347
368
|
ui = "flat",
|
|
348
369
|
contents = list(
|
|
370
|
+
list(
|
|
371
|
+
kind = "descr",
|
|
372
|
+
content = paste0(
|
|
373
|
+
"The dot plot is generated using Seurat's DotPlot function. ",
|
|
374
|
+
"The top significant markers are used as input. ",
|
|
375
|
+
"The sizes of the dots are proportional to the percentage of cells ",
|
|
376
|
+
"expressing the gene in each group. ",
|
|
377
|
+
"The colors of the dots are proportional to the average expression ",
|
|
378
|
+
"of the gene in each group. "
|
|
379
|
+
)
|
|
380
|
+
),
|
|
349
381
|
list(
|
|
350
382
|
kind = "img",
|
|
351
|
-
src = file.path(info$casedir, "dotplot.png")
|
|
383
|
+
src = file.path(info$casedir, "dotplot.png"),
|
|
384
|
+
download = file.path(info$casedir, "dotplot.pdf")
|
|
352
385
|
)
|
|
353
386
|
)
|
|
354
387
|
),
|
|
@@ -613,6 +646,14 @@ do_overlap <- function(section) {
|
|
|
613
646
|
do.call(png, ov_args$venn$devpars)
|
|
614
647
|
print(venn_p)
|
|
615
648
|
dev.off()
|
|
649
|
+
|
|
650
|
+
venn_plot_pdf <- file.path(ov_dir, "venn.pdf")
|
|
651
|
+
pdf(
|
|
652
|
+
venn_plot_pdf,
|
|
653
|
+
width = ov_args$venn$devpars$width / ov_args$venn$devpars$res,
|
|
654
|
+
height = ov_args$venn$devpars$height / ov_args$venn$devpars$res)
|
|
655
|
+
print(venn_p)
|
|
656
|
+
dev.off()
|
|
616
657
|
}
|
|
617
658
|
|
|
618
659
|
df_markers <- fromList(ov_cases)
|
|
@@ -654,6 +695,14 @@ do_overlap <- function(section) {
|
|
|
654
695
|
do.call(png, ov_args$upset$devpars)
|
|
655
696
|
print(upset_p)
|
|
656
697
|
dev.off()
|
|
698
|
+
|
|
699
|
+
upset_plot_pdf <- file.path(ov_dir, "upset.pdf")
|
|
700
|
+
pdf(
|
|
701
|
+
upset_plot_pdf,
|
|
702
|
+
width = ov_args$upset$devpars$width / ov_args$upset$devpars$res,
|
|
703
|
+
height = ov_args$upset$devpars$height / ov_args$upset$devpars$res)
|
|
704
|
+
print(upset_p)
|
|
705
|
+
dev.off()
|
|
657
706
|
}
|
|
658
707
|
|
|
659
708
|
add_report(
|
|
@@ -663,7 +712,8 @@ do_overlap <- function(section) {
|
|
|
663
712
|
contents = list(
|
|
664
713
|
list(
|
|
665
714
|
kind = "img",
|
|
666
|
-
src = file.path(ov_dir, "venn.png")
|
|
715
|
+
src = file.path(ov_dir, "venn.png"),
|
|
716
|
+
download = file.path(ov_dir, "venn.pdf")
|
|
667
717
|
)
|
|
668
718
|
)
|
|
669
719
|
),
|
|
@@ -673,7 +723,8 @@ do_overlap <- function(section) {
|
|
|
673
723
|
contents = list(
|
|
674
724
|
list(
|
|
675
725
|
kind = "img",
|
|
676
|
-
src = file.path(ov_dir, "upset.png")
|
|
726
|
+
src = file.path(ov_dir, "upset.png"),
|
|
727
|
+
download = file.path(ov_dir, "upset.pdf")
|
|
677
728
|
)
|
|
678
729
|
)
|
|
679
730
|
),
|
|
@@ -171,14 +171,17 @@ do_enrich <- function(info, markers, sig) {
|
|
|
171
171
|
next
|
|
172
172
|
}
|
|
173
173
|
|
|
174
|
-
|
|
175
|
-
file.path(info$casedir, paste0("Enrichr-", db, ".png")),
|
|
176
|
-
res = 100, height = 600, width = 800
|
|
177
|
-
)
|
|
178
|
-
print(
|
|
179
|
-
plotEnrich(enriched[[db]], showTerms = 20, title = db) +
|
|
174
|
+
p <- plotEnrich(enriched[[db]], showTerms = 20, title = db) +
|
|
180
175
|
theme_prism()
|
|
181
|
-
|
|
176
|
+
|
|
177
|
+
plotfile <- file.path(info$casedir, paste0("Enrichr-", db, ".png"))
|
|
178
|
+
png(plotfile, res = 100, height = 600, width = 800)
|
|
179
|
+
print(p)
|
|
180
|
+
dev.off()
|
|
181
|
+
|
|
182
|
+
plotfile_pdf <- gsub(".png$", ".pdf", plotfile)
|
|
183
|
+
pdf(plotfile_pdf, height = 6, width = 8)
|
|
184
|
+
print(p)
|
|
182
185
|
dev.off()
|
|
183
186
|
}
|
|
184
187
|
}
|
|
@@ -292,9 +295,15 @@ do_case <- function(casename) {
|
|
|
292
295
|
print(p)
|
|
293
296
|
dev.off()
|
|
294
297
|
|
|
298
|
+
outfile_pdf <- gsub(".png$", ".pdf", outfile)
|
|
299
|
+
pdf(outfile_pdf, height = 6, width = 8)
|
|
300
|
+
print(p)
|
|
301
|
+
dev.off()
|
|
302
|
+
|
|
295
303
|
geneplots[[length(geneplots) + 1]] <- list(
|
|
296
304
|
kind = "table_image",
|
|
297
305
|
src = outfile,
|
|
306
|
+
download = outfile_pdf,
|
|
298
307
|
name = gene
|
|
299
308
|
)
|
|
300
309
|
}
|
|
@@ -193,6 +193,7 @@ do_radarplot <- function(info, case, counts) {
|
|
|
193
193
|
|
|
194
194
|
# Plot
|
|
195
195
|
plotfile = file.path(info$casedir, "plot.png")
|
|
196
|
+
plotfile_pdf = file.path(info$casedir, "plot.pdf")
|
|
196
197
|
if (!is.null(case$colors) && length(case$colors) == 1 && case$colors == "biopipen") {
|
|
197
198
|
colors = pal_biopipen()(nrow(rdr_data))
|
|
198
199
|
} else if (!is.null(case$colors) && length(case$colors) > 0) {
|
|
@@ -217,6 +218,14 @@ do_radarplot <- function(info, case, counts) {
|
|
|
217
218
|
)
|
|
218
219
|
print(p)
|
|
219
220
|
dev.off()
|
|
221
|
+
|
|
222
|
+
pdf(
|
|
223
|
+
plotfile_pdf,
|
|
224
|
+
width = case$devpars$width / case$devpars$res,
|
|
225
|
+
height = case$devpars$height / case$devpars$res
|
|
226
|
+
)
|
|
227
|
+
print(p)
|
|
228
|
+
dev.off()
|
|
220
229
|
}
|
|
221
230
|
|
|
222
231
|
do_barplot_and_tests <- function(info, case, counts) {
|
|
@@ -268,6 +277,7 @@ do_barplot_and_tests <- function(info, case, counts) {
|
|
|
268
277
|
|
|
269
278
|
# Plot the barplot
|
|
270
279
|
plotfile = file.path(info$casedir, "barplot.png")
|
|
280
|
+
plotfile_pdf = file.path(info$casedir, "barplot.pdf")
|
|
271
281
|
p = ggplot(plotdata, aes(x = !!sym(case$ident), y = .mean, fill = !!sym(case$by))) +
|
|
272
282
|
geom_bar(stat = "identity", position = "dodge") +
|
|
273
283
|
geom_errorbar(
|
|
@@ -295,6 +305,14 @@ do_barplot_and_tests <- function(info, case, counts) {
|
|
|
295
305
|
print(p)
|
|
296
306
|
dev.off()
|
|
297
307
|
|
|
308
|
+
pdf(
|
|
309
|
+
plotfile_pdf,
|
|
310
|
+
width = case$bar_devpars$width / case$bar_devpars$res,
|
|
311
|
+
height = case$bar_devpars$height / case$bar_devpars$res
|
|
312
|
+
)
|
|
313
|
+
print(p)
|
|
314
|
+
dev.off()
|
|
315
|
+
|
|
298
316
|
# Do the tests in each cluster between groups on .frac
|
|
299
317
|
bys <- bardata %>% pull(!!sym(case$by)) %>% unique()
|
|
300
318
|
if (!is.null(case$test) && test != "none") {
|
|
@@ -348,7 +366,8 @@ add_case_report = function(info, breakdown, test) {
|
|
|
348
366
|
contents = list(
|
|
349
367
|
list(
|
|
350
368
|
kind = "image",
|
|
351
|
-
src = file.path(info$casedir, "plot.png")
|
|
369
|
+
src = file.path(info$casedir, "plot.png"),
|
|
370
|
+
download = file.path(info$casedir, "plot.pdf")
|
|
352
371
|
)
|
|
353
372
|
)
|
|
354
373
|
),
|
|
@@ -381,7 +400,8 @@ add_case_report = function(info, breakdown, test) {
|
|
|
381
400
|
contents = list(
|
|
382
401
|
list(
|
|
383
402
|
kind = "image",
|
|
384
|
-
src = file.path(info$casedir, "barplot.png")
|
|
403
|
+
src = file.path(info$casedir, "barplot.png"),
|
|
404
|
+
download = file.path(info$casedir, "barplot.pdf")
|
|
385
405
|
)
|
|
386
406
|
)
|
|
387
407
|
))
|
|
@@ -46,9 +46,14 @@ if (
|
|
|
46
46
|
command <- srtobj@commands[[paste0("FindClusters.", prefix)]] %||%
|
|
47
47
|
(if(prefix == "seurat_clusters") srtobj@commands$FindClusters else NULL)
|
|
48
48
|
|
|
49
|
+
p <- do_call(clustree, case)
|
|
49
50
|
clustree_file <- file.path(odir, paste0(prefix, ".clustree.png"))
|
|
50
51
|
png(clustree_file, width = devpars$width, height = devpars$height, res = devpars$res)
|
|
51
|
-
p
|
|
52
|
+
print(p)
|
|
53
|
+
dev.off()
|
|
54
|
+
|
|
55
|
+
clustree_file_pdf <- file.path(odir, paste0(prefix, ".clustree.pdf"))
|
|
56
|
+
pdf(clustree_file_pdf, width = devpars$width / devpars$res, height = devpars$height / devpars$res)
|
|
52
57
|
print(p)
|
|
53
58
|
dev.off()
|
|
54
59
|
|
|
@@ -62,6 +67,7 @@ if (
|
|
|
62
67
|
reports[[length(reports) + 1]] <- list(
|
|
63
68
|
kind = "table_image",
|
|
64
69
|
src = clustree_file,
|
|
70
|
+
download = clustree_file_pdf,
|
|
65
71
|
name = name,
|
|
66
72
|
descr = paste0("Resolutions: ", paste(resolution, collapse = ", "), "; resolution used: ", resolution_used)
|
|
67
73
|
)
|
|
@@ -49,9 +49,15 @@ do_one_dimplot = function(name) {
|
|
|
49
49
|
|
|
50
50
|
if (case$reduction %in% c("dim", "auto")) { case$reduction = NULL }
|
|
51
51
|
case$na_group <- NULL
|
|
52
|
+
|
|
53
|
+
p = do_call(DimPlot, case)
|
|
52
54
|
figfile = file.path(odir, paste0(slugify(name), ".dim.png"))
|
|
53
55
|
png(figfile, width=devpars$width, height=devpars$height, res=devpars$res)
|
|
54
|
-
p
|
|
56
|
+
print(p)
|
|
57
|
+
dev.off()
|
|
58
|
+
|
|
59
|
+
figfile_pdf = file.path(odir, paste0(slugify(name), ".dim.pdf"))
|
|
60
|
+
pdf(figfile_pdf, width=devpars$width / devpars$res, height=devpars$height / devpars$res)
|
|
55
61
|
print(p)
|
|
56
62
|
dev.off()
|
|
57
63
|
|
|
@@ -62,7 +68,8 @@ do_one_dimplot = function(name) {
|
|
|
62
68
|
),
|
|
63
69
|
list(
|
|
64
70
|
kind = "image",
|
|
65
|
-
src = figfile
|
|
71
|
+
src = figfile,
|
|
72
|
+
download = figfile_pdf
|
|
66
73
|
),
|
|
67
74
|
h1 = name
|
|
68
75
|
)
|
|
@@ -224,6 +224,7 @@ do_one_features = function(name) {
|
|
|
224
224
|
|
|
225
225
|
if (kind == "bar") {
|
|
226
226
|
figfile <- file.path(odir, paste0(slugify(name), ".bar.png"))
|
|
227
|
+
figfile_pdf <- file.path(odir, paste0(slugify(name), ".bar.pdf"))
|
|
227
228
|
genes <- rownames(GetAssayData(case$object))
|
|
228
229
|
genes <- genes[sapply(genes, function(x) grepl(x, case$features))]
|
|
229
230
|
if (length(genes) == 0) {
|
|
@@ -265,6 +266,10 @@ do_one_features = function(name) {
|
|
|
265
266
|
print(p)
|
|
266
267
|
dev.off()
|
|
267
268
|
|
|
269
|
+
pdf(figfile_pdf, width = devpars$width / devpars$res, height = devpars$height / devpars$res)
|
|
270
|
+
print(p)
|
|
271
|
+
dev.off()
|
|
272
|
+
|
|
268
273
|
add_report(
|
|
269
274
|
list(
|
|
270
275
|
kind = "descr",
|
|
@@ -272,7 +277,8 @@ do_one_features = function(name) {
|
|
|
272
277
|
),
|
|
273
278
|
list(
|
|
274
279
|
kind = "image",
|
|
275
|
-
src = figfile
|
|
280
|
+
src = figfile,
|
|
281
|
+
download = figfile_pdf
|
|
276
282
|
),
|
|
277
283
|
h1 = ifelse(is.null(section), name, section),
|
|
278
284
|
h2 = ifelse(is.null(section), "#", name)
|
|
@@ -284,6 +290,7 @@ do_one_features = function(name) {
|
|
|
284
290
|
case$features = .get_features(case$features)
|
|
285
291
|
if (kind == "avgheatmap") {
|
|
286
292
|
figfile <- file.path(odir, paste0(slugify(name), ".avgheatmap.png"))
|
|
293
|
+
figfile_pdf <- file.path(odir, paste0(slugify(name), ".avgheatmap.pdf"))
|
|
287
294
|
assay <- assay %||% DefaultAssay(object)
|
|
288
295
|
layer <- layer %||% ifelse("scale.data" %in% Layers(object, assay = assay), "scale.data", "data")
|
|
289
296
|
|
|
@@ -353,6 +360,10 @@ do_one_features = function(name) {
|
|
|
353
360
|
print(p)
|
|
354
361
|
dev.off()
|
|
355
362
|
|
|
363
|
+
pdf(figfile_pdf, width = devpars$width / devpars$res, height = devpars$height / devpars$res)
|
|
364
|
+
print(p)
|
|
365
|
+
dev.off()
|
|
366
|
+
|
|
356
367
|
add_report(
|
|
357
368
|
list(
|
|
358
369
|
kind = "descr",
|
|
@@ -360,7 +371,8 @@ do_one_features = function(name) {
|
|
|
360
371
|
),
|
|
361
372
|
list(
|
|
362
373
|
kind = "image",
|
|
363
|
-
src = figfile
|
|
374
|
+
src = figfile,
|
|
375
|
+
download = figfile_pdf
|
|
364
376
|
),
|
|
365
377
|
h1 = ifelse(is.null(section), name, section),
|
|
366
378
|
h2 = ifelse(is.null(section), "#", name)
|
|
@@ -430,6 +442,11 @@ do_one_features = function(name) {
|
|
|
430
442
|
})
|
|
431
443
|
dev.off()
|
|
432
444
|
|
|
445
|
+
figfile_pdf = gsub(".png$", ".pdf", figfile)
|
|
446
|
+
pdf(figfile_pdf, width=devpars$width / devpars$res, height=devpars$height / devpars$res)
|
|
447
|
+
print(p)
|
|
448
|
+
dev.off()
|
|
449
|
+
|
|
433
450
|
add_report(
|
|
434
451
|
list(
|
|
435
452
|
kind = "descr",
|
|
@@ -437,7 +454,8 @@ do_one_features = function(name) {
|
|
|
437
454
|
),
|
|
438
455
|
list(
|
|
439
456
|
kind = "image",
|
|
440
|
-
src = figfile
|
|
457
|
+
src = figfile,
|
|
458
|
+
download = figfile_pdf
|
|
441
459
|
),
|
|
442
460
|
h1 = ifelse(is.null(section), name, section),
|
|
443
461
|
h2 = ifelse(is.null(section), "#", name)
|
|
@@ -6,6 +6,7 @@ log_info("hists:")
|
|
|
6
6
|
|
|
7
7
|
do_one_hists <- function(m, case, odir, h1, each = NULL) {
|
|
8
8
|
ofile <- file.path(odir, paste0(slugify(h1), ifelse(is.null(each), "", paste0("-", slugify(each))), ".png"))
|
|
9
|
+
ofile_pdf <- gsub(".png$", ".pdf", ofile)
|
|
9
10
|
|
|
10
11
|
p <- ggplot(m, aes(x=!!sym(case$x))) +
|
|
11
12
|
geom_histogram(
|
|
@@ -42,16 +43,20 @@ do_one_hists <- function(m, case, odir, h1, each = NULL) {
|
|
|
42
43
|
print(p)
|
|
43
44
|
dev.off()
|
|
44
45
|
|
|
46
|
+
pdf(ofile_pdf, width=devpars$width / devpars$res, height=devpars$height / devpars$res)
|
|
47
|
+
print(p)
|
|
48
|
+
dev.off()
|
|
49
|
+
|
|
45
50
|
# Add report
|
|
46
51
|
if (!is.null(each)) {
|
|
47
52
|
add_report(
|
|
48
|
-
list(src = ofile, descr = first(m[[case$each]])),
|
|
53
|
+
list(src = ofile, descr = first(m[[case$each]]), download = ofile_pdf),
|
|
49
54
|
h1 = h1,
|
|
50
55
|
ui = "table_of_images"
|
|
51
56
|
)
|
|
52
57
|
} else {
|
|
53
58
|
add_report(
|
|
54
|
-
list(kind = "image", src = ofile),
|
|
59
|
+
list(kind = "image", src = ofile, download = ofile_pdf),
|
|
55
60
|
h1 = h1
|
|
56
61
|
)
|
|
57
62
|
}
|