Config reference: renderer parameters¶
The keys a plots.<panel> block of a project config can hold, per renderer, from each renderer's SCHEMA (the same descriptions fa ingest bundle and fa param scaffold write into configs). auto means unset: the renderer decides (e.g. axis limits from the data); computed means the renderer derives it from other values. Units: pt = points (1 pt = 0.35 mm), mm on the page, data coords = the axis's own units.
| Plot name | Where | Parameters |
|---|---|---|
bar_scatter |
core | 50 |
binary_motif_heatmap |
fig_atlas_omics.renderers | 62 |
boxplot |
core | 13 |
chromosome_ideogram |
fig_atlas_omics.renderers | 42 |
cis_linkage_panel |
fig_atlas_omics.renderers | 20 |
clustered_go_heatmap |
fig_atlas_omics.renderers | 21 |
count_summary |
fig_atlas_omics.renderers | 20 |
cross_condition_dotplot |
fig_atlas_omics.renderers | 62 |
cross_condition_heatmap |
fig_atlas_omics.renderers | 42 |
dose_response |
core | 37 |
dot_matrix |
core | 42 |
effect_dots |
core | 38 |
flow_diagram |
core | 44 |
funnel |
core | 16 |
gene_model_track |
fig_atlas_omics.renderers | 25 |
go_bar |
fig_atlas_omics.renderers | 25 |
go_cluster_dot |
fig_atlas_omics.renderers | 37 |
go_dot |
fig_atlas_omics.renderers | 11 |
go_rrvgo_treemap |
fig_atlas_omics.renderers | 14 |
group_scatter |
core | 37 |
grouped_hbar |
core | 19 |
heatmap |
core | 23 |
histogram |
core | 33 |
image_panel |
core | 27 |
interval_track |
fig_atlas_omics.renderers | 33 |
jaccard_heatmap |
core | 25 |
line_band |
core | 44 |
ma_plot |
fig_atlas_omics.renderers | 24 |
motif_architecture_table |
fig_atlas_omics.renderers | 5 |
motif_dotplot |
fig_atlas_omics.renderers | 44 |
multi_group_heatmap |
core | 32 |
paired_dumbbell |
core | 39 |
pathway_evidence_dotplot |
fig_atlas_omics.renderers | 28 |
pathway_test_matrix |
fig_atlas_omics.renderers | 42 |
pca |
core | 16 |
peak_feature_composition |
fig_atlas_omics.renderers | 32 |
peak_feature_enrichment |
fig_atlas_omics.renderers | 32 |
sample_metric_bars |
core | 22 |
segment_array |
fig_atlas_omics.renderers | 66 |
signed_heatmap |
core | 34 |
single_tf_expression_scatter_bar |
fig_atlas_omics.renderers | 36 |
species_response_scatter |
fig_atlas_omics.renderers | 30 |
stacked_bar |
core | 32 |
stacked_share_hbar |
core | 28 |
survival |
core | 32 |
tf_expression_scatter_grid |
fig_atlas_omics.renderers | 36 |
threshold_scatter |
core | 61 |
tier_hbar |
core | 16 |
treatment_schematic |
core | 25 |
ts_profile |
core | 18 |
two_set_euler |
core | 27 |
venn |
core | 5 |
violin |
core | 39 |
volcano |
fig_atlas_omics.renderers | 28 |
bar_scatter¶
fig_atlas.renderers:render_bar_scatter
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
category_col |
text | symbol |
Column holding the x categories | |
category_order |
list | auto | Category order, left to right (default: order in the data) | |
groups |
list | [] |
Wide table: series per category, a list of {label, color, columns} (replicate columns) | |
group_col |
text | auto | Long table (one row per replicate): column with the series; then value_col holds the values and groups is built from group_order/group_colors/group_labels | |
value_col |
text | value |
Long table: column with the replicate values | |
group_order |
list | auto | Long table: series order (default: order in the data) | |
group_colors |
mapping | {} |
hex color | Long table: bar colour per series |
group_labels |
mapping | {} |
Long table: legend label per series | |
pvalue_col |
text | auto | Column with the per-category p-value for the two-group bracket | |
bar_width |
number | 0.8 |
x units (one category = 1) | Total width of one category's bars |
bar_edgecolor |
colour | none |
color | Bar outline colour |
bar_edgewidth |
number | 0.0 |
pt | Bar outline width |
errorbar |
one of sem, sd |
sem |
Error bar: standard error or standard deviation | |
errorbar_width |
number | 1.0 |
pt | Error bar and cap line width |
capsize |
number | 3.0 |
pt | Error bar cap length |
show_points |
true / false | True |
Overlay the replicate values as dots | |
point_color |
colour | #111111 |
hex color | Replicate dot colour |
point_edgecolor |
colour | white |
color | Replicate dot outline |
point_edgewidth |
number | 0.4 |
pt | Replicate dot outline width |
point_size |
number | 20 |
pt^2 (marker area) | Replicate dot size |
point_jitter |
number | 0.06 |
x units | Horizontal jitter of the dots |
point_seed |
integer | 0 |
random seed | Seed of the jitter (fixed for reproducible output) |
show_significance |
true / false | True |
Draw the star bracket when there are exactly two groups | |
sig_thresholds |
list | [[0.001, '***'], [0.01, '**'], [0.05, '*']] |
p-value | [threshold, symbol] pairs, ascending |
sig_ns_display |
text | ns |
Text for non-significant pairs (empty to hide) | |
sig_font_size |
number | computed | pt | Star size (default tick_label_size + 1) |
sig_gap |
number | 0.03 |
fraction of the data top | Gap between bars and bracket |
sig_line_color |
colour | #333333 |
hex color | Bracket line colour |
sig_line_width |
number | 1.0 |
pt | Bracket line width |
y_min |
number | 0 |
data coords | Lower y limit |
y_max |
number | auto | data coords | Upper y limit (default: data top x y_headroom) |
y_headroom |
number | 1.28 |
multiple of the data top | Space above the bars for the brackets — raise if stars touch the top |
grid |
true / false | True |
Draw horizontal grid lines | |
grid_alpha |
number | 0.3 |
alpha [0-1] | Grid line opacity |
despine |
true / false | True |
Hide the top and right spines | |
xtick_rotation |
number | 0 |
degrees | Category label rotation |
xtick_mode |
one of category, group |
category |
x tick labels: one per category, or one per bar named by its group (e.g. a single two-group comparison) | |
show_legend |
true / false | True |
Show the group legend | |
legend_loc |
text | upper right |
Legend location (matplotlib loc string) | |
legend_ncol |
integer | 1 |
columns | Legend columns |
legend_frameon |
true / false | False |
Draw a frame around the legend | |
legend_fontsize |
number | computed | pt | Legend font size (default tick_label_size) |
labels_title |
text | auto | Panel title | |
labels_xlabel |
text | computed | x-axis title (default: category_col) | |
labels_ylabel |
text | Value |
y-axis title | |
title_size |
number | 12 |
pt | Panel title font size |
title_weight |
text | bold |
Panel title weight (matplotlib: bold, normal, ...) | |
axes_label_size |
number | 10 |
pt | Axis title font size |
axes_label_weight |
text | bold |
Axis title weight (matplotlib: bold, normal, ...) | |
tick_label_size |
number | 8 |
pt | Tick label font size |
binary_motif_heatmap¶
fig_atlas_omics.renderers:render_binary_motif_heatmap
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
title_size |
number | style typography.title_size (else 13) |
pt | Panel title font size — lower if the title wraps or crowds the panel |
axes_label_size |
number | style typography.axes_label_size (else 12.0) |
pt | Axis title (x/y label) font size — lower if axis titles clip or crowd |
tick_label_size |
number | style typography.tick_label_size (else 8) |
pt | Tick label font size — lower if tick labels overlap |
legend_fontsize |
number | style typography.legend_fontsize (else CODE_DEFAULT) |
pt | Legend text font size — lower if the legend covers data |
orientation |
one of vertical, horizontal |
vertical |
'vertical': genes as rows; 'horizontal': genes as columns, motifs as rows | |
row_col |
text | gene |
Column of df with the gene names | |
tier_col |
text | tier |
Column of df with each gene's tier | |
cols |
list | auto | Presence columns to show, in order (default: every has_* column) | |
col_rename_map |
mapping | {} |
Display label per presence column | |
col_strip_prefix |
text | auto | Prefix removed from presence column names for display (e.g. 'has_') | |
row_order |
list | auto | Gene order (default: order of first appearance) | |
tier_order |
list | auto | Tier order in the stripe and legend | |
present_color |
colour | #2b7bba |
hex color | Fill of cells where the motif is present |
absent_color |
colour | #ffffff |
hex color | Fill of cells where it is absent |
cell_border_color |
colour | #999999 |
hex color | Cell border colour |
cell_border_width |
number | 0.7 |
pt | Cell border width |
cell_marks |
object | auto | Boolean matrix (genes x cols): a dot on those cells (set by the script) | |
cell_mark_color |
colour | white |
color | Colour of the cell-mark dots |
cell_mark_edgecolor |
colour | none |
color | Outline of the cell-mark dots |
cell_mark_size |
number | 4.0 |
pt^2 (marker area) | Size of the cell-mark dots |
cell_mark_label |
text | auto | Legend text for the cell marks (none = no legend entry) | |
cell_mark_legend_xy |
list | [1.02, -0.12] |
axes fraction (x, y) | Position of the cell-mark legend entry |
cell_mark_legend_scale |
number | 8.0 |
x cell_mark_size | Size of the legend dot relative to the cell dots |
tier_colors |
mapping | {} |
hex color per tier | Colour per tier in the stripe |
tier_label_map |
mapping | {} |
Legend label per tier | |
tier_bar_label |
text | Tier |
Label of the tier stripe | |
stripe_ratio |
number | computed | fraction of matrix size | Tier stripe thickness (default 0.024/0.72) |
show_tier_legend |
true / false | True |
Show the tier legend | |
tier_legend_title |
text | Tier |
Tier legend title | |
tier_legend_bbox |
list | (1.08, 0.64) |
axes fraction (x, y) | Anchor of the tier legend |
tier_legend_frameon |
true / false | True |
Frame around the tier legend | |
show_binary_legend |
true / false | True |
Show the present / absent legend | |
binary_legend_bbox |
list | [1.08, 0.72, 0.025, 0.26] |
figure fraction [x, y, w, h] | Box of the present / absent legend |
present_label |
text | present |
Legend text for present | |
absent_label |
text | absent |
Legend text for absent | |
labels_title |
text | C. Headline Motif Presence (Tier1+2+top Tier3, n=39) |
Panel title | |
title_pad |
number | 10 |
pt | Gap between title and matrix |
labels_xlabel |
text | `` | x-axis title | |
labels_ylabel |
text | `` | y-axis title | |
xlabel_pad |
number | 10 |
pt | Gap between x tick labels and the x-axis title |
ylabel_pad |
number | computed | pt | Gap before the y-axis title (default 10, or 40 when horizontal) |
ylabel_position |
one of left, right |
left |
Side of the y-axis title | |
xtick_rotation |
number | 90 |
degrees | Column label rotation |
xtick_ha |
one of left, center, right |
center |
Horizontal alignment of column labels | |
row_label_wrap_width |
integer | 28 |
characters | Wrap row labels at this width |
gene_label_fontsize |
number | computed | pt | Gene label size (horizontal; default tick_label_size) |
gene_label_rotation |
number | 90 |
degrees | Gene label rotation (horizontal) |
row_bar_values |
list | auto | One summary value per motif row, drawn as a bar right of the matrix | |
row_bar_labels |
list | auto | Text at each bar (default: the value) | |
row_bar_title |
text | auto | Title above the summary bars | |
row_bar_title_pad |
number | 3 |
pt | Gap between the bars and their title |
row_bar_gap |
number | 0.02 |
figure fraction | Gap between matrix and summary bars |
row_bar_width |
number | 0.2 |
figure fraction | Width of the summary bar area |
row_bar_height |
number | 0.62 |
row units | Bar thickness |
row_bar_color |
colour | #64748b |
hex color | Summary bar colour |
row_bar_max |
number | computed | value units | Bar axis maximum (default: largest value) |
row_bar_fontsize |
number | computed | pt | Bar label size (default tick_label_size) |
gs_left |
number | 0.08 |
[0-1] figure fraction | Left edge of the grid |
gs_right |
number | computed | [0-1] figure fraction | Right edge of the grid (0.80 vertical / 0.86 horizontal) |
gs_top |
number | computed | [0-1] figure fraction | Top edge of the grid (0.90 vertical / 0.94 horizontal) |
gs_bottom |
number | computed | [0-1] figure fraction | Bottom edge of the grid (0.25 vertical / 0.15 horizontal) |
gs_space |
number | computed | fraction of the grid | Gap between tier stripe and matrix |
boxplot¶
fig_atlas.renderers:render_boxplot
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
x_col |
text | Sample |
Column of df with the groups (x axis) | |
y_col |
text | Expression |
Column of df with the values (y axis) | |
palette |
text | Set2 |
Seaborn palette for the boxes | |
y_min |
number | auto | data units | Lower y limit (both y_min and y_max needed) |
y_max |
number | auto | data units | Upper y limit |
labels_title |
text | auto | Panel title (none = no title) | |
labels_xlabel |
text | computed | x-axis title (default: x_col) | |
labels_ylabel |
text | computed | y-axis title (default: y_col) | |
title_size |
number | 10 |
pt | Panel title font size |
axes_label_size |
number | 8 |
pt | Axis title font size |
show_xticklabels |
true / false | True |
Show x tick labels | |
show_yticklabels |
true / false | True |
Show y tick labels | |
show_legend |
true / false | False |
Show a legend of the groups |
chromosome_ideogram¶
fig_atlas_omics.renderers:render_chromosome_ideogram
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
start_col |
text | start |
Column with the band start (bp, 1-based) | |
end_col |
text | end |
Column with the band end (bp) | |
band_col |
text | band |
Column with the band name | |
stain_col |
text | gie_stain |
Column with the Giemsa stain class | |
marker_pos_col |
text | pos |
Marker table: column with the position (bp) | |
marker_label_col |
text | label |
Marker table: column with the marker text (none: no text) | |
x_min |
number | auto | bp | Left end of a zoomed window (both x_min and x_max; none: whole chromosome) |
x_max |
number | auto | bp | Right end of a zoomed window |
stain_colors |
mapping | computed | hex color | Fill per stain class (default: grey scale from white gneg to near-black gpos100; module STAINS) |
body_y |
number | 0.4 |
axes data units (0-1) | Height of the chromosome centre |
body_height |
number | 0.3 |
axes data units (0-1) | Chromosome thickness |
rounded |
true / false | True |
Round the chromosome ends (whole-chromosome view) | |
round_frac |
number | 0.012 |
fraction of the chromosome length | Radius of the rounded ends — raise for rounder ends |
outline_color |
colour | #1f2937 |
hex color | Outline colour |
outline_width |
number | 0.5 |
pt | Outline width |
show_band_labels |
true / false | True |
Write band names | |
band_label_size |
number | 5.0 |
pt | Band name size |
band_label_rotation |
number | 90.0 |
degrees | Band name rotation |
band_label_pad |
number | 0.03 |
axes data units | Gap between body and band names |
band_label_position |
one of above, inside |
above |
Band names above the body, or centred inside it (zoomed strip) | |
band_label_color |
colour | #111827 |
hex color | Band name colour (above the body) |
band_label_inside_color |
colour | #ffffff |
hex color | Band name colour inside a dark band (inside position) |
dark_stains |
list | ['gpos66', 'gpos75', 'gpos100'] |
Stains on which inside text uses band_label_inside_color | |
band_label_clear_frac |
number | 0.0 |
fraction of the shown width | Band names centred this close to a marker are left out (0: keep all) — raise if a marker arrow covers a band name |
band_label_min_frac |
number | 0.0 |
fraction of the shown width | Bands narrower than this get no name — raise if names collide |
show_ruler |
true / false | False |
Draw a position axis (zoomed view) | |
ruler_position |
one of top, bottom |
top |
Side of the position axis | |
ruler_unit_bp |
number | 1000000.0 |
bp per tick unit | Tick unit (1e6: Mb, 1e3: kb) |
ruler_suffix |
text | Mb |
Text after each tick value | |
ruler_decimals |
integer | 2 |
digits | Decimals in tick values |
ruler_nbins |
integer | 5 |
ticks | Approximate number of ruler ticks |
marker_color |
colour | #111827 |
hex color | Marker arrow and text colour |
marker_style |
one of arrow, line |
arrow |
Arrow from above, or a vertical line through the body | |
marker_length |
number | 0.25 |
axes data units | Length of a marker arrow |
marker_width |
number | 1.0 |
pt | Marker line width |
marker_head |
number | 6.0 |
pt | Marker arrow head size (head is 0.4 x this long) |
marker_label_size |
number | 6.0 |
pt | Marker text size |
labels_title |
text | auto | Name under the chromosome, e.g. 'Chromosome 2' (none: no name) | |
title_size |
number | style typography.title_size (else 8.0) |
pt | Panel title font size — lower if the title wraps or crowds the panel |
tick_label_size |
number | auto | pt | Ruler tick label size (default: rcParams) |
title_y |
number | 0.0 |
axes data units (0-1) | Height of the name's top edge |
text_color |
colour | #111827 |
hex color | Colour of the name |
cis_linkage_panel¶
fig_atlas_omics.renderers:render_cis_linkage_panel
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
wspace |
number | 0.35 |
fraction of the mean panel width | Gap between the decay bars and the scatter — raise if the scatter's y label touches the bars |
distance_bins |
list | ['<2kb', '2-10kb', '10-50kb', '50-100kb'] |
Distance bins, in order | |
bar_colors |
list | ['#991B1B', '#E11D48', '#F87171', '#CBD5E1'] |
hex colors | One colour per distance bin |
decay_title |
text | Spatial Distance Decay |
Title of the decay bar panel | |
bar_label_size |
number | 8.5 |
pt | Count label size on the bars |
scatter_title |
text | computed | Title of the scatter (default shows the pair count) | |
r_threshold |
number | 0.5 |
Pearson r | Significance line; pairs above it are highlighted |
bg_color |
colour | #94A3B8 |
hex color | Colour of pairs below the threshold |
bg_size |
number | 13 |
pt^2 (marker area) | Marker size of pairs below the threshold |
bg_alpha |
number | 0.28 |
alpha [0-1] | Opacity of pairs below the threshold |
sig_color |
colour | #E11D48 |
hex color | Colour of pairs above the threshold and of the threshold line |
sig_edge |
colour | #881337 |
hex color | Outline of pairs above the threshold |
sig_size |
number | 28 |
pt^2 (marker area) | Marker size of pairs above the threshold |
sig_alpha |
number | 0.85 |
alpha [0-1] | Opacity of pairs above the threshold |
callouts |
list | [('FOSB', 5.5, 0.993, (20, 0.94)), ('TUBB4B', 0.5, 0.964, (20, 0.81)), ('IDH2', 1.0, 0.964, (20, 0.68)), ('PDCD10', 0.5, 0.939, (20, 0.55))] |
data coords | Labelled genes: [gene, x, y, [text_x, text_y]] each |
callout_size |
number | 8.5 |
pt | Callout label size |
badge_size |
number | 8.5 |
pt | Size of the summary badge text |
legend_size |
number | 9.0 |
pt | Legend font size |
title_size |
number | 13.0 |
pt | Panel title font size |
axes_label_size |
number | 11.5 |
pt | Axis title font size |
clustered_go_heatmap¶
fig_atlas_omics.renderers:render_clustered_go_heatmap
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
cmap |
colormap | RdBu_r |
Diverging colormap for the signed scores | |
vmax |
number | 10.0 |
value units (signed -log10 FDR) | Colour scale runs -vmax..+vmax — lower to stretch contrast for weak clusters |
cell_sig_thresh |
number | 1.3 |
|value| (1.3 = FDR 0.05) | Cells at or above it print their value; below it a placeholder dash |
cell_text_color_mode |
one of threshold, contrast |
threshold |
'threshold': white text above cell_contrast_thresh; 'contrast': by contrast with the cell colour | |
cell_contrast_thresh |
number | 5.5 |
|value| | Above it cell text is white (threshold mode) — lower if mid-dark cells have hard-to-read black text |
cell_fontsize |
number | 9.2 |
pt | Cell value font size |
cell_fontweight |
text | bold |
Cell value font weight | |
placeholder_color |
colour | #94A3B8 |
hex color | Colour of the dash in non-significant cells |
ytick_fontsize |
number | 9.8 |
pt | Row (cluster) label size |
ytick_fontweight |
text | bold |
Row label font weight | |
species_tick_labels |
list | ['● Human', '◆ Mouse'] |
Tick labels of the two species columns per condition | |
c_human |
colour | #2563EB |
hex color | Colour of the human tick labels |
c_mouse |
colour | #DC2626 |
hex color | Colour of the mouse tick labels |
xtick_fontsize |
number | 11.0 |
pt | Species tick label size |
xtick_rotation |
number | 45.0 |
degrees | Species tick label rotation |
cond_label_fontsize |
number | 11.5 |
pt | Condition label size |
cond_label_y |
number | -0.58 |
data coords (rows) | Vertical position of the condition labels — lower (more negative) moves them further below the species ticks |
divider_color |
colour | #1E293B |
hex color | Line between conditions |
divider_lw |
number | 1.4 |
pt | Width of the line between conditions |
species_divider_color |
colour | #CBD5E1 |
hex color | Line between the two species of a condition |
species_divider_lw |
number | 0.7 |
pt | Width of the species divider |
count_summary¶
fig_atlas_omics.renderers:render_count_summary
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
fdr_max |
number | 0.05 |
FDR | Only rows with FDR at or below this are counted |
lfc_min |
number | 0.585 |
|log2FC| | Only rows with |log2FC| at or above this are counted |
as_pct |
true / false | False |
Show each dataset's counts as a percentage of its rows | |
unit |
text | genes |
Noun used in the default axis title and title | |
order |
list | auto | Dataset order, left to right (default: order in the data) | |
label_rename_map |
mapping | {} |
Display label per dataset | |
up_color |
colour | #c0392b |
hex color | Colour of the up bars (above zero) |
down_color |
colour | #2c6fbb |
hex color | Colour of the down bars (below zero) |
zero_line_color |
colour | #333333 |
hex color | Zero line colour |
zero_line_width |
number | 0.8 |
pt | Zero line width |
show_value_labels |
true / false | True |
Print the count on each bar | |
value_label_fontsize |
number | computed | pt | Count label size (default tick_label_size) |
show_legend |
true / false | True |
Show the up/down legend | |
legend_loc |
text | upper right |
Legend location (matplotlib loc string) | |
labels_title |
text | computed | Panel title (default names the cutoffs) | |
labels_ylabel |
text | computed | y-axis title (default 'Number of |
|
xtick_rotation |
number | 30 |
degrees | Dataset label rotation |
title_size |
number | 13 |
pt | Panel title font size |
axes_label_size |
number | 11 |
pt | Axis title font size |
tick_label_size |
number | 8 |
pt | Tick label font size |
cross_condition_dotplot¶
fig_atlas_omics.renderers:render_cross_condition_dotplot
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
title_size |
number | style typography.title_size (else 13) |
pt | Panel title font size — lower if the title wraps or crowds the panel |
axes_label_size |
number | style typography.axes_label_size (else 11) |
pt | Axis title (x/y label) font size — lower if axis titles clip or crowd |
tick_label_size |
number | style typography.tick_label_size (else 8) |
pt | Tick label font size — lower if tick labels overlap |
term_col |
text | GO Term |
Column of df with the term (row) names | |
condition_col |
text | Condition |
Column of df with the condition (column) names | |
value_col |
text | Signed -log10(FDR) |
Column of df with the value mapped to colour | |
size_col |
text | Gene Ratio |
Column of df with the value mapped to dot size | |
direction_col |
text | Direction |
Column of df with UP/DOWN, used by top_n_up / top_n_down | |
term_strip_pattern |
text | auto | Regex removed from term names before display | |
condition_order |
list | auto | Column order (default: order of first appearance) | |
condition_rename_map |
mapping | {} |
x-tick label per raw condition (matching uses raw names) | |
term_order |
list | auto | Row order (default: order of first appearance) | |
top_n_up |
integer | auto | terms | Keep only the top N UP terms per condition |
top_n_down |
integer | auto | terms | Keep only the top N DOWN terms per condition |
cmap |
colormap | RdBu_r |
Colormap for value_col | |
color_auto |
true / false | True |
Colour range symmetric around 0 from the data (else color_min / color_max) | |
color_min |
number | -10.0 |
value units | Lower end of the colour range when color_auto is false |
color_max |
number | 10.0 |
value units | Upper end of the colour range when color_auto is false |
gray_threshold |
number | auto | value units | Values below it are drawn in gray_color and the colour scale starts there (e.g. -log10 0.05) |
gray_color |
colour | #d0d0d0 |
hex color | Fill of dots below gray_threshold ('#ffffff' for hollow, ring-only dots) |
dot_size_min |
number | 20.0 |
pt^2 (marker area) | Area of the smallest dot — raise if small dots vanish |
dot_size_scale |
number | 800.0 |
pt^2 per unit of size_col | Dot area added per unit of size_col — lower if dots overlap their neighbours |
dot_edgecolor |
colour | #555555 |
hex color | Dot outline colour |
dot_edgewidth |
number | 0.5 |
pt | Dot outline width |
dot_alpha |
number | 0.9 |
[0-1] opacity | Dot opacity |
grid |
true / false | True |
Draw the background grid | |
labels_title |
text | Cross-Condition GO Dot Plot |
Panel title | |
term_label_side |
one of left, right |
right |
Side the term labels sit on | |
term_fontsize |
number | computed | pt | Term label font size (default tick_label_size) |
ylabel_wrap_width |
integer | 40 |
characters | Wrap term labels at this width |
xtick_fontsize |
number | computed | pt | Condition label font size (default tick_label_size) |
xtick_rotation |
number | 45 |
degrees | Condition label rotation |
xtick_ha |
one of left, center, right |
right |
Horizontal alignment of rotated condition labels | |
xtick_rotation_mode |
text | auto | 'anchor' keeps multi-line rotated labels aligned (matplotlib rotation_mode) | |
reposition_axes |
true / false | True |
Shrink the axes to make room for term labels and the colorbar | |
label_margin_pad |
number | 1.2 |
x measured label width | Room reserved for term labels beyond their measured width — raise to shrink the plot area further |
label_margin_cap |
number | 0.82 |
[0-1] panel fraction | Most of the panel the labels may claim |
min_plot_frac |
number | 0.22 |
[0-1] panel fraction | Least of the panel kept for the dots |
show_colorbar |
true / false | True |
Show the colourbar | |
cax |
object | auto | An existing axes to draw the colourbar in (set by the script, not in YAML) | |
colorbar_loc |
text | computed | Side of the colourbar (matplotlib location) | |
colorbar_orientation |
one of vertical, horizontal |
vertical |
Colourbar orientation when cax is given | |
colorbar_shrink |
number | 0.6 |
fraction of axes height | Length of the side colourbar |
colorbar_margin |
number | computed | [0-1] panel fraction | Side margin reserved for the colourbar (default 0.14, or 0.03 without one) |
colorbar_top_right |
true / false | False |
Small horizontal colourbar above the top-right corner instead of a side bar | |
colorbar_width_in |
number | 3.0 |
inches | Width of the top-right colourbar |
colorbar_height_in |
number | 0.16 |
inches | Height of the top-right colourbar |
colorbar_gap_in |
number | 0.25 |
inches | Gap between panel top and the top-right colourbar |
colorbar_right_pad_in |
number | 0.1 |
inches | Inset of the top-right colourbar from the right edge |
colorbar_label |
text | sign(dir) x -log10(FDR) |
Colourbar title | |
colorbar_label_fontsize |
number | computed | pt | Colourbar title size (default from axes_label_size) |
colorbar_tick_fontsize |
number | computed | pt | Colourbar tick size (default from tick_label_size) |
show_size_legend |
true / false | True |
Show the dot-size legend | |
size_legend_title |
text | Gene Ratio |
Dot-size legend title | |
size_legend_values |
list | auto | size_col units | Sizes shown in the legend (default: from the data) |
size_legend_loc |
text | best |
Legend anchor inside the axes (matplotlib loc) | |
size_legend_outside |
true / false | False |
Place the legend outside, left of the dots, anchored at size_legend_bbox | |
size_legend_bbox |
list | (0.0, 0.02) |
axes fraction (x, y) | Anchor of the outside legend |
size_legend_offset_pts |
number | -62 |
pt | Horizontal shift of the outside legend — more negative moves it further left of the dots |
size_legend_below |
true / false | False |
Place the legend centred below the axes | |
size_legend_below_offset_pts |
number | 30 |
pt | Gap between the axes and the legend below it |
size_legend_ncol |
integer | computed | columns | Columns of the legend below (default: all sizes in one row) |
cross_condition_heatmap¶
fig_atlas_omics.renderers:render_cross_condition_heatmap
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
title_size |
number | style typography.title_size (else 13) |
pt | Panel title font size — lower if the title wraps or crowds the panel |
tick_label_size |
number | style typography.tick_label_size (else 8) |
pt | Tick label font size — lower if tick labels overlap |
term_col |
text | GO Term |
Column of df with the term (row) names | |
condition_col |
text | Condition |
Column of df with the condition (column) names | |
value_col |
text | Signed -log10(FDR) |
Column of df with the signed enrichment value | |
term_strip_pattern |
text | auto | Regex removed from term names before display (e.g. a GO ID prefix) | |
condition_order |
list | auto | Column order (default: order of first appearance) | |
condition_rename_map |
mapping | {} |
Display label per condition — raw name -> label | |
column_groups |
list | auto | Column group banners over the matrix, one item per group: label, start / end (column index), color, y_banner (1.04) and line_y (1.02) in axes fraction, line_width (2.2 pt) | |
cluster_rows |
true / false | True |
Order rows by hierarchical clustering (needs > 2 rows) | |
metric |
text | euclidean |
Row distance for clustering (scipy pdist metric) | |
linkage |
text | average |
Linkage method for row clustering (scipy) | |
show_cluster_bands |
true / false | False |
Split rows into clusters with a labelled header row each | |
cluster_dist_threshold |
number | auto | dendrogram distance | Cut height for the cluster bands (default: cluster_dist_threshold_frac x the tallest merge) |
cluster_dist_threshold_frac |
number | 0.7 |
fraction of the tallest merge | Relative cut height when cluster_dist_threshold is unset — lower for more, smaller bands |
cluster_band_color |
colour | #4F46E5 |
hex color | Colour of the cluster band headers |
colors |
mapping | {} |
hex color per bin | Colour of each bin: up3/up2/up1/absent/down1/down2/down3 (FDR < 0.001 / 0.01 / 0.05) |
bin_edges |
list | [2.0, 3.0] |
-log10 FDR | Edges between the 3 strength bins (default 2 and 3 = FDR 0.01 and 0.001) |
show_cell_borders |
true / false | True |
Draw a grid between cells | |
cell_border_color |
colour | lightgrey |
color | Cell grid colour |
cell_border_width |
number | 0.5 |
pt | Cell grid line width |
split_vline |
number | auto | column index (data coords) | Dashed vertical divider at this x (e.g. 3.5 between human and mouse columns) |
split_vline_color |
colour | #333333 |
hex color | Divider colour |
split_vline_style |
text | -- |
Divider line style (matplotlib) | |
split_vline_width |
number | 1.8 |
pt | Divider width |
labels_title |
text | Cross-Condition GO Heatmap |
Panel title | |
title_pad |
number | computed | pt | Gap between title and matrix (default 24 with column banners, else 6) — raise if banners touch the title |
group_banner_fontsize |
number | computed | pt | Column banner font size (default title_size - 1.5) |
show_term_labels |
true / false | True |
Show the term (row) labels | |
term_fontsize |
number | computed | pt | Term label font size (default tick_label_size) |
term_label_wrap_width |
integer | 28 |
characters | Wrap term labels at this width — raise for fewer, longer lines |
xtick_rotation |
number | 45 |
degrees | Condition label rotation |
show_legend |
true / false | True |
Show the bin legend | |
legend_loc |
text | upper right |
Legend anchor (matplotlib loc, figure coords) | |
gs_left |
number | 0.03 |
[0-1] figure fraction | Left edge of the plot grid |
gs_right |
number | 0.98 |
[0-1] figure fraction | Right edge of the plot grid |
gs_top |
number | 0.88 |
[0-1] figure fraction | Top edge of the plot grid — lower if the title clips |
gs_bottom |
number | 0.12 |
[0-1] figure fraction | Bottom edge of the plot grid — raise if rotated condition labels clip |
dendro_width |
number | 0.12 |
fraction of the grid width | Width of the row dendrogram |
dendro_wspace |
number | 0.02 |
fraction of the grid width | Gap between dendrogram and matrix |
label_margin_pad |
number | 1.2 |
x label width | Room reserved for term labels relative to their width — raise if term labels clip at the left |
label_margin_cap |
number | 0.72 |
[0-1] grid fraction | Upper limit on the room reserved for term labels |
dose_response¶
fig_atlas.renderers:render_dose_response
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
group_col |
text | auto | Column splitting the data into coloured groups (default: one group) | |
group_order |
list | auto | Group order in drawing and legend (default: order in the data) | |
group_colors |
mapping | {} |
hex color | Colour per group (default: matplotlib colour cycle) |
group_labels |
mapping | {} |
Legend label per group (default: the group value) | |
color |
colour | #4b5563 |
hex color | Colour when there is no group_col |
x_log |
true / false | True |
Log-scaled dose axis (the usual way to show a dose series) | |
x_min |
number | auto | data coords | Lower x limit (both x_min and x_max needed) |
x_max |
number | auto | data coords | Upper x limit |
y_log |
true / false | False |
Log-scaled y axis | |
y_min |
number | auto | data coords | Lower y limit (both y_min and y_max needed) |
y_max |
number | auto | data coords | Upper y limit |
grid |
true / false | False |
Draw horizontal grid lines | |
grid_alpha |
number | 0.3 |
[0-1] opacity | Grid opacity |
spine_width |
number | auto | pt | Axis line width (default: rcParams) |
hide_top_right |
true / false | True |
Hide the top and right axis lines | |
labels_title |
text | auto | Panel title (none: no title) | |
labels_xlabel |
text | computed | x-axis title (default: the x column's name) | |
labels_ylabel |
text | computed | y-axis title (default: the y column's name) | |
title_size |
number | 8.0 |
pt | Panel title size |
axes_label_size |
number | auto | pt | Axis title size (default: rcParams) |
tick_label_size |
number | auto | pt | Tick label size (default: rcParams) |
show_legend |
true / false | True |
Show the group legend (only with a group_col) | |
legend_loc |
text | best |
Legend location (matplotlib loc) | |
legend_fontsize |
number | auto | pt | Legend font size (none: tick_label_size) |
legend_frameon |
true / false | False |
Draw a frame around the legend | |
x_col |
text | dose |
Column with the doses (positive numbers) | |
y_col |
text | response |
Column with the responses (one row per replicate) | |
points |
one of mean, all |
mean |
Per dose: the mean with an error bar, or every replicate | |
error |
one of sem, sd |
sem |
Error bar of the mean: standard error or standard deviation | |
marker_size |
number | 4.0 |
pt | Point size |
capsize |
number | 2.0 |
pt | Width of the error-bar caps |
error_width |
number | 0.8 |
pt | Error-bar line width |
fit |
true / false | True |
Draw the four-parameter logistic fit | |
fit_line_width |
number | 1.2 |
pt | Fit curve width |
fit_points |
integer | 200 |
points along the dose range | Smoothness of the fit curve |
show_ec50 |
true / false | False |
Mark each fitted EC50 with a dashed vertical line | |
ec50_line_width |
number | 0.6 |
pt | EC50 line width |
dot_matrix¶
fig_atlas.renderers:render_dot_matrix
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
row_col |
text | row |
Column with the row names | |
col_col |
text | column |
Column with the column names | |
size_col |
text | auto | Column with the count that sets dot area (absent: one size) | |
color_col |
text | auto | Column with the category that sets dot colour (absent: one colour) | |
row_group_col |
text | auto | Column grouping rows into blocks with a line between them | |
row_order |
list | auto | Row order, top to bottom (default: order in the data) | |
col_order |
list | auto | Column order, left to right (default: order in the data) | |
col_labels |
mapping | {} |
Shown name per column | |
multi |
one of first, split |
first |
A cell with several categories: one dot coloured by the first in color_order, or one dot per category | |
split_offset |
number | 0.22 |
column units | Distance between the dots of a split cell — raise if they touch |
color_order |
list | auto | Category priority and legend order (default: order in the data) | |
color_map |
mapping | {} |
hex color | Colour per category |
color_labels |
mapping | {} |
Legend text per category | |
default_color |
colour | #4b5563 |
hex color | Dot colour without a category |
size_per_unit |
number | 12.0 |
pt^2 per count | Dot area per count |
size_min |
number | 10.0 |
pt^2 | Smallest dot area |
size_max |
number | 120.0 |
pt^2 | Largest dot area — lower if dots touch |
edge_color |
colour | #ffffff |
hex color | Dot outline colour |
edge_width |
number | 0.4 |
pt | Dot outline width |
show_counts |
true / false | False |
Write the count beside each dot | |
count_size |
number | 5.0 |
pt | Size of those counts |
count_offset |
number | 0.28 |
column units | Horizontal offset of the counts from the dot centre |
grid |
true / false | True |
Draw faint lines through the cells | |
grid_color |
colour | #e5e7eb |
hex color | Grid line colour |
grid_width |
number | 0.4 |
pt | Grid line width |
group_line_color |
colour | #9ca3af |
hex color | Line between row groups |
group_line_width |
number | 0.6 |
pt | Width of that line |
row_label_style |
text | normal |
Font style of the row names (italic for genes) | |
tick_length |
number | 0.0 |
pt | Tick mark length (0: names only) |
x_tick_rotation |
number | 0.0 |
degrees | Rotation of the column names |
show_legend |
true / false | True |
Show the colour and size legends | |
legend_anchor |
list | [1.02, 1.0] |
axes fraction [x, y] | Upper-left corner of the legend |
legend_edge_width |
number | 0.0 |
pt | Outline width of the legend dots |
size_legend_counts |
list | [1, 5] |
Counts shown in the size legend (empty: none) | |
size_legend_label |
text | {n} |
Text of each size legend entry ({n}: the count) | |
labels_title |
text | auto | Panel title | |
labels_xlabel |
text | auto | x-axis title | |
labels_ylabel |
text | auto | y-axis title | |
title_size |
number | style typography.title_size (else 8.0) |
pt | Panel title font size — lower if the title wraps or crowds the panel |
axes_label_size |
number | auto | pt | Axis title size (default: rcParams) |
tick_label_size |
number | auto | pt | Row and column name size (default: rcParams) |
legend_fontsize |
number | auto | pt | Legend text size (default: rcParams) |
effect_dots¶
fig_atlas.renderers:render_effect_dots
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
item_col |
text | item |
Column with the row names (what each estimate is about) | |
series_col |
text | series |
Column with the series (e.g. unadjusted / adjusted; absent: one) | |
estimate_col |
text | estimate |
Column with the estimate (dot) | |
low_col |
text | ci_low |
Column with the lower confidence limit | |
high_col |
text | ci_high |
Column with the upper confidence limit | |
item_order |
list | auto | Row order, top to bottom (default: order in the data) | |
item_sort |
one of data, estimate_desc, estimate_asc |
data |
Row order when item_order is unset: as in the data, or by the (first series') estimate, largest on top (estimate_desc) or smallest on top | |
item_labels |
mapping | {} |
Display label per item | |
series_order |
list | auto | Series order (default: order in the data) | |
series_colors |
mapping | {} |
Colour per series | |
series_labels |
mapping | {} |
Legend label per series | |
dodge |
number | 0.18 |
row units | Vertical offset between series within a row — raise if the series' intervals overlap |
color_by |
one of series, threshold |
series |
Colour each series (series_colors), or each estimate by direction and significance (threshold) | |
sig_col |
text | auto | threshold: column with the significance value (smaller = stronger, e.g. padj) | |
sig_threshold |
number | 0.05 |
significance units | threshold: estimates with sig_col at or below this are up / down |
up_color |
colour | #D55E00 |
hex color | threshold: colour of significant positive estimates |
down_color |
colour | #0072B2 |
hex color | threshold: colour of significant negative estimates |
ns_color |
colour | #9CA3AF |
hex color | threshold: colour of the others |
class_labels |
mapping | {'up': 'Up', 'down': 'Down', 'ns': 'n.s.'} |
threshold: legend label per class (keys up, down, ns) | |
marker_size |
number | 16 |
pt^2 (marker area) | Point estimate marker size |
ci_width |
number | 0.8 |
pt | Confidence interval line width |
zero_line |
true / false | True |
Draw the no-effect line at x = 0 | |
zero_line_color |
colour | #6b7280 |
hex color | No-effect line colour |
zero_line_width |
number | 0.5 |
pt | No-effect line width |
zero_line_style |
text | - |
matplotlib line style | No-effect line style ('-', '--', ':') |
xlim |
list | auto | data coords [min, max] | x-axis range (default: data) |
spine_width |
number | 0.6 |
pt | Axis spine width |
legend |
true / false | True |
Show the series legend | |
legend_loc |
text | lower right |
Legend location (matplotlib loc string) | |
legend_anchor |
list | auto | axes fraction (x, y) | bbox_to_anchor for the legend |
legend_ncol |
integer | 1 |
columns | Legend columns |
legend_fontsize |
number | 5.0 |
pt | Legend font size |
title |
text | auto | Panel title | |
xlabel |
text | auto | x-axis title | |
title_pad |
number | 3.0 |
pt | Gap between title and axes |
title_size |
number | 6.5 |
pt | Panel title font size |
axes_label_size |
number | 6.0 |
pt | Axis title font size |
tick_label_size |
number | 5.5 |
pt | Tick and row label font size |
flow_diagram¶
fig_atlas.renderers:render_flow_diagram
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
id_col |
text | id |
Column with each node's unique name (edges refer to it) | |
x_col |
text | x |
Column with the node's left edge (diagram units) | |
y_col |
text | y |
Column with the node's top edge (diagram units) | |
w_col |
text | w |
Column with the node's width | |
h_col |
text | h |
Column with the node's height | |
title_col |
text | title |
Column with the node's bold first line | |
body_col |
text | body |
Column with further lines, separated by newlines | |
kind_col |
text | kind |
Column with the node kind: box, group, text, decision or terminal | |
fill_col |
text | fill |
Column with a node's own fill colour (empty: box_fill) | |
color_col |
text | color |
Column with a node's own text colour (empty: text_color, body_color) | |
edges |
list | [] |
Arrows: list of {from, to, label?, from_side?, to_side?, rad?, style?, route?} | |
xlim |
list | auto | diagram units [min, max] | Horizontal extent (default: the nodes) |
ylim |
list | auto | diagram units [min, max] | Vertical extent (default: the nodes) |
y_down |
true / false | True |
y grows downward, like a page (false: upward, like a plot) | |
units_per_mm |
number | 1.0 |
diagram units per mm | Scale of the diagram units, used to place body text below a title — 1 when the diagram is laid out in mm |
box_fill |
colour | #F3F4F6 |
hex color | Box fill |
box_edge |
colour | #4B5563 |
hex color | Box outline |
box_linewidth |
number | 0.6 |
pt | Box outline width |
box_radius |
number | 1.0 |
diagram units | Corner radius of boxes and groups — 0 for square corners |
group_edge |
colour | #9CA3AF |
hex color | Group outline |
group_fill |
colour | none |
hex color or none | Group fill |
group_linestyle |
text | -- |
Group outline style (matplotlib linestyle) | |
group_linewidth |
number | 0.6 |
pt | Group outline width |
title_size |
number | 7.0 |
pt | Node title size |
body_size |
number | 6.0 |
pt | Node body size |
title_weight |
text | bold |
Node title weight | |
text_color |
colour | #111827 |
hex color | Title colour |
body_color |
colour | #374151 |
hex color | Body colour |
text_align |
text | center |
Text alignment in boxes: center or left | |
text_valign |
text | center |
Vertical placement of a box's or text node's text: center or top — top fills a box from its top edge (text_pad below it); groups always label their top-left corner | |
text_pad |
number | 1.5 |
diagram units | Gap between a box's edge and its text — raise if text touches the outline |
line_spacing |
number | 1.25 |
multiple of the font size | Line spacing of the body text |
title_gap |
number | 0.8 |
diagram units | Gap between a node's title and its body |
arrow_color |
colour | #374151 |
hex color | Arrow colour |
arrow_width |
number | 0.8 |
pt | Arrow line width |
arrow_head |
number | 6.0 |
pt | Arrow head size |
arrow_gap |
number | 0.6 |
pt | Gap between an arrow's ends and the boxes |
dashed_style |
list | [0, [3, 2]] |
matplotlib dash pattern (offset, [on, off] in pt) | Line style of edges marked style: dashed |
route |
one of straight, elbow |
straight |
How edges run: straight lines, or right-angle segments as in flowcharts (an edge's own route wins) | |
elbow_offset |
number | 4.0 |
diagram units | How far a U-shaped elbow edge (two sides facing the same way) runs out past the nodes — raise if the return line crowds the boxes it passes |
level_edges |
true / false | True |
Draw a straight arrow level (horizontal or vertical) when the two nodes' spans overlap — false to join the middles of the two sides, even if the arrow then slants | |
edge_label_size |
number | 6.0 |
pt | Edge label size |
edge_label_color |
colour | #374151 |
hex color | Edge label colour |
edge_label_offset |
number | 1.2 |
diagram units | Edge label distance from the arrow's middle (above a horizontal arrow, right of others) |
funnel¶
fig_atlas.renderers:render_funnel
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
bar_color |
colour | #3b73b9 |
hex color | Fill colour of the funnel bars |
bar_edgecolor |
colour | black |
color | Bar outline colour |
bar_width |
number | 0.5 |
fraction of the category spacing | Bar width — lower to separate the steps more |
show_value_labels |
true / false | True |
Print the count on each bar | |
value_position |
one of top, inside |
top |
Count above the bar ('top') or centred inside it | |
value_color |
colour | black |
color | Count label colour |
value_fontsize |
number | computed | pt | Count label size (default axes_label_size) |
labels_title |
text | Target narrowing |
Panel title | |
labels_subtitle |
text | auto | Second line under the title | |
labels_ylabel |
text | count |
y-axis title | |
title_pad |
number | 12.0 |
pt | Gap between title and axes — raise if the title touches the value labels |
xtick_rotation |
number | 0 |
degrees | Step label rotation (non-zero labels are right-aligned) |
title_size |
number | 13 |
pt | Panel title font size |
subtitle_size |
number | 9 |
pt | Subtitle font size |
axes_label_size |
number | 11 |
pt | Axis title font size |
tick_label_size |
number | 8 |
pt | Tick label font size |
gene_model_track¶
fig_atlas_omics.renderers:render_gene_model_track
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
gene_col |
text | gene_name |
Column with the gene name | |
transcript_col |
text | transcript_id |
Column with the transcript id | |
strand_col |
text | strand |
Column with + / - | |
exon_start_col |
text | exon_start |
Column with the exon start (bp, 1-based) | |
exon_end_col |
text | exon_end |
Column with the exon end (bp) | |
collapse |
one of longest, all |
longest |
One transcript per gene (the longest), or all | |
hide_pattern |
text | auto | Regular expression; genes whose name matches are left out (none: keep all) — e.g. '^(ENSMUSG|Gm\d)' hides unnamed and predicted genes | |
x_min |
number | auto | bp | Left end of the window (both x_min and x_max; none: the data extent) |
x_max |
number | auto | bp | Right end of the window |
max_rows |
integer | 3 |
rows | Most rows of genes — raise if names are dropped onto busy rows |
row_gap_frac |
number | 0.01 |
fraction of the window | Smallest gap between two genes (with their names) on one row |
gene_color |
colour | #1e3a8a |
hex color | Colour of exons, introns and chevrons |
highlight_colors |
mapping | {} |
hex color | Colour per gene name to pick out |
exon_height |
number | 0.5 |
fraction of a row | Exon box height |
intron_width |
number | 0.6 |
pt | Intron line width |
chevron_spacing_frac |
number | 0.025 |
fraction of the window | Distance between strand chevrons (0: none) — raise for fewer chevrons |
chevron_edge_width |
number | 0.0 |
pt | Chevron outline width (0: filled only) |
chevron_size |
number | 2.5 |
pt | Chevron marker size |
show_labels |
true / false | True |
Write gene names | |
label_size |
number | 6.0 |
pt | Gene name size |
label_style |
text | italic |
Gene name font style | |
label_position |
one of below, left |
below |
Names under the model, or left of it | |
label_pad |
number | 0.08 |
fraction of a row | Gap between a model and its name |
label_char_em |
number | 0.6 |
em per character | Estimated text width per character (packing only) — raise if names on one row touch |
text_color |
colour | #111827 |
hex color | Gene name colour |
go_bar¶
fig_atlas_omics.renderers:render_go_bar
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
top_n |
integer | 15 |
terms | Terms shown after sorting |
sort_by |
one of FDR (ascending), Gene Count (descending), Alphabetical |
FDR (ascending) |
Order of the terms | |
x_axis |
one of -log10(FDR), Gene Ratio, Fold Enrichment |
-log10(FDR) |
Bar length metric | |
horizontal |
true / false | True |
Horizontal bars (terms on the y axis) | |
label_strip_pattern |
text | auto | Regex removed from term names (e.g. GO IDs) | |
ylabel_wrap_width |
integer | 70 |
characters | Wrap term names at this width |
bar_color |
colour | #4C72B0 |
hex color | Bar fill colour |
bar_edgecolor |
colour | black |
color | Bar outline colour |
bar_edgewidth |
number | 0.5 |
pt | Bar outline width |
show_threshold_line |
true / false | False |
Draw the FDR cutoff (only with x_axis -log10(FDR)) | |
threshold_fdr |
number | 0.05 |
FDR | FDR of the cutoff line |
threshold_line_color |
colour | black |
color | Cutoff line colour |
threshold_line_style |
text | -- |
Cutoff line style (matplotlib linestyle) | |
threshold_line_width |
number | 1.0 |
pt | Cutoff line width |
threshold_line_alpha |
number | 0.6 |
alpha [0-1] | Cutoff line opacity |
grid |
true / false | True |
Draw grid lines along the value axis | |
grid_style |
text | -- |
Grid line style (matplotlib linestyle) | |
grid_alpha |
number | 0.3 |
alpha [0-1] | Grid line opacity |
labels_title |
text | GO/KEGG Enrichment Bar Chart |
Panel title | |
xlabel_text |
text | computed | Value axis title (default: the x_axis name) | |
ylabel_text |
text | GO/KEGG Terms |
Term axis title | |
xtick_rotation |
number | 45 |
degrees | Tick label rotation of the category axis in vertical mode |
title_size |
number | 13 |
pt | Panel title font size |
axes_label_size |
number | 11 |
pt | Axis title font size |
tick_label_size |
number | 8 |
pt | Tick label font size |
go_cluster_dot¶
fig_atlas_omics.renderers:render_go_cluster_dot
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
top_n |
integer | 20 |
clusters | Clusters shown |
top_n_by |
one of FDR, Fold Enrichment |
FDR |
Which clusters are kept when there are more than top_n | |
sort_by |
one of FDR, Cluster Size, Term Name |
FDR |
Row order of the kept clusters | |
ylabel_wrap_width |
integer | 60 |
characters | Characters kept from each term name |
x_axis |
one of -log10(FDR), Gene Ratio, Fold Enrichment |
Fold Enrichment |
Metric on the x axis | |
x_min |
number | auto | data coords | Lower x limit (default: data) |
x_max |
number | auto | data coords | Upper x limit (default: data) |
y_min |
number | auto | row index | Lower y limit (default: data) |
y_max |
number | auto | row index | Upper y limit (default: data) |
show_zero_line |
true / false | True |
Draw the x = 0 reference line | |
zero_line_color |
colour | gray |
color | Reference line colour |
zero_line_width |
number | 0.6 |
pt | Reference line width |
zero_line_style |
text | - |
Reference line style (matplotlib linestyle) | |
color_by |
one of Fold Enrichment, Fold Enrichment (median), FDR, Ontology, Direction |
Fold Enrichment |
What the dot colour encodes | |
cmap |
text | computed | Colormap (default YlOrRd for fold enrichment, viridis_r for FDR) | |
z_auto |
true / false | True |
Colour scale from the data; set false to use z_min/z_max | |
z_min |
number | computed | colour metric units | Lower colour limit when z_auto is false |
z_max |
number | computed | colour metric units | Upper colour limit when z_auto is false |
direction_colors |
mapping | {'UP': '#e74c3c', 'DOWN': '#3498db', 'TOTAL': '#95a5a6'} |
hex color | Colour per direction when color_by is Direction |
dot_default_color |
colour | #3498db |
hex color | Dot colour when the color_by column is missing |
colorbar_loc |
one of right, left, top, bottom |
right |
Side of the colourbar | |
colorbar_shrink |
number | 0.6 |
fraction of the axes height | Colourbar length |
color_legend_loc |
text | best |
Location of the Ontology/Direction colour key | |
size_by |
one of Cluster size, Gene count |
Cluster size |
What the dot size encodes | |
dot_size_min |
number | 40.0 |
pt^2 (marker area) | Size of the smallest dot |
dot_size_scale |
number | 20.0 |
pt^2 per unit | Added area per member or gene — lower if large dots overlap |
dot_alpha |
number | 0.85 |
alpha [0-1] | Dot opacity |
dot_edgecolor |
colour | black |
color | Dot outline colour |
dot_edgewidth |
number | 0.8 |
pt | Dot outline width |
show_size_legend |
true / false | True |
Show the dot size legend | |
size_legend_loc |
text | best |
Size legend location (matplotlib loc string) | |
size_legend_values |
list | auto | Values shown in the size legend (default: three spread values) | |
labels_title |
text | computed | Panel title (default names top N and the size metric) | |
title |
text | computed | Older name of labels_title, used when labels_title is not set | |
title_size |
number | 13 |
pt | Panel title font size |
axes_label_size |
number | 11 |
pt | Axis title font size |
tick_label_size |
number | 8 |
pt | Tick label font size |
go_dot¶
fig_atlas_omics.renderers:render_go_dot
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
top_n |
integer | 20 |
terms | Terms shown (highest on the x measure) |
x_axis |
one of Gene Ratio, Fold Enrichment |
Gene Ratio |
Measure on the x axis | |
size_mode |
one of Gene Count, Gene Ratio, Fold Enrichment |
Gene Count |
Measure mapped to dot size | |
palette |
colormap | YlOrRd_r |
Colormap for the adjusted P | |
color_min |
number | 0.0 |
adjusted P | Lower end of the colour scale |
color_max |
number | 0.05 |
adjusted P | Upper end of the colour scale |
ylabel_wrap_width |
integer | 26 |
characters | Wrap term labels at this width |
xlabel_text |
text | computed | x-axis title (default: the x_axis name) | |
title_size |
number | 13 |
pt | Panel title font size |
axes_label_size |
number | 11 |
pt | Axis title font size |
tick_label_size |
number | 8 |
pt | Tick label font size |
go_rrvgo_treemap¶
fig_atlas_omics.renderers:render_go_rrvgo_treemap
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
size_floor_frac |
number | 0.03 |
fraction of the panel's largest term | Smallest cell size, so zero-size terms stay visible as slivers |
cmap |
text | hue |
Cluster colours: a qualitative colormap name, or 'hue' for an even hue sweep | |
canvas_width |
number | 100.0 |
treemap units | Width of the layout canvas (height follows the axes' aspect) |
edge_color |
colour | black |
color | Cell outline colour |
edge_width |
number | 1.0 |
pt | Cell outline width |
cluster_border_color |
colour | computed | color | Outline around each cluster (default edge_color) |
cluster_border_width |
number | computed | pt | Cluster outline width (default 2.5 x edge_width) |
label_min_area_frac |
number | 0.004 |
fraction of the canvas area | Cells smaller than this get no label — raise if small cells are crowded with text |
label_wrap_width |
integer | 14 |
characters | Wrap cell labels at this width |
hub_label_size |
number | 11 |
pt | Cluster (parent term) label size |
member_label_size |
number | 7.5 |
pt | Member term label size |
max_dispensability |
number | auto | rrvgo dispensability [0-1] | Drop terms more dispensable than this |
labels_title |
text | GO rrvgo Cluster Treemap |
Panel title | |
title_size |
number | 13 |
pt | Panel title font size |
group_scatter¶
fig_atlas.renderers:render_group_scatter
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
x_col |
text | x |
Column with the x values | |
y_col |
text | y |
Column with the y values | |
group_col |
text | group |
Column with the group of each point (absent: one group) | |
label_col |
text | label |
Column with the text written beside each point (with point_labels) | |
group_order |
list | auto | Group draw order (default: order in the data) | |
group_colors |
mapping | {} |
Point colour per group (unlisted groups are grey) | |
group_labels |
mapping | {} |
Legend label per group | |
marker_size |
number | 14 |
pt^2 (marker area) | Point size |
edgecolor |
colour | white |
color | Point outline colour |
edgewidth |
number | 0.4 |
pt | Point outline width |
point_labels |
true / false | auto | Write the label column next to each point | |
point_label_offset |
list | [2, 1] |
points (dx, dy) | Offset of the point labels |
point_label_fontsize |
number | 4.6 |
pt | Point label size |
fit |
true / false | True |
Draw a least-squares line over all points | |
fit_color |
colour | #374151 |
hex color | Fit line colour |
fit_width |
number | 0.7 |
pt | Fit line width |
fit_style |
text | - |
Fit line style (matplotlib linestyle) | |
annotate_r |
true / false | True |
Print the Pearson r and P | |
r_fmt |
text | r = {r:+.2f}, P = {p:.1g} |
Format of the r text; fields r, p, n | |
r_xy |
list | [0.03, 0.97] |
axes fraction (x, y) | Top-left corner of the r text |
r_fontsize |
number | 5.5 |
pt | r text size |
xlim |
list | auto | data coords [min, max] | x-axis range (default: data) |
ylim |
list | auto | data coords [min, max] | y-axis range (default: data) |
zero_line |
true / false | True |
Draw the y = 0 line | |
zero_line_color |
colour | #9ca3af |
hex color | Zero line colour |
zero_line_width |
number | 0.4 |
pt | Zero line width |
spine_width |
number | 0.6 |
pt | Axis spine width |
legend |
true / false | auto | Show the group legend | |
legend_loc |
text | lower right |
Legend location (matplotlib loc string) | |
legend_fontsize |
number | 5.0 |
pt | Legend font size |
title |
text | auto | Panel title | |
xlabel |
text | auto | x-axis title | |
ylabel |
text | auto | y-axis title | |
title_pad |
number | 3.0 |
pt | Gap between title and axes |
title_size |
number | 6.5 |
pt | Panel title font size |
axes_label_size |
number | 6.0 |
pt | Axis title font size |
tick_label_size |
number | 5.5 |
pt | Tick label font size |
grouped_hbar¶
fig_atlas.renderers:render_grouped_hbar
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
title_size |
number | style typography.title_size (else 13) |
pt | Panel title font size — lower if the title wraps or crowds the panel |
axes_label_size |
number | style typography.axes_label_size (else 11) |
pt | Axis title (x/y label) font size — lower if axis titles clip or crowd |
tick_label_size |
number | style typography.tick_label_size (else 8) |
pt | Tick label font size — lower if tick labels overlap |
legend_fontsize |
number | style typography.legend_fontsize (else CODE_DEFAULT) |
pt | Legend text font size — lower if the legend covers data |
category_col |
text | category |
Column of df holding the row categories (y axis) | |
series |
list | auto | Columns of df drawn as side-by-side bars, in this order (required) | |
series_labels |
mapping | {} |
Legend label per series column — map column -> text | |
series_colors |
mapping | {} |
hex color per series | Bar colour per series column; unset series cycle indigo / amber / teal |
category_order |
list | auto | Row order top to bottom; default: order of first appearance | |
bar_height |
number | 0.36 |
data units (row spacing = 1) | Height of each bar; a group of n bars spans n x this — raise for thicker bars, lower for gaps |
ylabel_wrap_width |
integer | 0 |
characters | Wrap row labels at this width (0 = no wrap) — lower if row labels push the plot right |
xlim |
list | auto | data coords [min, max] | x-axis range; only the max is used (min is 0) — default: 1.15 x the largest bar |
show_value_labels |
true / false | True |
Print each bar's count at its end | |
value_label_fontsize |
number | computed | pt | Count label size (default: tick label size) — lower if labels overlap the next bar |
value_label_offset |
number | 0.012 |
fraction of x range | Gap between bar end and its count — raise if labels touch the bars |
xlabel |
text | count |
x-axis title | |
labels_title |
text | `` | Panel title (empty = none) | |
show_legend |
true / false | True |
Show the series legend | |
legend_loc |
text | lower right |
Legend anchor (matplotlib loc) — move it off the bars |
heatmap¶
fig_atlas.renderers:render_heatmap
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
label_col |
text | auto | Column with the row labels (default: symbol, else gene_id, else the row number) | |
sample_columns |
list | auto | Columns to show as samples (default: every numeric column that is not a statistic such as padj or log2FC) | |
n_genes |
integer | 50 |
genes | Genes shown (after sorting) |
max_gene_labels |
integer | 20 |
genes | Genes are named only up to this many rows (more: no names, rather than row numbers) — raise with a taller panel and a smaller tick_label_size |
sorting |
one of padj, log2fc, clustering |
padj |
How the genes are chosen and ordered | |
normalization |
one of z-score, minmax, log2, none |
z-score |
Per-gene scaling of the values | |
transpose |
true / false | False |
Samples as rows, genes as columns | |
sample_rename_map |
mapping | {} |
Display label per raw sample name | |
show_dendrogram |
true / false | False |
Draw the clustering dendrogram | |
colormap |
colormap | RdBu_r |
Colormap of the heatmap | |
colorbar_min |
number | auto | value units | Lower end of the colour scale (default: data) |
colorbar_max |
number | auto | value units | Upper end of the colour scale (default: data) |
show_colorbar |
true / false | True |
Show the colourbar | |
labels_title |
text | auto | Panel title | |
labels_xlabel |
text | auto | x-axis title | |
labels_ylabel |
text | auto | y-axis title | |
show_xticklabels |
true / false | True |
Show column labels | |
show_yticklabels |
true / false | True |
Show row labels | |
xtick_label_rotation |
number | 90 |
degrees | Column label rotation |
xtick_label_alignment |
text | computed | Column label alignment (default: center at 0/90 degrees, else right) | |
title_size |
number | 10 |
pt | Panel title font size |
axes_label_size |
number | 8 |
pt | Axis title font size |
tick_label_size |
number | 6 |
pt | Tick label font size |
histogram¶
fig_atlas.renderers:render_histogram
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
group_col |
text | auto | Column splitting the data into coloured groups (default: one group) | |
group_order |
list | auto | Group order in drawing and legend (default: order in the data) | |
group_colors |
mapping | {} |
hex color | Colour per group (default: matplotlib colour cycle) |
group_labels |
mapping | {} |
Legend label per group (default: the group value) | |
color |
colour | #4b5563 |
hex color | Colour when there is no group_col |
x_log |
true / false | False |
Log-scaled x axis | |
x_min |
number | auto | data coords | Lower x limit (both x_min and x_max needed) |
x_max |
number | auto | data coords | Upper x limit |
y_log |
true / false | False |
Log-scaled y axis | |
y_min |
number | auto | data coords | Lower y limit (both y_min and y_max needed) |
y_max |
number | auto | data coords | Upper y limit |
grid |
true / false | False |
Draw horizontal grid lines | |
grid_alpha |
number | 0.3 |
[0-1] opacity | Grid opacity |
spine_width |
number | auto | pt | Axis line width (default: rcParams) |
hide_top_right |
true / false | True |
Hide the top and right axis lines | |
labels_title |
text | auto | Panel title (none: no title) | |
labels_xlabel |
text | computed | x-axis title (default: the x column's name) | |
labels_ylabel |
text | computed | y-axis title (default: the y column's name) | |
title_size |
number | 8.0 |
pt | Panel title size |
axes_label_size |
number | auto | pt | Axis title size (default: rcParams) |
tick_label_size |
number | auto | pt | Tick label size (default: rcParams) |
show_legend |
true / false | True |
Show the group legend (only with a group_col) | |
legend_loc |
text | best |
Legend location (matplotlib loc) | |
legend_fontsize |
number | auto | pt | Legend font size (none: tick_label_size) |
legend_frameon |
true / false | False |
Draw a frame around the legend | |
x_col |
text | value |
Column with the values | |
bins |
integer | 20 |
number of bins | Number of equal-width bins (shared by all groups) — lower for small samples, raise for large ones |
bin_min |
number | auto | data coords | Left edge of the first bin (default: smallest value) |
bin_max |
number | auto | data coords | Right edge of the last bin (default: largest value) |
density |
true / false | False |
Show density (area 1 per group) instead of counts, so groups of different size compare | |
style |
one of step, bar |
step |
Outlines (step) or filled bars (bar); outlines read better with several groups | |
line_width |
number | 1.0 |
pt | Outline width |
fill_alpha |
number | 0.35 |
[0-1] opacity | Fill opacity of bars (style bar) |
image_panel¶
fig_atlas.renderers:render_image_panel
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
channel_colors |
list | auto | matplotlib colours, one per file | Tint per greyscale channel when several files are combined (default: green, magenta, cyan, ...) |
channel_labels |
list | auto | Name per channel, shown in a corner when show_channel_labels | |
display_ranges |
list | auto | image units [min, max] per channel | Linear display range per channel (default: from display_percentiles) |
display_percentiles |
list | [0.0, 100.0] |
percentiles [low, high] | Display range taken from the image when display_ranges is not set — e.g. [0.5, 99.5] to ignore a few saturated pixels |
gamma |
number | 1.0 |
exponent | Gamma on the scaled image; anything but 1 is a nonlinear adjustment and verify warns |
crop |
list | auto | pixels [x0, y0, x1, y1] | Region shown (default: the whole image) |
interpolation |
text | nearest |
Resampling when drawn (matplotlib imshow; nearest keeps pixels) | |
panel |
text | auto | Panel letter recorded with the adjustments (README 'Images' section) | |
pixel_size |
number | auto | physical units per pixel | Size of one pixel; needed for a scale bar |
pixel_unit |
text | µm |
Unit of pixel_size and scale_bar | |
scale_bar |
number | auto | physical units (pixel_unit) | Scale bar length (default: no bar) |
scale_bar_position |
one of lower right, lower left, upper right, upper left |
lower right |
Corner of the scale bar | |
scale_bar_color |
colour | white |
color | Scale bar and its label colour |
scale_bar_thickness |
number | 2.0 |
pt | Scale bar line width |
scale_bar_pad |
number | 0.05 |
fraction of the panel | Distance of the bar from the panel edges |
scale_bar_label |
true / false | True |
Print the length above the bar | |
scale_bar_fontsize |
number | 6.0 |
pt | Scale bar label size |
show_channel_labels |
true / false | False |
Print the channel names, in their tint, in the upper left | |
channel_label_fontsize |
number | 6.0 |
pt | Channel name size |
channel_label_box |
true / false | False |
Put a dark box behind the channel names (keeps them readable on a busy image) | |
channel_label_box_color |
colour | black |
color | Colour of that box |
channel_label_box_alpha |
number | 0.6 |
[0-1] opacity | Opacity of that box |
labels_title |
text | auto | Panel title | |
title_size |
number | 8.0 |
pt | Panel title size |
frame |
true / false | False |
Draw a frame around the image | |
frame_color |
colour | black |
color | Frame colour |
frame_width |
number | 0.5 |
pt | Frame line width |
interval_track¶
fig_atlas_omics.renderers:render_interval_track
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
start_col |
text | start |
Column with the interval start (bp, 1-based) | |
end_col |
text | end |
Column with the interval end (bp) | |
kind_col |
text | kind |
Column with the kind (sets colour and legend entry) | |
label_col |
text | label |
Column with the text beside an interval (none: no text) | |
kind_order |
list | auto | Kinds in legend order (default: order in the data) | |
x_min |
number | auto | bp | Left end of the window (both x_min and x_max; none: the data extent) |
x_max |
number | auto | bp | Right end of the window |
max_rows |
integer | 3 |
rows | Most rows — raise if labels overlap on one row |
row_gap_frac |
number | 0.01 |
fraction of the window | Smallest gap between two intervals (with their labels) on one row |
kind_colors |
mapping | {} |
hex color | Colour per kind |
kind_labels |
mapping | {} |
Legend text per kind | |
default_color |
colour | #6b7280 |
hex color | Colour of kinds without one |
bar_height |
number | 0.45 |
fraction of a row | Box height |
bar_alpha |
number | 0.85 |
[0-1] opacity | Box opacity |
bracket_kinds |
list | [] |
Kinds drawn as a bracket (a line with end ticks) instead of a box | |
bracket_width |
number | 0.8 |
pt | Bracket line width |
open_kinds |
list | [] |
Kinds whose edges are open: no end ticks, a dotted line past both ends | |
open_extend_frac |
number | 0.04 |
fraction of the window | Length of that dotted line past each end — raise to stress that the edge is uncertain |
open_style |
text | : |
Line style of that dotted line (matplotlib) | |
point_frac |
number | 0.002 |
fraction of the window | Intervals shorter than this are drawn as a triangle |
point_edge_width |
number | 0.0 |
pt | Triangle outline width (0: filled only) |
point_size |
number | 4.0 |
pt | Triangle marker size |
label_size |
number | 5.5 |
pt | Label size |
label_pad_frac |
number | 0.005 |
fraction of the window | Gap between an interval and its label (label right of it) |
label_char_em |
number | 0.6 |
em per character | Estimated text width per character (packing only) — raise if labels on one row touch |
text_color |
colour | #111827 |
hex color | Label colour |
show_legend |
true / false | True |
Show a legend of the kinds drawn | |
legend_loc |
text | upper left |
Legend location (matplotlib loc) | |
legend_anchor |
list | [1.0, 1.0] |
axes fraction [x, y] | Legend anchor point |
legend_frameon |
true / false | False |
Draw a frame around the legend | |
legend_fontsize |
number | style typography.legend_fontsize (else CODE_DEFAULT) |
pt | Legend text font size — lower if the legend covers data |
labels_ylabel |
text | auto | Track name left of the track (none: no name) | |
axes_label_size |
number | auto | pt | Track name size (default: rcParams) |
jaccard_heatmap¶
fig_atlas.renderers:render_jaccard_heatmap
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
row_col |
text | pattern_class |
Column giving the matrix rows | |
col_col |
text | concordance_class |
Column giving the matrix columns | |
value_col |
text | jaccard |
Column coloured in each cell | |
count_col |
text | n_shared_terms |
Column with the count printed in each cell | |
row_order |
list | auto | Row order (default: order in the data) | |
col_order |
list | auto | Column order (default: order in the data) | |
cmap |
colormap | Reds |
Colormap of the cells | |
vmin |
number | 0.0 |
value units | Lower end of the colour scale |
vmax |
number | auto | value units | Upper end of the colour scale (default: data maximum) |
blank_when_count_zero |
true / false | True |
Leave cells with a zero count blank | |
blank_color |
colour | white |
color | Colour of blank cells |
show_colorbar |
true / false | True |
Show the colourbar | |
colorbar_label |
text | Jaccard |
Colourbar title | |
colorbar_loc |
one of right, left, top, bottom |
right |
Side of the colourbar | |
colorbar_shrink |
number | 0.8 |
fraction of the axes height | Colourbar length |
cell_text_format |
text | {value:.2f}({count:d}) |
Cell text; fields value and count | |
cell_text_color |
text | black |
Cell text colour, or 'auto' for white on dark cells | |
cell_text_size |
number | computed | pt | Cell text size (default tick_label_size) |
cell_border_color |
colour | white |
color | Grid line colour between cells |
cell_border_width |
number | 1.0 |
pt | Grid line width between cells |
labels_title |
text | Jaccard Heatmap |
Panel title | |
xtick_rotation |
number | 45 |
degrees | Column label rotation |
title_size |
number | 13 |
pt | Panel title font size |
axes_label_size |
number | 11 |
pt | Colourbar title font size |
tick_label_size |
number | 8 |
pt | Row and column label font size |
line_band¶
fig_atlas.renderers:render_line_band
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
x_col |
text | x |
Column with the x values (numeric, or categories with x_order) | |
y_col |
text | y |
Column with the values (replicates), or the centre when aggregate is none | |
group_col |
text | auto | Column splitting the lines (default: one line) | |
group_order |
list | auto | Group order in drawing and legend (default: order in the data) | |
x_order |
list | auto | Category order on x; set it to treat x as categories | |
aggregate |
one of mean, median, none |
mean |
Centre of each (group, x): mean or median of the replicates, or none for summarised rows | |
error |
one of sem, sd, ci95, none |
sem |
Band around the centre: standard error, standard deviation, 95% t-interval, or none | |
lower_col |
text | auto | Lower band edge column (aggregate none) | |
upper_col |
text | auto | Upper band edge column (aggregate none) | |
group_colors |
mapping | {} |
hex color | Colour per group (default: matplotlib cycle) |
group_labels |
mapping | {} |
Legend label per group | |
line_width |
number | 1.2 |
pt | Centre line width |
line_style |
text | - |
Centre line style (matplotlib) | |
marker |
text | o |
Marker at each x on the line ('' for none) | |
marker_size |
number | 3.0 |
pt | Line marker size |
band_alpha |
number | 0.25 |
[0-1] opacity | Band opacity — lower when bands overlap |
band_edge_width |
number | 0.0 |
pt | Outline width of the band (0: none) |
show_points |
true / false | False |
Overlay the replicate values as points | |
point_size |
number | 8.0 |
pt^2 (marker area) | Replicate point size |
point_alpha |
number | 0.6 |
[0-1] opacity | Replicate point opacity |
point_jitter |
number | 0.0 |
x units (categories are 1 apart) | Horizontal scatter of the replicate points |
point_seed |
integer | 0 |
random seed | Seed of the jitter (fixed for reproducible output) |
x_log |
true / false | False |
Log-scaled x axis (numeric x) | |
x_min |
number | auto | data coords | Lower x limit (both x_min and x_max needed) |
x_max |
number | auto | data coords | Upper x limit |
y_min |
number | auto | data coords | Lower y limit (both y_min and y_max needed) |
y_max |
number | auto | data coords | Upper y limit |
zero_line |
true / false | False |
Draw y = 0 | |
zero_line_color |
colour | #9ca3af |
hex color | y = 0 line colour |
zero_line_width |
number | 0.5 |
pt | y = 0 line width |
grid |
true / false | False |
Draw a background grid | |
grid_alpha |
number | 0.3 |
[0-1] opacity | Grid opacity |
spine_width |
number | auto | pt | Axis line width (default: rcParams) |
hide_top_right |
true / false | True |
Hide the top and right axis lines | |
labels_title |
text | auto | Panel title | |
labels_xlabel |
text | computed | x-axis title (default: x_col) | |
labels_ylabel |
text | computed | y-axis title (default: y_col) | |
title_size |
number | style typography.title_size (else 8.0) |
pt | Panel title font size — lower if the title wraps or crowds the panel |
axes_label_size |
number | auto | pt | Axis title size (default: rcParams) |
tick_label_size |
number | auto | pt | Tick label size (default: rcParams) |
show_legend |
true / false | True |
Show the group legend (only with a group_col) | |
legend_loc |
text | best |
Legend location (matplotlib loc) | |
legend_fontsize |
number | computed | pt | Legend font size (default: tick_label_size) |
legend_frameon |
true / false | False |
Draw a frame around the legend |
ma_plot¶
fig_atlas_omics.renderers:render_ma_plot
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
padj_threshold |
number | 0.05 |
adjusted P | padj cut-off for up / down points |
log2fc_threshold |
number | 0.585 |
log2 fold change | |log2FC| cut-off for up / down points (0.585 = 1.5-fold) |
up_color |
colour | #ff0000 |
hex color | Colour of up points |
down_color |
colour | #0000ff |
hex color | Colour of down points |
ns_color |
colour | #808080 |
hex color | Colour of non-significant points |
dot_size |
number | 10 |
pt^2 (marker area) | Point size |
dot_alpha |
number | 0.5 |
[0-1] opacity | Point opacity |
show_cutoff_lines |
true / false | True |
Draw y = 0 and +/- log2fc_threshold lines | |
cutoff_line_color |
colour | black |
color | Reference line colour |
cutoff_line_style |
text | -- |
Style of the threshold lines (matplotlib) | |
cutoff_line_width |
number | 1 |
pt | Reference line width |
cutoff_line_alpha |
number | 0.5 |
[0-1] opacity | Reference line opacity |
x_min |
number | auto | log10 mean (data coords) | Lower x limit |
x_max |
number | auto | log10 mean (data coords) | Upper x limit |
y_min |
number | auto | log2 fold change | Lower y limit |
y_max |
number | auto | log2 fold change | Upper y limit |
labels_title |
text | MA Plot |
Panel title | |
labels_xlabel |
text | log10(Mean Accessibility) |
x-axis title | |
labels_ylabel |
text | Log2 Fold Change |
y-axis title | |
title_size |
number | 13 |
pt | Panel title font size |
axes_label_size |
number | 11 |
pt | Axis title font size |
tick_label_size |
number | 8 |
pt | Tick and legend font size |
show_legend |
true / false | True |
Show the legend | |
legend_position |
text | best |
Legend anchor (matplotlib loc) |
motif_architecture_table¶
fig_atlas_omics.renderers:render_motif_architecture_table
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
table_title |
text | Key Transcriptional Driver Motifs: Sequence Logos, Statistics & Known Binding Partners |
Title above the motif table | |
font_family |
text | DejaVu Sans |
Font of the table text | |
title_size |
number | 11.5 |
pt | Table title size |
header_size |
number | 9.5 |
pt | Column header size |
text_size |
number | 8.5 |
pt | Cell text size |
motif_dotplot¶
fig_atlas_omics.renderers:render_motif_dotplot
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
term_col |
text | motif |
Column with the motif (row) names | |
class_col |
text | pattern_class |
Column with the condition (column) names | |
value_col |
text | log2fc |
Column coloured: log2 fold enrichment | |
p_col |
text | neg_log10_p |
Column sized: -log10(P) | |
class_order |
list | auto | Column order (default: order in the data) | |
term_order |
list | auto | Row order (default: order in the data) | |
condition_rename_map |
mapping | {} |
Display label per condition | |
fc_cmap |
colormap | RdBu_r |
Diverging colormap of the fold enrichment | |
fc_min |
number | -2.0 |
log2 fold enrichment | Lower colour limit |
fc_max |
number | 2.0 |
log2 fold enrichment | Upper colour limit |
na_color |
colour | #cccccc |
hex color | Colour of the placeholder dot in empty cells |
show_colorbar |
true / false | True |
Show the colourbar | |
colorbar_label |
text | log2 fold enrichment |
Colourbar title | |
colorbar_loc |
one of right, left, top, bottom |
computed | Side of the colourbar (default: opposite the motif labels) | |
colorbar_shrink |
number | 0.6 |
fraction of the axes height | Colourbar length |
size_min |
number | 6.0 |
pt^2 (marker area) | Dot area at -log10(P) = 0 |
size_scale |
number | 30.0 |
pt^2 per -log10(P) unit | Added dot area per -log10(P) unit — lower if neighbouring dots overlap |
na_size |
number | computed | pt^2 (marker area) | Placeholder dot size (default 0.4 x size_min) |
dot_alpha |
number | 0.9 |
alpha [0-1] | Dot opacity |
dot_edgecolor |
colour | #555555 |
hex color | Dot outline colour |
dot_edgewidth |
number | 0.5 |
pt | Dot outline width |
show_size_legend |
true / false | True |
Show the dot size legend | |
size_legend_title |
text | -log10(P) |
Size legend title | |
size_legend_loc |
text | best |
Size legend location (matplotlib loc string) | |
size_legend_values |
list | auto | -log10(P) | Values shown in the size legend (default 0, 5, 10) |
show_grid |
true / false | True |
Draw horizontal grid lines | |
grid_color |
colour | #eeeeee |
hex color | Grid line colour |
term_label_side |
one of left, right |
left |
Side of the motif labels | |
label_margin_pad |
number | 1.2 |
multiple of the measured label width | Room left for the motif labels — raise if labels clip the canvas edge |
label_margin_cap |
number | 0.5 |
fraction of the panel width | Largest label margin |
min_plot_frac |
number | 0.3 |
fraction of the panel width | Smallest width kept for the dots |
colorbar_margin |
number | 0.1 |
fraction of the panel width | Left margin for the colourbar when the labels are on the right |
labels_title |
text | Motif Enrichment |
Panel title | |
labels_subtitle |
text | auto | Second line under the title | |
title_pad |
number | 24.0 |
pt | Gap between title and axes |
xtick_rotation |
number | 45 |
degrees | Condition label rotation |
xtick_ha |
one of left, center, right |
right |
Condition label horizontal alignment | |
xtick_rotation_mode |
text | auto | matplotlib rotation_mode for the condition labels ('anchor' or 'default') | |
xtick_fontsize |
number | computed | pt | Condition label size (default tick_label_size) |
term_fontsize |
number | computed | pt | Motif label size (default tick_label_size) |
title_size |
number | 13 |
pt | Panel title font size |
subtitle_size |
number | 9 |
pt | Subtitle font size |
axes_label_size |
number | 11 |
pt | Colourbar title font size |
tick_label_size |
number | 8 |
pt | Tick label font size |
multi_group_heatmap¶
fig_atlas.renderers:render_multi_group_heatmap
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
gene_label_col |
text | gene_label |
Column with the row (gene) labels | |
sample_columns |
list | auto | Sample columns to show (default: every numeric column) | |
sample_groups |
mapping | auto | Group name -> sample columns; orders and groups the columns | |
sample_rename_map |
mapping | {} |
Display label per raw sample name | |
cluster_rows |
true / false | False |
Cluster the rows and draw the row dendrogram | |
linkage |
text | average |
scipy linkage method (average, complete, ward, ...) | |
metric |
text | euclidean |
scipy distance metric for the clustering | |
dendro_width |
number | 0.12 |
fraction of the axes width | Width of the row dendrogram |
cmap |
colormap | RdBu_r |
Colormap of the z-scores | |
z_auto |
true / false | True |
Symmetric colour limits from the data; set false to use z_min/z_max | |
z_min |
number | -2.0 |
z-score | Lower colour limit when z_auto is false |
z_max |
number | 2.0 |
z-score | Upper colour limit when z_auto is false |
show_colorbar |
true / false | True |
Show the colourbar | |
colorbar_pad |
number | computed | fraction of the axes width | Gap between heatmap and colourbar (default 0.15 with gene labels and dendrogram, else 0.02) — increase to widen the gap between heatmap and colorbar |
group_colors |
mapping | auto | hex color | Strip colour per sample group |
show_group_bar |
true / false | True |
Show the group colour strip (columns stay grouped when off) | |
group_bar_height |
number | 0.03 |
fraction of the axes height | Strip height |
group_bar_position |
one of top, bottom |
top |
Strip above or below the heatmap | |
margin_left |
number | auto | [0-1] fraction of the figure | Left edge of the heatmap block (default: matplotlib's figure.subplot.left) |
margin_right |
number | auto | [0-1] fraction of the figure | Right edge of the heatmap block, colour bar outside it (default: matplotlib's) — lower if the colour bar's title is cut off |
margin_bottom |
number | auto | [0-1] fraction of the figure | Bottom edge of the heatmap block (default: matplotlib's) — raise if the sample names below the heatmap are cut off |
margin_top |
number | auto | [0-1] fraction of the figure | Top edge of the heatmap block (default: matplotlib's) |
show_group_legend |
true / false | True |
Show the group legend | |
show_gene_labels |
true / false | True |
Show the row labels | |
gene_fontsize |
number | computed | pt | Row label size (default tick_label_size) |
show_col_labels |
true / false | True |
Show the column labels | |
xtick_rotation |
number | 90 |
degrees | Column label rotation |
labels_title |
text | auto | Panel title | |
title |
text | auto | Older name of labels_title, used when labels_title is not set | |
title_size |
number | 13 |
pt | Panel title font size |
axes_label_size |
number | 11 |
pt | Colourbar title font size |
tick_label_size |
number | 8 |
pt | Tick label font size |
paired_dumbbell¶
fig_atlas.renderers:render_paired_dumbbell
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
c_human |
colour | #2563EB |
hex color | Human marker colour |
c_mouse |
colour | #DC2626 |
hex color | Mouse marker colour |
c_link |
colour | #94A3B8 |
hex color | Line joining the two species of a condition |
marker_size |
number | 90 |
pt^2 (marker area) | Marker size |
marker_edgewidth |
number | 0.8 |
pt | Marker outline width |
link_linewidth |
number | 2.0 |
pt | Width of the joining line |
grid_linewidth |
number | 0.8 |
pt | Grid line width |
linthresh |
number | 10.0 |
count (data coords) | symlog x: counts within +/- linthresh are drawn linearly |
rna_xlim |
list | [-1.5, 1200] |
data coords [min, max] | x range of the RNA (DEG) column |
rna_xticks |
list | [0, 10, 100, 1000] |
data coords | RNA tick positions |
rna_xticklabels |
list | ['0', '$10^1$', '$10^2$', '$10^3$'] |
RNA tick labels | |
atac_xlim |
list | [-1.5, 25000] |
data coords [min, max] | x range of the ATAC (DA) column |
atac_xticks |
list | [0, 10, 100, 1000, 10000] |
data coords | ATAC tick positions |
atac_xticklabels |
list | ['0', '$10^1$', '$10^2$', '$10^3$', '$10^4$'] |
ATAC tick labels | |
xlabel |
text | Significant Features (Count) |
x-axis title | |
shared_xlabel |
true / false | False |
One x title under both columns instead of one per column | |
shared_xlabel_y |
number | -0.14 |
figure fraction below the axes | Position of the shared x title |
y_margin |
number | auto | rows (data coords) | Empty room above and below the condition rows |
annot_fontsize |
number | 8.0 |
pt | Count label size |
annot_offset_pts |
number | 7 |
pt | Distance of the count labels from their marker |
mouse_annot_below |
true / false | False |
Put mouse counts below their marker (human stays above) | |
header_fontsize |
number | 12.5 |
pt | Assay column header size |
header_pad |
number | 8 |
pt | Gap between header and plot |
ylabel_fontsize |
number | 11.0 |
pt | Row title (up/down-regulated) size |
ylabel_pad |
number | 8 |
pt | Gap between row title and tick labels |
ytick_fontsize |
number | 9.8 |
pt | Condition label size |
xtick_fontsize |
number | 9.0 |
pt | x tick label size |
xlabel_fontsize |
number | 9.5 |
pt | x title size |
hide_inner_yticklabels |
true / false | False |
Show condition labels only on the left column | |
show_right_row_label |
true / false | True |
Repeat the row title, rotated, right of the right column | |
facet_layout |
one of 2x2, 4x1 |
2x2 |
Facet arrangement: 2x2 = directions in rows, assays in columns; 4x1 = all four stacked in one column (assay by assay), for a single journal column — 4x1 when the figure spans one column and the 2x2 facets crowd | |
legend_fontsize |
number | 9.5 |
pt | Legend text size |
legend_markersize |
number | 9 |
pt | Legend marker size |
legend_edgecolor |
colour | #cbd5e1 |
hex color | Legend frame colour |
legend_row_ratio |
number | 0.08 |
x a plot row's height | Height of the legend row under the plots |
hspace |
number | 0.35 |
fraction of a row's height | Gap between the up and down rows |
wspace |
number | 0.28 |
fraction of a column's width | Gap between the RNA and ATAC columns |
left_inset |
number | 0.0 |
[0-1] fraction of the slot width | Empty strip on the left of the slot — raise if the row titles clip at the left |
extend_right |
number | 0.0 |
fraction of the plot width | Stretch the plots rightwards by this share (to end where a neighbouring panel ends) |
pathway_evidence_dotplot¶
fig_atlas_omics.renderers:render_pathway_evidence_dotplot
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
evidence_colors |
mapping | {} |
hex color | Colour per evidence type, merged over the defaults (ORA, GSEA, ORA + GSEA) |
evidence_labels |
mapping | {} |
Legend text per evidence type | |
size_per_gene |
number | 0.6 |
pt^2 per member gene | Dot area added per member gene — lower if large terms' dots overlap |
size_offset |
number | 4 |
pt^2 (marker area) | Dot area of a term with no genes |
dot_alpha |
number | 0.9 |
alpha [0-1] | Dot opacity |
dot_edgecolor |
colour | #333333 |
hex color | Dot outline colour |
dot_edgewidth |
number | 0.4 |
pt | Dot outline width |
min_rows |
integer | 0 |
rows | Reserve at least this many rows (keeps panels the same height) |
empty_note |
text | auto | Text in the empty rows when there are fewer terms than min_rows; '{n}' = count | |
empty_note_color |
colour | #6b7280 |
hex color | Empty-row note colour |
empty_note_wrap_width |
integer | 40 |
characters | Wrap the empty-row note at this width |
ylabel_wrap_width |
integer | 42 |
characters | Wrap term names at this width |
term_fontsize |
number | 6 |
pt | Term name size |
xlabel |
text | -log10(adjusted P) |
x-axis title | |
xlim_headroom |
number | 0.12 |
fraction of the largest x | Space added past the largest dot — raise if the right-most dot is clipped |
grid_linewidth |
number | 0.4 |
pt | Grid line width |
legend_loc |
text | upper left |
Legend location (matplotlib loc string) | |
legend_bbox |
list | [1.02, 1.0] |
axes fraction (x, y) | Legend anchor; default sits right of the axes |
legend_fontsize |
number | 5.5 |
pt | Legend font size |
legend_labelspacing |
number | 0.6 |
font-size units | Vertical space between legend entries |
legend_marker_size |
number | 4 |
pt | Marker size of the evidence entries |
size_legend_values |
list | [20, 100] |
genes | Gene counts shown in the size legend |
size_legend_title |
text | genes |
Word after each size legend value | |
labels_title |
text | auto | Panel title | |
title_pad |
number | 5 |
pt | Gap between title and axes |
title_size |
number | 8 |
pt | Panel title font size |
axes_label_size |
number | 7 |
pt | Axis title font size |
tick_label_size |
number | 6 |
pt | Tick label font size |
pathway_test_matrix¶
fig_atlas_omics.renderers:render_pathway_test_matrix
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
term_order |
list | auto | Row order top to bottom (default: order of first appearance) | |
test_order |
list | auto | Column order (default: order of first appearance) | |
test_labels |
mapping | {} |
Column label per test key | |
min_rows |
integer | 0 |
rows | Keep the row spacing of this many rows for short lists (empty slots at the bottom) |
term_fontsize |
number | 6 |
pt | Term label size |
ylabel_wrap_width |
integer | 42 |
characters | Wrap term labels at this width |
xtick_fontsize |
number | 6 |
pt | Column label size |
xtick_rotation |
number | 30 |
degrees | Column label rotation |
column_header |
text | auto | Text over the test columns | |
column_header_pad |
number | 0.02 |
axes fraction | Gap between the matrix and the column header |
column_header_fontsize |
number | 5.5 |
pt | Column header size |
column_header_color |
colour | #334155 |
hex color | Column header colour |
cmap |
colormap | viridis |
Colormap for -log10 adjusted P | |
vmin |
number | computed | -log10 adjusted P | Colour floor (default -log10(0.05)) |
vmax |
number | computed | -log10 adjusted P | Colour ceiling (default: from the data) |
size_per_share |
number | 600.0 |
pt^2 per unit share | Dot area per share of class genes — lower if dots overlap |
size_min |
number | 4.0 |
pt^2 (marker area) | Smallest dot |
hollow_color |
colour | #ffffff |
hex color | Fill of tested but not significant dots |
hollow_label |
text | n.s. |
Legend text for hollow dots | |
dot_edgecolor |
colour | #333333 |
hex color | Dot outline colour |
dot_edgewidth |
number | 0.4 |
pt | Dot outline width |
dot_alpha |
number | 0.9 |
[0-1] opacity | Dot opacity |
grid_linewidth |
number | 0.4 |
pt | Grid line width |
labels_title |
text | auto | Panel title (none = no title) | |
title_size |
number | 8 |
pt | Panel title font size |
title_pad |
number | 5 |
pt | Gap between title and matrix |
cbar_label |
text | -log10(adjusted P) |
Colourbar title | |
cbar_label_size |
number | 6 |
pt | Colourbar title size |
cbar_tick_size |
number | 5.5 |
pt | Colourbar tick size |
cbar_outline_width |
number | 0.5 |
pt | Colourbar outline width |
size_legend_values |
list | [0.05, 0.15] |
share of class genes | Shares shown in the size legend |
size_legend_title |
text | Share of class genes |
Size legend title | |
legend_fontsize |
number | 5.5 |
pt | Legend text size |
legend_loc |
text | lower left |
Legend anchor point (matplotlib loc) | |
legend_bbox |
list | [1.04, 0.0] |
axes fraction (x, y) | Where legend_loc is placed |
legend_labelspacing |
number | 0.8 |
x font size | Vertical spacing of legend entries |
legend_ncol |
integer | 1 |
columns | Legend columns |
legend_columnspacing |
number | 1.0 |
x font size | Horizontal spacing of legend columns |
empty_note |
text | auto | Note shown in the empty slots when min_rows exceeds the term count | |
empty_note_x |
number | -0.6 |
data coords | x position of the empty-slot note |
empty_note_wrap_width |
integer | 30 |
characters | Wrap the note at this width |
empty_note_color |
colour | #6b7280 |
hex color | Note colour |
pca¶
fig_atlas.renderers:render_pca
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
n_genes |
integer | 500 |
genes | Most variable genes used for the PCA |
transform |
one of log2, log1p, none |
log2 |
Transform of the counts before the PCA | |
scaling |
one of standard, none |
standard |
'standard': centre and scale each gene; otherwise centre only | |
x_pc |
integer | 1 |
component number | Component on the x axis |
y_pc |
integer | 2 |
component number | Component on the y axis |
sample_columns |
list | auto | Columns to use as samples (default: every numeric column that is not a statistic such as padj or log2FC) | |
sample_groups |
mapping | auto | Group name -> its sample columns; points are coloured by group, with a legend | |
group_colors |
mapping | {} |
hex color | Colour per group (default: matplotlib tab10 by group) |
legend_loc |
text | best |
Group legend location (matplotlib loc) | |
sample_rename_map |
mapping | {} |
Display label per raw sample name | |
point_size |
number | 80 |
pt^2 (marker area) | Sample point size |
show_labels |
true / false | True |
Label each sample point | |
title |
text | PCA — Sample Expression |
Panel title | |
title_size |
number | 10 |
pt | Panel title font size |
axes_label_size |
number | 8 |
pt | Axis title font size |
tick_label_size |
number | 7 |
pt | Tick and point label font size |
peak_feature_composition¶
fig_atlas_omics.renderers:render_peak_feature_composition
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
geneset_col |
text | GeneSet |
Column with the gene set (one facet or bar group each) | |
geneset_order |
list | auto | Gene set order (default: order in the data) | |
geneset_rename_map |
mapping | {} |
Display title per gene set | |
feature_col |
text | Feature |
Column with the peak feature category | |
feature_order |
list | auto | Feature order (default: order in the data); first is bottom in the composition bars | |
odds_ratio_col |
text | OddsRatio |
Enrichment: odds ratio column | |
fdr_col |
text | p_adjust |
Enrichment: adjusted P column | |
da_pct_col |
text | DA_Pct |
Composition: percentage of DA peaks per feature | |
background_pct_col |
text | Background_Pct |
Composition: percentage of background peaks per feature | |
fdr_max |
number | 0.05 |
FDR | Bars at or below this FDR use sig_color |
sig_color |
colour | #e57373 |
hex color | Colour of significant bars |
ns_color |
colour | #9e9e9e |
hex color | Colour of non-significant bars |
bar_height |
number | 0.68 |
fraction of the row | Bar thickness |
bar_edgecolor |
colour | black |
color | Enrichment bar outline colour |
bar_edgewidth |
number | 0.5 |
pt | Enrichment bar outline width |
shared_xlim |
true / false | True |
One zero-centred x range for every facet, so bar lengths compare across facets | |
xlim_pad |
number | 1.15 |
multiple of the largest |log2 OR| | Margin of the shared x range |
xlim |
list | auto | data coords [min, max] | Explicit x range; overrides shared_xlim (use it to align separate calls) |
wspace |
number | 0.08 |
fraction of the mean facet width | Gap between facets |
xlabel_text |
text | log2(Odds Ratio) vs background |
x-axis title of the enrichment facets | |
feature_colors |
mapping | auto | hex color | Colour per feature (default: built-in palette) |
bar_width |
number | 0.7 |
x units (one bar = 1) | Composition bar width |
group_gap |
number | 1.0 |
x units | Extra gap between gene set groups |
edge_color |
colour | white |
color | Outline between stacked segments |
edge_width |
number | 0.5 |
pt | Segment outline width |
ylabel_text |
text | % of peaks |
y-axis title of the composition chart | |
show_legend |
true / false | True |
Show the legend | |
legend_loc |
text | computed | Legend location (default 'best' for enrichment, 'center left' for composition) | |
labels_title |
text | computed | Figure title (each chart has its own default) | |
title_size |
number | 13 |
pt | Title font size |
axes_label_size |
number | 11 |
pt | Axis title font size |
tick_label_size |
number | 8 |
pt | Tick label font size |
peak_feature_enrichment¶
fig_atlas_omics.renderers:render_peak_feature_enrichment
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
geneset_col |
text | GeneSet |
Column with the gene set (one facet or bar group each) | |
geneset_order |
list | auto | Gene set order (default: order in the data) | |
geneset_rename_map |
mapping | {} |
Display title per gene set | |
feature_col |
text | Feature |
Column with the peak feature category | |
feature_order |
list | auto | Feature order (default: order in the data); first is bottom in the composition bars | |
odds_ratio_col |
text | OddsRatio |
Enrichment: odds ratio column | |
fdr_col |
text | p_adjust |
Enrichment: adjusted P column | |
da_pct_col |
text | DA_Pct |
Composition: percentage of DA peaks per feature | |
background_pct_col |
text | Background_Pct |
Composition: percentage of background peaks per feature | |
fdr_max |
number | 0.05 |
FDR | Bars at or below this FDR use sig_color |
sig_color |
colour | #e57373 |
hex color | Colour of significant bars |
ns_color |
colour | #9e9e9e |
hex color | Colour of non-significant bars |
bar_height |
number | 0.68 |
fraction of the row | Bar thickness |
bar_edgecolor |
colour | black |
color | Enrichment bar outline colour |
bar_edgewidth |
number | 0.5 |
pt | Enrichment bar outline width |
shared_xlim |
true / false | True |
One zero-centred x range for every facet, so bar lengths compare across facets | |
xlim_pad |
number | 1.15 |
multiple of the largest |log2 OR| | Margin of the shared x range |
xlim |
list | auto | data coords [min, max] | Explicit x range; overrides shared_xlim (use it to align separate calls) |
wspace |
number | 0.08 |
fraction of the mean facet width | Gap between facets |
xlabel_text |
text | log2(Odds Ratio) vs background |
x-axis title of the enrichment facets | |
feature_colors |
mapping | auto | hex color | Colour per feature (default: built-in palette) |
bar_width |
number | 0.7 |
x units (one bar = 1) | Composition bar width |
group_gap |
number | 1.0 |
x units | Extra gap between gene set groups |
edge_color |
colour | white |
color | Outline between stacked segments |
edge_width |
number | 0.5 |
pt | Segment outline width |
ylabel_text |
text | % of peaks |
y-axis title of the composition chart | |
show_legend |
true / false | True |
Show the legend | |
legend_loc |
text | computed | Legend location (default 'best' for enrichment, 'center left' for composition) | |
labels_title |
text | computed | Figure title (each chart has its own default) | |
title_size |
number | 13 |
pt | Title font size |
axes_label_size |
number | 11 |
pt | Axis title font size |
tick_label_size |
number | 8 |
pt | Tick label font size |
sample_metric_bars¶
fig_atlas.renderers:render_sample_metric_bars
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
group_order |
list | auto | Group order, left to right (default: order in the data) | |
group_colors |
mapping | {} |
Bar colour per group (unlisted groups are grey) | |
group_labels |
mapping | {} |
Display label per group | |
bar_width |
number | 0.8 |
x units (one sample = 1) | Bar width |
group_gap |
number | 0.6 |
x units | Extra gap between groups — raise to separate the groups more |
edgecolor |
colour | none |
color | Bar outline colour |
ylim |
list | auto | data coords [min, max] | y-axis range (default: data) |
spine_width |
number | 0.6 |
pt | Axis spine width |
ref_lines |
list | [] |
Horizontal reference lines: list of {y, label, color, style, width} | |
ref_label_x |
number | 1.0 |
axes fraction | x position of the reference line labels |
ref_label_fontsize |
number | 5.0 |
pt | Reference line label size |
show_values |
true / false | auto | Print each bar's value above it | |
value_fmt |
text | {:.2f} |
Format string of the printed values | |
value_fontsize |
number | 4.8 |
pt | Printed value size |
title |
text | auto | Panel title | |
ylabel |
text | auto | y-axis title | |
group_label_rotation |
number | 0 |
degrees | Group label rotation |
title_pad |
number | 3.0 |
pt | Gap between title and axes |
title_size |
number | 6.5 |
pt | Panel title font size |
axes_label_size |
number | 6.0 |
pt | Axis title font size |
tick_label_size |
number | 5.5 |
pt | y tick label font size |
group_label_fontsize |
number | 5.5 |
pt | Group label font size |
segment_array¶
fig_atlas_omics.renderers:render_segment_array
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
length_col |
text | length_bp |
Column with each segment's length (bp) | |
kind_col |
text | kind |
Column with each segment's kind (sets its colour) | |
label_col |
text | label |
Column with the text above a segment (none: no labels) | |
sublabel_col |
text | auto | Column with the text below a segment, e.g. source coordinates | |
strand_col |
text | strand |
Column with + / - (an arrow pointing right / left); other values: a box | |
group_col |
text | auto | Column grouping consecutive segments under one bracket and label | |
inner_label_col |
text | auto | Column with the name written inside a segment (under it if it does not fit) | |
span_col |
text | auto | Column grouping consecutive segments under one direction arrow | |
span_label_col |
text | auto | Column with the text over a span arrow, e.g. source coordinates | |
span_strand_col |
text | auto | Column with + / - for the span arrow direction (default: strand_col) | |
scale |
one of linear, sqrt, log |
linear |
How length maps to width — sqrt or log when one segment is far longer than the rest (e.g. a BAC next to a linker) | |
min_frac |
number | 0.012 |
fraction of the row width | Smallest width a segment is drawn at — raise if short pieces disappear |
flank_kinds |
list | ['host'] |
Kinds drawn as host flanks at a fixed width (length ignored) | |
flank_frac |
number | 0.12 |
fraction of the row width | Width of each host flank |
gap_kinds |
list | ['copy_gap'] |
Kinds drawn as a thin line instead of a box (unmapped linkers) | |
x_pad_frac |
number | 0.01 |
fraction of the row width | Blank margin left and right of the row |
kind_colors |
mapping | {} |
hex color | Fill colour per kind |
default_color |
colour | #9ca3af |
hex color | Fill of kinds without a colour |
edge_color |
colour | #1f2937 |
hex color | Segment outline colour |
edge_width |
number | 0.4 |
pt | Segment outline width (0: none) |
bar_height |
number | 0.28 |
axes data units (row is 0-1 high) | Height of a segment box — raise for a bolder row |
bar_y |
number | 0.45 |
axes data units (0-1) | Height of the row centre |
arrow_head_frac |
number | 0.3 |
fraction of the segment width | Length of an arrow head on stranded segments |
arrow_head_max_frac |
number | 0.025 |
fraction of the row width | Longest an arrow head may be — lower for blunter arrows on long segments |
gap_color |
colour | #6b7280 |
hex color | Colour of gap lines |
gap_width |
number | 0.8 |
pt | Width of gap lines |
gap_style |
text | : |
Line style of gap lines (matplotlib) | |
separator_width |
number | 0.6 |
pt | Width of the tick drawn between adjacent segments (0: none) |
separator_color |
colour | #111827 |
hex color | Colour of the ticks between segments |
inner_label_size |
number | 6.0 |
pt | Size of the names inside segments |
inner_label_weight |
text | normal |
Font weight of the names inside segments | |
inner_text_dark |
colour | #111827 |
hex color | Name colour on light fills |
inner_text_light |
colour | #ffffff |
hex color | Name colour on dark fills |
inner_luminance_cut |
number | 0.5 |
relative luminance [0-1] | Fills darker than this get the light name colour |
inner_label_margin |
number | 0.9 |
fraction of the segment width | Share of a segment's width a name may use before it moves under the segment |
inner_fallback |
one of above, below |
below |
Where a name too wide for its segment goes: above the bar, or under it (after any label there) | |
label_char_em |
number | 0.6 |
em per character | Estimated text width per character (fit test only) — raise if names spill over their segment |
span_pad |
number | 0.07 |
axes data units | Gap between the bar and the span arrows |
span_inset_frac |
number | 0.003 |
fraction of the row width | Gap left at each end of a span arrow so neighbouring arrows do not touch |
span_color |
colour | #111827 |
hex color | Span arrow colour |
span_line_width |
number | 0.6 |
pt | Span arrow line width |
span_head |
number | 5.0 |
pt | Span arrow head size |
span_label_size |
number | 5.0 |
pt | Size of the text over span arrows |
span_label_pad |
number | 0.02 |
axes data units | Gap between a span arrow and its text |
label_size |
number | 6.0 |
pt | Size of the labels above segments |
label_pad |
number | 0.04 |
axes data units | Gap between a bar and its label |
label_min_frac |
number | 0.0 |
fraction of the row width | Segments narrower than this get no label above — raise to thin out crowded labels |
sublabel_size |
number | 5.0 |
pt | Size of the labels below segments |
sublabel_rotation |
number | 0.0 |
degrees | Rotation of the labels below segments |
sublabel_stagger |
number | 0.0 |
axes data units | Drop every second label below the bar by this much (0: one line) — raise when labels of neighbouring narrow segments touch |
sublabel_min_frac |
number | 0.0 |
fraction of the row width | Segments narrower than this get no label below |
flank_label_size |
number | 6.0 |
pt | Size of the host flank labels |
flank_label_style |
text | italic |
Font style of the host flank labels | |
flank_label_pad |
number | 0.04 |
axes data units | Gap between a host flank and its label |
group_bracket |
true / false | True |
Draw a bracket over each group | |
group_bracket_pad |
number | 0.06 |
axes data units | Gap between the bars and a group bracket |
group_bracket_height |
number | 0.05 |
axes data units | Height of the bracket ends |
group_bracket_width |
number | 0.5 |
pt | Bracket line width |
group_bracket_color |
colour | #374151 |
hex color | Bracket colour |
group_label_size |
number | 6.0 |
pt | Size of the group labels |
group_label_weight |
text | bold |
Font weight of the group labels | |
text_color |
colour | #111827 |
hex color | Colour of all labels |
labels_title |
text | auto | Row title, at the top left (none: no title) | |
title_size |
number | style typography.title_size (else 8.0) |
pt | Panel title font size — lower if the title wraps or crowds the panel |
title_loc |
text | left |
Title alignment (matplotlib loc) | |
title_pad |
number | 2.0 |
pt | Gap between the title and the row |
signed_heatmap¶
fig_atlas.renderers:render_signed_heatmap
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
cmap |
colormap | RdBu_r |
Diverging colormap for the signed values — any registered diverging map | |
vmax |
number | 10.0 |
value units (e.g. signed -log10 FDR) | Colour scale runs -vmax..+vmax; beyond is drawn saturated — lower to stretch contrast for weak values |
nan_color |
colour | #e5e7eb |
hex color | Colour of missing (not tested) cells |
origin |
one of upper, lower |
upper |
'upper': first row on top; 'lower': first row at the bottom (to align with a 0..n-1 scatter) | |
ylim |
list | auto | data coords [lo, hi] | Row range, to line up with another axes' rows |
cell_edgecolor |
colour | white |
hex color | Cell border colour |
cell_edgewidth |
number | 0.5 |
pt | Cell border width — 0 for no borders |
frame_width |
number | 0.6 |
pt | Outer frame (spine) width |
show_values |
true / false | False |
Print each cell's value | |
value_fmt |
text | {:+.1f} |
Python format for the printed values | |
value_fontsize |
number | 5.0 |
pt | Cell value font size — lower if values overflow cells |
value_text_color_mode |
one of threshold, contrast |
threshold |
'threshold': white text above value_dark_threshold; 'contrast': white or dark by contrast with the cell colour | |
value_dark_threshold |
number | 0.6 |
fraction of vmax | |value|/vmax above which text turns light (threshold mode) — lower if text on mid-dark cells is hard to read |
value_light_color |
colour | white |
hex color | Text colour on dark cells |
value_dark_color |
colour | #111827 |
hex color | Text colour on light cells |
muted_value_color |
colour | #9ca3af |
hex color | Text colour of muted values (e.g. not significant) |
muted_value_style |
one of normal, italic, oblique |
italic |
Font style of muted values | |
show_row_labels |
true / false | True |
Show row (feature) labels | |
row_label_side |
one of left, right |
left |
Side the row labels sit on | |
row_label_style |
one of normal, italic, oblique |
normal |
Row label font style (italic for gene names) | |
row_label_fontsize |
number | 6.0 |
pt | Row label font size — lower if labels overlap |
row_separators |
list | [] |
row indices | Draw a horizontal line above each of these rows |
row_separator_color |
colour | #1f2937 |
hex color | Row separator colour |
row_separator_width |
number | 0.8 |
pt | Row separator width |
col_labels |
list | auto | Column labels (default: the column names) | |
col_label_fontsize |
number | 5.5 |
pt | Column label font size |
col_label_rotation |
number | 0 |
degrees | Column label rotation — 45 if labels collide |
col_label_side |
one of bottom, top |
bottom |
Side the column labels sit on | |
col_groups |
list | auto | Column group headers: [[label, n_columns], ...] left to right | |
group_label_fontsize |
number | 6.0 |
pt | Column group header font size |
group_label_weight |
text | bold |
Column group header font weight | |
group_label_pad |
number | 0.4 |
rows (data units) | Gap between the matrix and the group headers — raise if headers touch the column labels |
group_separator_color |
colour | #1f2937 |
hex color | Vertical line between column groups |
group_separator_width |
number | 0.8 |
pt | Column group separator width |
single_tf_expression_scatter_bar¶
fig_atlas_omics.renderers:render_single_tf_expression_scatter_bar
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
n_cols |
integer | computed | genes per row | Columns of the gene grid (default: up to 7) |
hspace |
number | 0.4 |
fraction of a panel's height | Gap between grid rows |
wspace |
number | 0.28 |
fraction of a panel's width | Gap between grid columns |
gene_family_map |
mapping | {} |
Family tag shown under each gene's name (gene -> text) | |
family_wrap_width |
integer | auto | characters | Wrap the family tag at this width |
condition_colors |
list | computed | hex colors in condition order | Colour per condition (default: grey, red, orange, purple, blue) |
short_condition_labels |
list | ['Cont', 'D1', 'D3', '24h', '48h'] |
x labels of the conditions | |
bar_width |
number | 0.65 |
data units (conditions are 1 apart) | Bar width |
bar_alpha |
number | 0.7 |
[0-1] opacity | Bar opacity |
bar_edgewidth |
number | 0.8 |
pt | Bar outline width |
errorbar_linewidth |
number | 0.8 |
pt | Error bar and cap line width |
capsize |
number | 2.5 |
pt | Error bar cap length |
show_points |
true / false | True |
Overlay each replicate as a point | |
point_size |
number | 24.0 |
pt^2 (marker area) | Replicate point size |
point_edgewidth |
number | 0.6 |
pt | Replicate point outline width |
point_jitter |
number | 0.12 |
data units | Horizontal scatter of the points |
point_seed |
integer | 42 |
random seed | Seed for the jitter, so the layout is reproducible |
show_anova |
true / false | True |
Print the one-way ANOVA P above each gene | |
anova_font_size |
number | 7.5 |
pt | ANOVA text size |
show_asterisks |
true / false | True |
Mark conditions that differ from control with stars | |
star_font_size |
number | 9.5 |
pt | Star size |
stat_test |
one of welch, student, mannwhitney |
welch |
Test of each condition against control (Welch t-test, Student t-test, Mann-Whitney U) | |
stat_correction |
one of none, bonferroni, holm, bh |
none |
Multiple-testing correction applied before the stars (bh = Benjamini-Hochberg FDR) | |
stat_correction_scope |
one of gene, figure |
gene |
Correction family: each gene's comparisons, or every comparison in this grid | |
star_thresholds |
list | [[0.001, '***'], [0.01, '**'], [0.05, '*']] |
P (adjusted) | [threshold, symbol] pairs, ascending; a star needs P below the threshold |
record_statistics |
true / false | True |
Save the test table with the figure (published as figure_NN_statistics/) | |
stats_table_name |
text | tf_expression_tests |
File name (no extension) of the saved test table | |
y_headroom |
number | 1.35 |
x the tallest bar | y range above the bars — raise if stars or the ANOVA text clip at the top |
gene_title_size |
number | 10.5 |
pt | Gene name (panel title) size |
title_pad |
number | 4 |
pt | Gap between gene name and plot |
show_ylabel |
true / false | True |
Show the y-axis title | |
ylabel |
text | Norm. Counts |
y-axis title | |
ylabel_size |
number | 9.0 |
pt | y-axis title size |
tick_label_size |
number | 8.0 |
pt | Tick label size |
xtick_rotation |
number | 0 |
degrees | Condition label rotation |
spine_width |
number | 0.8 |
pt | Axis line width |
species_response_scatter¶
fig_atlas_omics.renderers:render_species_response_scatter
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
category_order |
list | auto | Drawing order of the categories (later on top) | |
colors |
mapping | {} |
hex color per category | Point colour per category |
sizes |
mapping | {} |
pt^2 per category | Point size per category |
alphas |
mapping | {} |
[0-1] per category | Point opacity per category |
default_size |
number | 1.0 |
pt^2 (marker area) | Size of categories without one |
default_alpha |
number | 0.5 |
[0-1] opacity | Opacity of categories without one |
edgecolor |
colour | none |
color | Point outline |
rasterized |
true / false | True |
Rasterize the points (smaller PDF for tens of thousands of points) | |
lim |
number | 6.0 |
log2 fold change (data coords) | Both axes run -lim..+lim — raise if many points pile on the edge |
ticks |
list | auto | data coords | Tick positions on both axes |
zero_line_color |
colour | #9ca3af |
hex color | Colour of the x = 0 and y = 0 lines |
zero_line_width |
number | 0.4 |
pt | Width of the zero lines |
diagonal |
true / false | True |
Draw the y = x line | |
diagonal_color |
colour | #6b7280 |
hex color | Colour of the y = x line |
diagonal_width |
number | 0.4 |
pt | Width of the y = x line |
diagonal_style |
text | -- |
Line style of the y = x line (matplotlib) | |
spine_width |
number | 0.6 |
pt | Axis line and tick width |
xlabel |
text | auto | x-axis title | |
ylabel |
text | auto | y-axis title | |
axes_label_size |
number | 6.5 |
pt | Axis title font size |
tick_label_size |
number | 5.5 |
pt | Tick label font size |
title |
text | auto | Panel title | |
title_size |
number | 7.0 |
pt | Panel title font size |
title_weight |
text | bold |
Panel title font weight | |
title_pad |
number | 2.0 |
pt | Gap between title and plot |
annotations |
list | [] |
Lines of text at the top left (e.g. rho, n) | |
annotation_fontsize |
number | 5.5 |
pt | Annotation text size |
annotation_xy |
list | [0.03, 0.97] |
axes fraction (x, y) | Position of the first annotation line |
annotation_line_step |
number | 0.075 |
axes fraction | Spacing between annotation lines |
annotation_color |
colour | #111827 |
hex color | Annotation text colour |
stacked_bar¶
fig_atlas.renderers:render_stacked_bar
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
y_log |
true / false | False |
Log-scaled y axis | |
y_min |
number | auto | data coords | Lower y limit (both y_min and y_max needed) |
y_max |
number | auto | data coords | Upper y limit |
grid |
true / false | False |
Draw horizontal grid lines | |
grid_alpha |
number | 0.3 |
[0-1] opacity | Grid opacity |
spine_width |
number | auto | pt | Axis line width (default: rcParams) |
hide_top_right |
true / false | True |
Hide the top and right axis lines | |
labels_title |
text | auto | Panel title (none: no title) | |
labels_xlabel |
text | computed | x-axis title (default: the x column's name) | |
labels_ylabel |
text | computed | y-axis title (default: the y column's name) | |
title_size |
number | 8.0 |
pt | Panel title size |
axes_label_size |
number | auto | pt | Axis title size (default: rcParams) |
tick_label_size |
number | auto | pt | Tick label size (default: rcParams) |
show_legend |
true / false | True |
Show the group legend (only with a group_col) | |
legend_loc |
text | best |
Legend location (matplotlib loc) | |
legend_fontsize |
number | auto | pt | Legend font size (none: tick_label_size) |
legend_frameon |
true / false | False |
Draw a frame around the legend | |
x_col |
text | category |
Column with the categories (one bar each) | |
stack_col |
text | part |
Column with the parts stacked in each bar | |
value_col |
text | count |
Column with the counts | |
x_order |
list | auto | Bar order (default: order in the data) | |
stack_order |
list | auto | Part order from the bottom up (default: order in the data) | |
x_labels |
mapping | {} |
Shown name per category (default: the category) | |
percent |
true / false | True |
Each bar as shares of 100 % (False: counts) | |
stack_colors |
mapping | {} |
hex color | Colour per part (default: matplotlib colour cycle) |
stack_labels |
mapping | {} |
Legend label per part (default: the part) | |
bar_width |
number | 0.7 |
x units (bars are 1 apart) | Bar width |
edge_color |
colour | #ffffff |
hex color | Line between the parts |
edge_width |
number | 0.5 |
pt | Width of that line |
x_tick_rotation |
number | 0.0 |
degrees | Rotation of the category names — raise (e.g. 45) when long names collide |
legend_outside |
true / false | True |
Put the legend right of the bars (so it never covers them) | |
legend_anchor |
list | [1.02, 0.5] |
axes fraction [x, y] | Where the legend's left middle sits when outside — raise x for more gap from the bars |
stacked_share_hbar¶
fig_atlas.renderers:render_stacked_share_hbar
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
group_order |
list | auto | Bar order top to bottom (default: the rows of counts) | |
category_order |
list | auto | Segment order left to right (default: the columns of counts) | |
group_labels |
mapping | {} |
Display label per group (bar) | |
colors |
mapping | {} |
hex color per category | Segment colour per category |
bar_height |
number | 0.7 |
data units (rows are 1 apart) | Bar thickness |
edgecolor |
colour | white |
color | Line between segments |
edgewidth |
number | 0.4 |
pt | Width of the line between segments |
spine_width |
number | 0.6 |
pt | Axis line width |
show_pct |
true / false | True |
Print each segment's share inside it | |
pct_min |
number | 8.0 |
% share | Smallest share that gets a label — raise if labels crowd narrow segments |
pct_fmt |
text | {:.0f}% |
Python format of the share label | |
pct_fontsize |
number | 5.0 |
pt | Share label size |
dark_categories |
list | [] |
Categories (dark fills) whose labels use pct_color_dark | |
pct_color_dark |
colour | white |
color | Label colour on dark segments |
pct_color_light |
colour | #111827 |
hex color | Label colour on light segments |
show_total |
true / false | True |
Print each bar's total at its right end | |
total_fmt |
text | n = {:,} |
Python format of the total | |
total_fontsize |
number | 5.5 |
pt | Total label size |
total_pad |
number | 0.01 |
fraction of the 100% width | Gap between bar end and total |
xlabel |
text | Share (%) |
x-axis title | |
axes_label_size |
number | 6.5 |
pt | Axis title font size |
tick_label_size |
number | 5.5 |
pt | Tick and group label font size |
legend |
true / false | True |
Show the category legend | |
legend_labels |
mapping | {} |
Legend text per category | |
legend_ncol |
integer | 2 |
columns | Legend columns |
legend_fontsize |
number | 5.5 |
pt | Legend text size |
legend_loc |
text | upper center |
Legend anchor point (matplotlib loc) | |
legend_anchor |
list | [0.5, -0.3] |
axes fraction (x, y) | Where legend_loc is placed — lower y if the legend overlaps the x-axis title |
survival¶
fig_atlas.renderers:render_survival
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
group_col |
text | auto | Column splitting the data into coloured groups (default: one group) | |
group_order |
list | auto | Group order in drawing and legend (default: order in the data) | |
group_colors |
mapping | {} |
hex color | Colour per group (default: matplotlib colour cycle) |
group_labels |
mapping | {} |
Legend label per group (default: the group value) | |
color |
colour | #4b5563 |
hex color | Colour when there is no group_col |
x_log |
true / false | False |
Log-scaled x axis | |
x_min |
number | auto | data coords | Lower x limit (both x_min and x_max needed) |
x_max |
number | auto | data coords | Upper x limit |
y_log |
true / false | False |
Log-scaled y axis | |
y_min |
number | auto | data coords | Lower y limit (both y_min and y_max needed) |
y_max |
number | auto | data coords | Upper y limit |
grid |
true / false | False |
Draw horizontal grid lines | |
grid_alpha |
number | 0.3 |
[0-1] opacity | Grid opacity |
spine_width |
number | auto | pt | Axis line width (default: rcParams) |
hide_top_right |
true / false | True |
Hide the top and right axis lines | |
labels_title |
text | auto | Panel title (none: no title) | |
labels_xlabel |
text | computed | x-axis title (default: the x column's name) | |
labels_ylabel |
text | computed | y-axis title (default: the y column's name) | |
title_size |
number | 8.0 |
pt | Panel title size |
axes_label_size |
number | auto | pt | Axis title size (default: rcParams) |
tick_label_size |
number | auto | pt | Tick label size (default: rcParams) |
show_legend |
true / false | True |
Show the group legend (only with a group_col) | |
legend_loc |
text | best |
Legend location (matplotlib loc) | |
legend_fontsize |
number | auto | pt | Legend font size (none: tick_label_size) |
legend_frameon |
true / false | False |
Draw a frame around the legend | |
time_col |
text | time |
Column with the time to the event or to the last follow-up | |
event_col |
text | event |
Column: 1 (or True) if the event happened, 0 (or False) if censored | |
percent |
true / false | True |
Show survival in % (0-100) instead of a fraction (0-1) | |
line_width |
number | 1.2 |
pt | Curve width |
show_censored |
true / false | True |
Mark censored subjects with a tick on the curve | |
censor_marker |
text | \| |
Censor mark (matplotlib marker) | |
censor_size |
number | 5.0 |
pt | Censor mark size |
tf_expression_scatter_grid¶
fig_atlas_omics.renderers:render_tf_expression_scatter_grid
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
n_cols |
integer | computed | genes per row | Columns of the gene grid (default: up to 7) |
hspace |
number | 0.4 |
fraction of a panel's height | Gap between grid rows |
wspace |
number | 0.28 |
fraction of a panel's width | Gap between grid columns |
gene_family_map |
mapping | {} |
Family tag shown under each gene's name (gene -> text) | |
family_wrap_width |
integer | auto | characters | Wrap the family tag at this width |
condition_colors |
list | computed | hex colors in condition order | Colour per condition (default: grey, red, orange, purple, blue) |
short_condition_labels |
list | ['Cont', 'D1', 'D3', '24h', '48h'] |
x labels of the conditions | |
bar_width |
number | 0.65 |
data units (conditions are 1 apart) | Bar width |
bar_alpha |
number | 0.7 |
[0-1] opacity | Bar opacity |
bar_edgewidth |
number | 0.8 |
pt | Bar outline width |
errorbar_linewidth |
number | 0.8 |
pt | Error bar and cap line width |
capsize |
number | 2.5 |
pt | Error bar cap length |
show_points |
true / false | True |
Overlay each replicate as a point | |
point_size |
number | 24.0 |
pt^2 (marker area) | Replicate point size |
point_edgewidth |
number | 0.6 |
pt | Replicate point outline width |
point_jitter |
number | 0.12 |
data units | Horizontal scatter of the points |
point_seed |
integer | 42 |
random seed | Seed for the jitter, so the layout is reproducible |
show_anova |
true / false | True |
Print the one-way ANOVA P above each gene | |
anova_font_size |
number | 7.5 |
pt | ANOVA text size |
show_asterisks |
true / false | True |
Mark conditions that differ from control with stars | |
star_font_size |
number | 9.5 |
pt | Star size |
stat_test |
one of welch, student, mannwhitney |
welch |
Test of each condition against control (Welch t-test, Student t-test, Mann-Whitney U) | |
stat_correction |
one of none, bonferroni, holm, bh |
none |
Multiple-testing correction applied before the stars (bh = Benjamini-Hochberg FDR) | |
stat_correction_scope |
one of gene, figure |
gene |
Correction family: each gene's comparisons, or every comparison in this grid | |
star_thresholds |
list | [[0.001, '***'], [0.01, '**'], [0.05, '*']] |
P (adjusted) | [threshold, symbol] pairs, ascending; a star needs P below the threshold |
record_statistics |
true / false | True |
Save the test table with the figure (published as figure_NN_statistics/) | |
stats_table_name |
text | tf_expression_tests |
File name (no extension) of the saved test table | |
y_headroom |
number | 1.35 |
x the tallest bar | y range above the bars — raise if stars or the ANOVA text clip at the top |
gene_title_size |
number | 10.5 |
pt | Gene name (panel title) size |
title_pad |
number | 4 |
pt | Gap between gene name and plot |
show_ylabel |
true / false | True |
Show the y-axis title | |
ylabel |
text | Norm. Counts |
y-axis title | |
ylabel_size |
number | 9.0 |
pt | y-axis title size |
tick_label_size |
number | 8.0 |
pt | Tick label size |
xtick_rotation |
number | 0 |
degrees | Condition label rotation |
spine_width |
number | 0.8 |
pt | Axis line width |
threshold_scatter¶
fig_atlas.renderers:render_threshold_scatter
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
x_col |
text | auto | Column plotted on x | |
y_col |
text | auto | Column plotted on y | |
effect_col |
text | auto | Signed effect column; its sign gives up / down | |
sig_col |
text | auto | Significance column (smaller = stronger, e.g. an adjusted P) | |
x_transform |
one of none, log10, neg_log10 |
none |
Transform of x before plotting | |
y_transform |
one of none, log10, neg_log10 |
none |
Transform of y before plotting | |
empty_is_missing |
true / false | False |
Show the missing-data message for an empty table too | |
missing_text |
text | Required columns not found |
Message drawn when the columns are missing | |
missing_text_size |
number | auto | pt | Size of the missing-data message (default: title_size) |
effect_threshold |
number | 1.0 |
effect units | |effect| cut-off for up / down points — raise to call only stronger effects |
sig_threshold |
number | 0.05 |
significance units | Significance cut-off for up / down points |
up_color |
colour | #ff0000 |
hex color | Colour of up points |
down_color |
colour | #0000ff |
hex color | Colour of down points |
ns_color |
colour | #808080 |
hex color | Colour of non-significant points |
dot_size |
number | 20 |
pt^2 (marker area) | Point size — lower for dense plots |
ns_alpha |
number | 0.6 |
[0-1] opacity | Opacity of non-significant points |
sig_alpha |
number | 0.6 |
[0-1] opacity | Opacity of up / down points |
ns_zorder |
number | auto | matplotlib zorder | Drawing order of the ns points (default: matplotlib's) |
sig_zorder |
number | auto | matplotlib zorder | Drawing order of the up / down points |
show_cutoff_lines |
true / false | True |
Draw the cut-off lines | |
cutoff_lines |
list | auto | Lines to draw: list of {axis: h|v, at: effect|-effect|sig| |
|
cutoff_line_color |
colour | black |
color | Cut-off line colour |
cutoff_line_style |
text | -- |
Cut-off line style (matplotlib) | |
cutoff_line_width |
number | 1 |
pt | Cut-off line width |
cutoff_line_alpha |
number | 0.5 |
[0-1] opacity | Cut-off line opacity |
label_mode |
one of none, top_n, custom |
none |
Label points: none, the top_n strongest (|effect| x -log10 significance), or label_custom | |
label_cols |
list | ['nearest_gene', 'gene_name', 'symbol', 'gene_id'] |
Candidate label columns; the first present is used | |
label_top_n |
integer | 10 |
points | Points labelled in top_n mode |
label_custom |
list | auto | Labels to show in custom mode (matched case-insensitively) | |
label_size |
number | 8 |
pt | Point label size |
label_color |
colour | black |
color | Point label colour |
label_box_alpha |
number | 0.7 |
[0-1] opacity | Opacity of the box behind labels |
label_arrow_color |
colour | grey |
color | Colour of the label leader lines |
label_arrow_width |
number | 0.5 |
pt | Width of the label leader lines |
label_expand |
list | [1.15, 1.4] |
multiple of the label box (x, y) | Room adjustText keeps around each label — raise if labels still touch |
label_force |
list | [0.4, 0.6] |
adjustText force (x, y) | How hard labels push apart |
label_iter_lim |
integer | 1000 |
iterations | Label-placement steps (a fixed count, so every build places the labels the same way) — raise if labels still overlap; lower for a faster build |
label_axes_pad_pt |
number | 2.0 |
pt | Room kept between a point label and the axes frame (the axis limits widen to make it) — raise if labels still crowd the frame |
x_min |
number | auto | data coords (after transform) | Lower x limit (both x_min and x_max needed) |
x_max |
number | auto | data coords (after transform) | Upper x limit |
y_min |
number | auto | data coords (after transform) | Lower y limit (both y_min and y_max needed) |
y_max |
number | auto | data coords (after transform) | Upper y limit |
grid |
true / false | False |
Draw a background grid | |
grid_alpha |
number | 0.3 |
[0-1] opacity | Grid opacity |
labels_title |
text | auto | Panel title | |
labels_xlabel |
text | computed | x-axis title (default: the x column name) | |
labels_ylabel |
text | computed | y-axis title (default: the y column name) | |
title_size |
number | style typography.title_size (else 10) |
pt | Panel title font size — lower if the title wraps or crowds the panel |
axes_label_size |
number | auto | pt | Axis title size (default: rcParams) |
tick_label_size |
number | auto | pt | Tick label size (default: rcParams) |
show_xticklabels |
true / false | True |
Show x tick labels | |
show_yticklabels |
true / false | True |
Show y tick labels | |
show_legend |
true / false | True |
Show the up / down / ns legend with counts | |
legend_position |
text | best |
Legend anchor (matplotlib loc, or 'outside right') | |
legend_fontsize |
text | computed | pt or matplotlib size name | Legend font size (default: tick_label_size, else 'small') |
legend_framealpha |
number | auto | [0-1] opacity | Legend frame opacity (default: rcParams) |
fit_axes_width |
true / false | False |
Widen the axes to fill its column, keeping room for the y tick labels | |
fit_pad_in |
number | 0.3 |
inches | Room left of the y tick labels when fitting |
fit_left_min |
number | 0.09 |
fraction of the column | Smallest left margin when fitting |
fit_left_max |
number | 0.3 |
fraction of the column | Largest left margin when fitting |
fit_right |
number | 0.98 |
fraction of the column | Right edge of the axes when fitting |
tier_hbar¶
fig_atlas.renderers:render_tier_hbar
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
category_col |
text | category |
Column of df with the bar categories (tiers) | |
count_col |
text | count |
Column of df with the bar lengths | |
order |
list | auto | Bar order top to bottom (default: order of first appearance) | |
label_rename_map |
mapping | {} |
Display label per category | |
bar_colors |
mapping | {} |
hex color per category | Colour per category |
default_bar_color |
colour | #3b73b9 |
hex color | Colour of categories without one |
show_value_labels |
true / false | True |
Print each bar's count at its end | |
value_label_fontsize |
number | computed | pt | Count label size (default axes_label_size) |
value_label_offset |
number | 0.015 |
fraction of x range | Gap between bar end and its count — raise if labels touch the bars |
xlim |
list | auto | data coords [min, max] | x range; only the max is used |
xlim_headroom |
number | 1.12 |
x the largest count | x range when xlim is unset — raise if value labels clip at the right |
xlabel |
text | n genes |
x-axis title | |
labels_title |
text | Final target genes by tier |
Panel title | |
title_size |
number | 13 |
pt | Panel title font size |
axes_label_size |
number | 11 |
pt | Axis title font size |
tick_label_size |
number | 8 |
pt | Tick label font size |
treatment_schematic¶
fig_atlas.renderers:render_treatment_schematic
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
xlim |
list | [-1, 76] |
hours [min, max] | x range of the timeline axes |
ylim |
list | [-2.5, 5.2] |
data coords [min, max] | y range shared by both axes |
regimen_labels |
list | [{'text': 'Acute', 'x': 0.75, 'y': 1.5, 'fontsize': 14.0, 'fontweight': 'bold', 'color': '#0F172A'}, {'text': 'Chronic', 'x': 0.75, 'y': 3.3, 'fontsize': 14.0, 'fontweight': 'bold', 'color': '#0F172A', 'bracket': {'draw': True, 'y_top': 3.9, 'y_bot': 2.7, 'x_tip': 0.95, 'x_corner': 0.88, 'x_stem': 0.82, 'color': '#475569', 'lw': 1.8}}] |
Regimen names left of the bars: text, x/y (axes data coords), fontsize (pt), colour, optional bracket | |
label_fontsize |
number | 13.0 |
pt | Default size of the regimen labels |
timeline_range |
list | [0, 74] |
hours [start, end] | Extent of the timeline line |
timeline_ticks |
list | [0, 3, 24, 48, 72] |
hours | Tick positions on the timeline |
timeline_labels |
list | ['0', '3', '24', '48', '72'] |
Tick labels | |
timeline_linewidth |
number | 3.2 |
pt | Timeline line width |
y_axis |
number | 0.2 |
data coords | Height of the timeline line — lower to move it away from the bars |
tick_len |
number | 0.4 |
data coords | Tick length on the timeline |
tick_fontsize |
number | 15.0 |
pt | Timeline tick label size |
tick_label_offset |
number | 0.75 |
data coords | Gap between timeline and its tick labels |
treatment_bars |
list | [{'start': 0, 'end': 3, 'y': 1.5}, {'start': 0, 'end': 24, 'y': 2.7}, {'start': 0, 'end': 48, 'y': 3.9}] |
hours (start, end) and data coords (y) | One exposure bar per regimen |
bar_color |
colour | #FF0000 |
hex color | Exposure bar fill |
bar_edgecolor |
colour | #000000 |
hex color | Exposure bar outline |
bar_height |
number | 0.56 |
data coords | Exposure bar thickness |
bar_linewidth |
number | 2.4 |
pt | Exposure bar outline width |
samplings |
list | [{'x': 24, 'y': 1.5, 'label': '1D'}, {'x': 72, 'y': 1.5, 'label': '3D'}, {'x': 72, 'y': 2.7, 'label': '24H'}, {'x': 72, 'y': 3.9, 'label': '48H'}] |
hours (x) and data coords (y) | Sampling time points (circle per sample, with label) |
color_rna |
colour | #8CE04F |
hex color | Fill of the RNA-seq half of a sampling circle |
color_atac |
colour | #00C5FF |
hex color | Ring colour marking ATAC-seq |
circle_size |
number | 1700 |
pt^2 (marker area) | Sampling circle size |
circle_linewidth |
number | 3.5 |
pt | Sampling circle ring width |
legend |
mapping | {} |
Legend layout: y, bar_x, bar_w, bar_label_x, bar_height, circle_size, circle_linewidth, rna_x, rna_label_x, rna_edgecolor, atac_x, atac_label_x, atac_circle_linewidth | |
y_legend |
number | -1.8 |
data coords | Legend row height (legend.y takes precedence) |
legend_fontsize |
number | 14.5 |
pt | Legend text size |
ts_profile¶
fig_atlas.renderers:render_ts_profile
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
sample_groups |
mapping | auto | Group name -> sample columns, for dividers and group labels | |
profile_show_group_labels |
true / false | True |
Label each sample group above the profile | |
profile_group_divider_color |
colour | #999999 |
hex color | Colour of the lines between groups |
profile_line_color |
colour | #f39c12 |
hex color | Colour of the per-gene lines |
profile_line_width |
number | 0.6 |
pt | Per-gene line width |
profile_line_alpha |
number | 0.25 |
alpha [0-1] | Per-gene line opacity — lower when many genes are drawn |
profile_mean_line_color |
colour | #c0392b |
hex color | Colour of the mean line |
profile_mean_line_width |
number | 2.0 |
pt | Mean line width |
profile_grid |
true / false | True |
Draw a background grid | |
profile_y_min |
number | computed | data coords | Lower y limit (default z_min, else data) |
profile_y_max |
number | computed | data coords | Upper y limit (default z_max, else data) |
z_min |
number | auto | z-score | Shared lower limit, used when profile_y_min is not set |
z_max |
number | auto | z-score | Shared upper limit, used when profile_y_max is not set |
profile_labels_title |
text | auto | Panel title | |
profile_labels_ylabel |
text | Z-score |
y-axis title | |
title_size |
number | 13 |
pt | Panel title font size |
axes_label_size |
number | 11 |
pt | Axis title font size |
tick_label_size |
number | 8 |
pt | Tick label font size |
two_set_euler¶
fig_atlas.renderers:render_two_set_euler
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
a_label |
text | A |
Name of set A, printed above its circle with n | |
b_label |
text | B |
Name of set B, printed above its circle with n | |
a_color |
colour | #93c5fd |
hex color | Fill of the A-only region |
b_color |
colour | #fcd34d |
hex color | Fill of the B-only region |
both_color |
colour | #2563eb |
hex color | Fill of the intersection |
fill_alpha |
number | 0.55 |
[0-1] opacity | Opacity of the circle fills |
edge_color |
colour | #334155 |
hex color | Circle outline colour (and the outside count text) |
edge_width |
number | 0.6 |
pt | Circle outline width |
frame_color |
colour | #94a3b8 |
hex color | Colour of the surrounding 'all genes' box |
frame_width |
number | 0.6 |
pt | Width of the surrounding box |
frame_pad |
number | 0.12 |
x the larger radius | Gap between circles and the box sides |
frame_top_room |
number | 0.55 |
x the larger radius | Room above the circles for the set labels — raise if set labels touch the box |
frame_bottom_room |
number | 0.3 |
x the larger radius | Room below the circles for the totals |
count_fontsize |
number | 6.0 |
pt | Region count size |
label_fontsize |
number | 6.0 |
pt | Set label size |
both_label |
text | linked |
Word above the intersection count | |
both_note |
text | auto | Extra line in the intersection (e.g. 'core 41') | |
both_text_color |
colour | white |
color | Text colour inside the intersection |
neither_label |
text | neither |
Label of the genes outside both circles | |
total_label |
text | all genes |
Label of the total | |
min_region_frac |
number | 0.28 |
x the larger radius | A region narrower than this gets its count outside |
both_min_width_frac |
number | 0.45 |
x the larger radius | A lens narrower than this gets its label outside the circles |
both_outside_offset |
list | [0.35, 0.45] |
[dx, dy] in radii | Position of the outside intersection label |
both_outside_color |
colour | #1e3a8a |
hex color | Colour of the outside intersection label |
labels_title |
text | auto | Panel title (none = no title) | |
title_size |
number | 8.0 |
pt | Panel title font size |
title_pad |
number | 4 |
pt | Gap between title and diagram |
venn¶
fig_atlas.renderers:render_venn
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
set_labels |
list | [] |
Sets to draw (2 or 3): values of the long table's dataset column | |
display_labels |
list | [] |
Names printed for the sets (default: set_labels) | |
unit |
text | Gene |
What is counted, used in the title (e.g. Gene, Peak) | |
filter_name |
text | All Genes |
Name of the filter, used in the title | |
title_size |
number | 12 |
pt | Panel title font size |
violin¶
fig_atlas.renderers:render_violin
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
y_log |
true / false | False |
Log-scaled y axis | |
y_min |
number | auto | data coords | Lower y limit (both y_min and y_max needed) |
y_max |
number | auto | data coords | Upper y limit |
grid |
true / false | False |
Draw horizontal grid lines | |
grid_alpha |
number | 0.3 |
[0-1] opacity | Grid opacity |
spine_width |
number | auto | pt | Axis line width (default: rcParams) |
hide_top_right |
true / false | True |
Hide the top and right axis lines | |
labels_title |
text | auto | Panel title (none: no title) | |
labels_xlabel |
text | computed | x-axis title (default: the x column's name) | |
labels_ylabel |
text | computed | y-axis title (default: the y column's name) | |
title_size |
number | 8.0 |
pt | Panel title size |
axes_label_size |
number | auto | pt | Axis title size (default: rcParams) |
tick_label_size |
number | auto | pt | Tick label size (default: rcParams) |
show_legend |
true / false | True |
Show the group legend (only with a group_col) | |
legend_loc |
text | best |
Legend location (matplotlib loc) | |
legend_fontsize |
number | auto | pt | Legend font size (none: tick_label_size) |
legend_frameon |
true / false | False |
Draw a frame around the legend | |
x_col |
text | group |
Column with the categories (x axis) | |
y_col |
text | value |
Column with the values | |
x_order |
list | auto | Category order on x (default: order in the data) | |
x_labels |
mapping | {} |
Shown name per category (default: the category) | |
group_colors |
mapping | {} |
hex color | Fill colour per category (default: matplotlib colour cycle) |
violin_width |
number | 0.8 |
x units (categories are 1 apart) | Width of each violin — lower for more space between categories |
violin_alpha |
number | 0.6 |
[0-1] opacity | Violin fill opacity |
violin_edge_color |
colour | #374151 |
hex color | Violin outline colour |
violin_edge_width |
number | 0.6 |
pt | Violin outline width |
bandwidth |
number | auto | fraction of the data's spread (scipy gaussian_kde bw_method) | Smoothing of the violin outline (default: Scott's rule) — lower to follow the data more closely, raise for a smoother outline |
show_quartiles |
true / false | True |
Draw the median (dot) and quartiles (thick line) inside each violin | |
median_color |
colour | #ffffff |
hex color | Median dot colour |
median_size |
number | 12.0 |
pt^2 (marker area) | Median dot size |
quartile_color |
colour | #111827 |
hex color | Quartile bar colour |
quartile_width |
number | 3.0 |
pt | Quartile bar width |
show_points |
true / false | False |
Overlay every value as a point | |
point_color |
colour | #111827 |
hex color | Point colour |
point_size |
number | 6.0 |
pt^2 (marker area) | Point size |
point_alpha |
number | 0.6 |
[0-1] opacity | Point opacity |
point_edge_width |
number | 0.0 |
pt | Point outline width (0: none) |
point_jitter |
number | 0.08 |
x units | Horizontal scatter of the points |
point_seed |
integer | 0 |
random seed | Seed of the jitter (fixed for reproducible output) |
volcano¶
fig_atlas_omics.renderers:render_volcano
| Key | Type | Default | Unit | What it does |
|---|---|---|---|---|
log2fc_threshold |
number | 1.0 |
log2 fold change | |log2FC| cut-off for up / down points — raise to call only stronger changes |
padj_threshold |
number | 0.05 |
adjusted P | padj cut-off for up / down points |
up_color |
colour | #ff0000 |
hex color | Colour of up-regulated points |
down_color |
colour | #0000ff |
hex color | Colour of down-regulated points |
ns_color |
colour | #808080 |
hex color | Colour of non-significant points |
dot_size |
number | 20 |
pt^2 (marker area) | Point size — lower for dense plots |
show_cutoff_lines |
true / false | True |
Draw the dashed cut-off lines | |
cutoff_line_color |
colour | black |
color | Cut-off line colour |
cutoff_line_style |
text | -- |
Cut-off line style (matplotlib) | |
cutoff_line_width |
number | 1 |
pt | Cut-off line width |
cutoff_line_alpha |
number | 0.5 |
[0-1] opacity | Cut-off line opacity |
annotation_mode |
one of none, top_n, custom |
none |
Label genes: none, the top_n strongest (|log2FC| x -log10 padj), or annotation_custom_genes | |
annotation_top_n |
integer | 10 |
genes | Genes labelled in top_n mode |
annotation_custom_genes |
list | auto | Genes labelled in custom mode (matched case-insensitively) | |
annotation_label_size |
integer | 8 |
pt | Gene label size |
annotation_iter_lim |
integer | 1000 |
iterations | Label-placement steps (a fixed count, so every build places the labels the same way) — raise if labels still overlap; lower for a faster build |
x_min |
number | auto | log2 fold change | Lower x limit (both x_min and x_max needed) |
x_max |
number | auto | log2 fold change | Upper x limit |
y_min |
number | auto | -log10 padj | Lower y limit (both y_min and y_max needed) |
y_max |
number | auto | -log10 padj | Upper y limit |
labels_title |
text | auto | Panel title | |
labels_xlabel |
text | Log2 Fold Change |
x-axis title | |
labels_ylabel |
text | -Log10(Padj) |
y-axis title | |
title_size |
number | 10 |
pt | Panel title font size |
show_xticklabels |
true / false | True |
Show x tick labels | |
show_yticklabels |
true / false | True |
Show y tick labels | |
show_legend |
true / false | True |
Show the up / down / ns legend | |
legend_position |
text | best |
Legend anchor (matplotlib loc) |
Recipes¶
A recipe is a core shape with a field's defaults and parameter names; fig_atlas.render("<name>", ...) draws it.
| Recipe | Renderer | Defaults |
|---|---|---|
ma_plot |
fig_atlas.renderers.threshold_scatter:render_threshold_scatter |
axes_label_size: 11, cutoff_lines: [{'axis': 'h', 'at': 0}, {'axis': 'h', 'at': 'effect', 'width_scale': 0.6, 'alpha_scale': 0.7, 'style': ':'}, {'axis': 'h', 'at': '-effect', 'width_scale': 0.6, 'alpha_scale': 0.7, 'style': ':'}], dot_size: 10, effect_col: log2FoldChange, effect_threshold: 0.585, empty_is_missing: True, labels_title: MA Plot, labels_xlabel: log10(Mean Accessibility), labels_ylabel: Log2 Fold Change, legend_framealpha: 0.9, missing_text: No data to display, ns_alpha: 0.5, ns_zorder: 2, sig_alpha: 1.0, sig_col: padj, sig_zorder: 3, tick_label_size: 8, title_size: 13, x_col: baseMean, x_transform: log10, y_col: log2FoldChange |
volcano |
fig_atlas.renderers.threshold_scatter:render_threshold_scatter |
cutoff_lines: [{'axis': 'h', 'at': 'sig'}, {'axis': 'v', 'at': 'effect'}, {'axis': 'v', 'at': '-effect'}], effect_col: log2FC, fit_axes_width: True, grid: True, labels_xlabel: Log2 Fold Change, labels_ylabel: -Log10(Padj), legend_fontsize: small, missing_text: Required columns not found: log2FC and padj, missing_text_size: 14, ns_alpha: 0.6, sig_alpha: 0.6, sig_col: padj, x_col: log2FC, y_col: padj, y_transform: neg_log10 |