Generate Circos configuration files for circular genomics data visualization. Supports genomic variations (SNPs, CNVs, structural variants), cell-cell communication networks, and custom track configurations for publication-ready circular plots. Generates configuration files only — rendering requires Circos installed separately.
83
80%
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./scientific-skills/Data analysis/circos-plot-generator/SKILL.mdGenerate configuration files for Circos circular visualization plots, enabling genomics data visualization including genomic variations, chromosome ideograms, cell-cell communication networks, and custom track annotations.
Key Capabilities:
tracks configuration keyThis skill accepts: genomic variation data (TSV/CSV with chrom, start, end, type, value columns) or cell communication data (TSV with source, target, weight columns), plus optional configuration parameters.
Rendering constraint: This skill generates Circos configuration files only. Rendering requires Circos installed separately (conda install -c bioconda circos). This constraint applies to every invocation.
If the request does not involve generating a Circos configuration for genomic or cell communication data — for example, asking to perform variant calling, run statistical analysis, or create non-circular plots — do not proceed. Instead respond:
"Circos Plot Generator is designed to generate Circos configuration files for circular genomics visualization. Please provide a data file (TSV/CSV) with genomic coordinates or cell communication data. For other visualization tasks, use a more appropriate tool."
python -m py_compile scripts/main.py
python scripts/main.py --helpFallback: If --data is missing, respond: "Required parameter --data not provided. Please supply an input data file (TSV/CSV). Cannot generate Circos configuration without input data."
from scripts.main import CircosConfig
config = {
"type": "variation",
"title": "Sample Genomic Variations",
"data": "variations.csv",
"width": 1200, "height": 1200,
"color_scheme": "nature",
"output": "./circos_output"
}
generator = CircosConfig(config)
config_path = generator.generate()Input Data Format:
| Column | Description | Example |
|---|---|---|
chrom | Chromosome name | chr1, chrX |
start | Start position | 1000000 |
end | End position | 2000000 |
type | Variation type | SNP, CNV, TRANSLOCATION |
value | Score or magnitude | 0.5, -0.8 |
config = {
"type": "cell-comm",
"title": "Tumor Microenvironment Interactions",
"data": "cell_communication.csv",
"color_scheme": "cell",
"output": "./cell_comm_plots"
}Input Format:
| Column | Description | Example |
|---|---|---|
source | Source cell type | T_Cell |
target | Target cell type | Macrophage |
weight | Interaction strength (0–1) | 0.8 |
The custom track type supports histogram and link tracks via the tracks configuration key:
config = {
"type": "custom",
"tracks": [
{"type": "histogram", "data": "expression.txt", "r0": "0.6r", "r1": "0.8r"},
{"type": "link", "data": "links.txt", "color": "red"}
]
}| Scheme | Best For |
|---|---|
| default | Quick visualization, drafts |
| nature | Nature publications |
| lancet | Medical/clinical papers |
| cell | Cell biology papers |
# Generate genomic variation Circos plot
python scripts/main.py --data variations.tsv --output genome.svg
# Cell communication plot with custom colors
python scripts/main.py --data cell_comm.tsv --type cell-communication --colors nature
# Custom radius
python scripts/main.py --data data.tsv --radius 500 --output large.svg| Parameter | Type | Required | Description |
|---|---|---|---|
--data | string | Yes | Input data file (TSV/CSV) |
--output, -o | string | No | Output SVG file path |
--type | string | No | Plot type (variation, cell-communication, custom) |
--colors | string | No | Color scheme (default, nature, lancet, cell) |
--radius | float | No | Plot radius in pixels |
| File | Description |
|---|---|
circos.conf | Main configuration |
data/karyotype.txt | Chromosome definitions |
data/*.txt | Track data files |
circos.png | Raster image (if rendered) |
circos.svg | Vector image (if rendered) |
Constraint: This skill generates configuration files only. Rendering requires Circos installed separately (
conda install -c bioconda circos). Always include this constraint in every response.
Every final response must make these explicit:
conda install -c bioconda circos). This skill generates configuration files only.--data is missing, state the missing parameter and request it. Do not proceed.scripts/main.py fails, report the failure point and provide manual configuration fallback.ca9aaa4
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.