Conversation
Merged
Collaborator
Author
|
I've also cleaned up functions and methods that have long been marked as deprecated:
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Intro
Since before the preprint went out, I've been unhappy with the plotting functions' organisation. Now that we're revamping the plotting module anyway, I'd like to reorganise them.
Starting caveat: all functions will retain aliases to their old names. No old code will break.
Generally, my guiding principle here is that plotting functions should be organised by what they plot, rather than how they plot it. That is, I'd like to have the region-plotting functions (like
bar.region,bar.region_predictions, and newscatter.region) together, so that it's immediately obvious which options you have when you want to plot a region. Similar arguments go for correlations: I shouldn't have to click through every module to find out thatpl.heatmap,pl.scatterandpl.violincontain functions that visualize the correlations between data and predictions.Changes
Reorganised groups proposal:
pl.qcpl.qc.normalization_weightspl.qc.filter_cutoff(to matchpp.filter_regions_on_specificity)pl.qc.sort_and_filter_cutoff(to matchpp.sort_and_filter_regions_on_specificity)pl.region(or prediction?)pl.region.barpl.region.scatterpl.corr(or correlation?)pl.corr.heatmap_selfpl.corr.heatmappl.corr.scatterpl.corr.violinpl.explainpl.explain.contribution_scores(could still bepl.sequence.contribution_scores)pl.locuspl.locus.locus_scoringpl.locus.trackpl.distpl.dist.histogram(Group with QC? I'm honestly unsure when people use this function.)pl.modiscopl.modisco.*pl.designpl.design.step_predictionspl.design.step_contribution_scoresbar.regionregion.barbar.region_predictionsregion.barbar.normalization_weightsqc.normalization_weightshist.distributiondist.histogram(?)heatmap.correlations_selfcorr.heatmap_selfheatmap.correlations_predictionscorr.heatmaplocus.locus_scoringlocus.trackscatter.class_densitycorr.scatterscatter.region(new)region.scatterscatter.gini_filtering(new)qc.filter_cutoffscatter.gini_filtering_class(new)qc.sort_and_filter_cutoffviolin.correlationscorr.violinpatterns.contribution_scoresexplain.contribution_scorespatterns.modisco_*modisco.*patterns.enhancer_design_steps_contribution_scoresdesign.step_contribution_scorespatterns.enhancer_design_steps_predictionsdesign.step_predictionstlfunctionsI've also slightly reorganised the enhancer design functions in
tl:tl.enhancer_design_in_silico_evolutiontl.design.in_silico_evolution <crested.tl.design.in_silico_evolution>tl.enhancer_design_motif_insertiontl.design.motif_insertion <crested.tl.design.motif_insertion>utils.EnhancerOptimizertl.design.EnhancerOptimizer <crested.tl.design.EnhancerOptimizer>utils.derive_intermediate_sequencestl.design.derive_intermediate_sequences <crested.tl.design.derive_intermediate_sequences>FInal changes
This also changes the docs structure, to recursively generate docs for all functions in
pp,tl,plandutils. That means that for any function in those (the large majority), you no longer need to manually add it to the toctree list to get it to show up in the docs. Everything is handled automatically instead. See the contribution guide for more information.