This guide provides the complete specifications for preparing figures for submission to Cancer Research and other AACR (American Association for Cancer Research) journals. Cancer Research has a distinctive hierarchical panel labeling system (Ai, Aii, Bi, Bii) and strict limits on the total number of display items.
Multiple panels should each be labeled and described in the legend
Legend Requirements
Figure legends must include the number of technical AND biological replicates
This is a mandatory requirement for Cancer Research
def generate_cancer_res_labels(n_main_panels, sub_panels_per_main=None):
"""Generate Cancer Research hierarchical panel labels.
Args:
n_main_panels: Number of main panels (A, B, C, ...)
sub_panels_per_main: List of sub-panel counts per main panel,
or None for no sub-panels
Returns:
List of label strings
Example:
generate_cancer_res_labels(3, [2, 3, 1])
# Returns: ['Ai', 'Aii', 'Bi', 'Bii', 'Biii', 'C']
"""
import string
labels = []
roman = ['i', 'ii', 'iii', 'iv', 'v', 'vi', 'vii', 'viii']
for i in range(n_main_panels):
main_label = string.ascii_uppercase[i]
if sub_panels_per_main and sub_panels_per_main[i] > 1:
for j in range(sub_panels_per_main[i]):
labels.append(f"{main_label}{roman[j]}")
else:
labels.append(main_label)
return labels
Example Usage
# 3 main panels: A has 2 sub-panels, B has 3, C has 1
labels = generate_cancer_res_labels(3, [2, 3, 1])
print(labels)
# Output: ['Ai', 'Aii', 'Bi', 'Bii', 'Biii', 'C']
Image Integrity and Manipulation Policy
Cancer Research follows general AACR editorial policies for image integrity:
All image adjustments should be applied uniformly to the entire image
No selective enhancement of specific features
Original unprocessed data should be available upon request
Processing details should be described in Methods
Python Quick Start: Full Validation
from PIL import Image
import os
def validate_cancer_res_figure(image_path, image_type='halftone'):
"""Full validation of a figure against Cancer Research requirements."""
img = Image.open(image_path)
issues = []
# 1. Resolution check
min_dpi = {'lineart': 1200, 'halftone': 300, 'combination': 600}
required = min_dpi.get(image_type, 300)
dpi = img.info.get('dpi', (72, 72))
if dpi[0] < required:
issues.append(f"Resolution {dpi[0]} DPI below {required} DPI for {image_type}")
# 2. Color mode check
if img.mode not in ('RGB', 'RGBA'):
issues.append(f"Color mode is {img.mode}; RGB recommended")
# 3. Format check
fmt = img.format
accepted = ['TIFF', 'EPS', 'PNG', 'JPEG', 'PDF']
if fmt and fmt.upper() not in accepted:
issues.append(f"Format '{fmt}' not in standard list")
# Report
print(f"=== Cancer Research Figure Validation ===")
print(f"Dimensions: {img.size[0]} x {img.size[1]} px")
print(f"DPI: {dpi[0]} x {dpi[1]}")
print(f"Color mode: {img.mode}")
print(f"Format: {fmt}")
if issues:
print(f"\nISSUES FOUND ({len(issues)}):")
for issue in issues:
print(f" - {issue}")
else:
print("\nAll checks PASSED")
print("\nREMINDER: Cancer Research limits Research Articles to 7 figures+tables total")
print("REMINDER: Legends must include number of technical AND biological replicates")
return len(issues) == 0
Key Concepts
Hierarchical Panel Labeling
Cancer Research uses a unique three-level labeling system: Level 1 uses capital letters (A, B, C), Level 2 uses Roman numerals (i, ii, iii), and Level 3 uses lowercase letters (a, b, c). The preferred format is Ai, Aii, Bi, Bii — not Aa, Ab, Ba, Bb. No boxes or periods surround panel labels.
Display Item Limits
Cancer Research strictly limits the total number of display items (figures + tables combined). Research Articles are limited to 7 display items; Letters are limited to 2. Planning figure composition to maximize information density within these limits is essential.
Replicate Reporting in Legends
A distinctive Cancer Research requirement is that figure legends must include the number of both technical and biological replicates for each experiment shown. This transparency standard supports reproducibility and is checked during editorial review.
Decision Framework
What type of image are you preparing?
├── Line art (diagram, schematic) → 1,200 DPI
├── Halftone (photo, micrograph) → 300 DPI
├── Combination (mixed text + image) → 600-900 DPI
└── Multi-panel figure
├── Simple panels (A, B, C) → Standard uppercase labels
└── Sub-panels needed → Hierarchical: Ai, Aii, Bi, Bii
Scenario
Format
Resolution
Labeling
Western blot with quantification
TIFF + EPS
300 DPI (blot) + 1,200 DPI (graph)
Ai (blot), Aii (quantification)
Tumor growth curves
EPS or AI
Vector or 1,200 DPI
A, B, C (simple panels)
Immunohistochemistry panel
TIFF
300 DPI
Ai, Aii, Bi, Bii (conditions x magnifications)
Flow cytometry dot plots
TIFF or PDF
300 DPI
Hierarchical by condition
Kaplan-Meier survival curves
EPS or PDF
Vector
Simple A, B labeling
Best Practices
Plan display items early: With a 7-item limit for Research Articles, plan which results become figures vs. tables vs. supplementary material before drafting
Use hierarchical labels for complex panels: When a main panel has sub-components (e.g., image + quantification), use the Ai/Aii system rather than separate figure letters
Include replicate counts in every legend: State both technical and biological replicate numbers for each panel. This is a mandatory requirement, not optional
Avoid boxes and periods on labels: Cancer Research specifically prohibits decorative elements around panel labels. Use clean, unboxed capital letters
Size figures to fit a single page: Each figure must fit on one printed page. If content exceeds this, consider splitting into two figures or moving data to supplements
Present figures in sequential order: Figures should appear adjacent to their legends in the order they are cited in the text
Common Pitfalls
Exceeding the display item limit: Submitting more than 7 figures + tables for a Research Article triggers immediate revision request
How to avoid: Count all display items before submission; consolidate related panels using hierarchical labeling
Using incorrect hierarchical label format: Writing Aa/Ab instead of Ai/Aii is a common mistake
How to avoid: Use Roman numerals (i, ii, iii) for Level 2, not lowercase letters
Omitting replicate information from legends: Missing replicate counts delay review and may require revision
How to avoid: Add a template line to every legend: "Data represent N=X biological replicates with Y technical replicates each"
Adding boxes or periods to panel labels: Decorative elements around labels violate Cancer Research formatting rules
How to avoid: Use plain capital letters without any surrounding decoration
Using 300 DPI for line art: Line art requires 1,200 DPI — the highest tier. Graphs at 300 DPI will appear jagged in print
How to avoid: Export vector graphics as EPS/AI, or rasterize at 1,200 DPI minimum
Pre-Submission Checklist
Before submitting figures to Cancer Research, verify:
Line art at 1,200+ DPI
Halftone/color images at 300+ DPI
Combination images at 600-900 DPI
File format is EPS, TIFF, AI, PSD, or PNG
Research Article: maximum 7 figures + tables combined
Letters: maximum 2 display items
Each figure fits on a single printed page
Panel labels use hierarchical format (Ai, Aii, Bi, Bii)
No boxes around panel labels
No periods after panel labels
Font is Arial, Helvetica, or Times New Roman
Legend includes number of technical and biological replicates
1---2name: cancer-research-figure-guide3description: Cancer Research (AACR) figures: resolution (300-1200 DPI), formats (EPS/TIFF/AI), hierarchical panel labels (Ai, Aii, Bi), figure/table limits, legend requirements with replicate counts.4license: CC-BY-4.05---67# Cancer Research (AACR) Figure Preparation Guide
89## Overview
1011This guide provides the complete specifications for preparing figures for submission to **Cancer Research** and other AACR (American Association for Cancer Research) journals. Cancer Research has a distinctive **hierarchical panel labeling system** (Ai, Aii, Bi, Bii) and strict limits on the total number of display items.
1213**Official reference**: https://aacrjournals.org/pages/article-style-and-format
1415---
1617## Resolution Requirements
1819| Image Type | Minimum Resolution |
20|---|---|
21| Line art | **1,200 DPI** |
22| Halftone / color images | **300 DPI** |
23| Combination artwork | **600-900 DPI** |
2425```python
26from PIL import Image
2728def check_cancer_res_resolution(image_path, image_type='halftone'):
29 """Check if image meets Cancer Research resolution requirements.
3031 Args:
32 image_type: 'lineart' (1200), 'halftone' (300), or 'combination' (600)
33 """
34 min_dpi = {'lineart': 1200, 'halftone': 300, 'combination': 600}
35 required = min_dpi.get(image_type, 300)
3637 img = Image.open(image_path)
38 dpi = img.info.get('dpi', (72, 72))
3940 print(f"Type: {image_type} | Required: {required} DPI | Actual: {dpi[0]} DPI")
41 passed = dpi[0] >= required
42 print("PASS" if passed else f"FAIL: Need {required} DPI minimum")
4344 return passed
45```
4647---
4849## File Format
5051| Format | Accepted |
52|---|---|
53| **EPS** | Yes |
54| **TIFF** | Yes |
55| **AI** (Adobe Illustrator) | Yes |
56| **PSD** (Photoshop) | Yes |
57| **PNG** | Yes |
58| **PS** (PostScript) | Yes |
5960---
6162## Figure Size and Dimensions
6364### Display Item Limits
6566| Article Type | Maximum Display Items |
67|---|---|
68| Research Articles | **7** figures + tables combined |
69| Letters | **2** display items total |
7071- Each figure must fit on a **single printed page**
72- Figures should be presented in sequential order adjacent to legends
7374---
7576## Color Mode
7778- No strict CMYK/RGB mandate in published guidelines
79- **RGB recommended** for online display
80- Follow general best practices for color accessibility
8182---
8384## Font Requirements
8586| Element | Font | Size |
87|---|---|---|
88| Manuscript body text | Arial, Helvetica, or Times New Roman | 12 pt |
89| Figure text | Same fonts | 8-12 pt range |
9091---
9293## Labeling Conventions
9495### Hierarchical Panel Label System (AACR-Specific)
9697Cancer Research uses a unique **three-level hierarchical labeling** system:
98991. **Level 1**: Capital letters — **A, B, C, D**
1002. **Level 2**: Roman numerals — **i, ii, iii, iv**
1013. **Level 3**: Lowercase letters — **a, b, c, d**
102103**Preferred format**: `Ai, Aii, Bi, Bii` (NOT `Aa, Ab, Ba, Bb`)
104105### Labeling Rules
106- **No boxes** around panel labels
107- **No periods** after panel labels
108- Multiple panels should each be labeled and described in the legend
109110### Legend Requirements
111- Figure legends must include the **number of technical AND biological replicates**
112- This is a mandatory requirement for Cancer Research
113114```python
115def generate_cancer_res_labels(n_main_panels, sub_panels_per_main=None):
116 """Generate Cancer Research hierarchical panel labels.
117118 Args:
119 n_main_panels: Number of main panels (A, B, C, ...)
120 sub_panels_per_main: List of sub-panel counts per main panel,
121 or None for no sub-panels
122123 Returns:
124 List of label strings
125126 Example:
127 generate_cancer_res_labels(3, [2, 3, 1])
128 # Returns: ['Ai', 'Aii', 'Bi', 'Bii', 'Biii', 'C']
129 """
130 import string
131132 labels = []
133 roman = ['i', 'ii', 'iii', 'iv', 'v', 'vi', 'vii', 'viii']
134135 for i in range(n_main_panels):
136 main_label = string.ascii_uppercase[i]
137138 if sub_panels_per_main and sub_panels_per_main[i] > 1:
139 for j in range(sub_panels_per_main[i]):
140 labels.append(f"{main_label}{roman[j]}")
141 else:
142 labels.append(main_label)
143144 return labels
145```
146147### Example Usage
148149```python
150# 3 main panels: A has 2 sub-panels, B has 3, C has 1
151labels = generate_cancer_res_labels(3, [2, 3, 1])
152print(labels)
153# Output: ['Ai', 'Aii', 'Bi', 'Bii', 'Biii', 'C']
154```
155156---
157158## Image Integrity and Manipulation Policy
159160Cancer Research follows general **AACR editorial policies** for image integrity:
161162- All image adjustments should be applied uniformly to the entire image
163- No selective enhancement of specific features
164- Original unprocessed data should be available upon request
165- Processing details should be described in Methods
166167---
168169## Python Quick Start: Full Validation
170171```python
172from PIL import Image
173import os
174175def validate_cancer_res_figure(image_path, image_type='halftone'):
176 """Full validation of a figure against Cancer Research requirements."""
177 img = Image.open(image_path)
178 issues = []
179180 # 1. Resolution check
181 min_dpi = {'lineart': 1200, 'halftone': 300, 'combination': 600}
182 required = min_dpi.get(image_type, 300)
183 dpi = img.info.get('dpi', (72, 72))
184 if dpi[0] < required:
185 issues.append(f"Resolution {dpi[0]} DPI below {required} DPI for {image_type}")
186187 # 2. Color mode check
188 if img.mode not in ('RGB', 'RGBA'):
189 issues.append(f"Color mode is {img.mode}; RGB recommended")
190191 # 3. Format check
192 fmt = img.format
193 accepted = ['TIFF', 'EPS', 'PNG', 'JPEG', 'PDF']
194 if fmt and fmt.upper() not in accepted:
195 issues.append(f"Format '{fmt}' not in standard list")
196197 # Report
198 print(f"=== Cancer Research Figure Validation ===")
199 print(f"Dimensions: {img.size[0]} x {img.size[1]} px")
200 print(f"DPI: {dpi[0]} x {dpi[1]}")
201 print(f"Color mode: {img.mode}")
202 print(f"Format: {fmt}")
203204 if issues:
205 print(f"\nISSUES FOUND ({len(issues)}):")
206 for issue in issues:
207 print(f" - {issue}")
208 else:
209 print("\nAll checks PASSED")
210211 print("\nREMINDER: Cancer Research limits Research Articles to 7 figures+tables total")
212 print("REMINDER: Legends must include number of technical AND biological replicates")
213214 return len(issues) == 0
215```
216217---
218219## Key Concepts
220221### Hierarchical Panel Labeling
222223Cancer Research uses a unique three-level labeling system: Level 1 uses capital letters (A, B, C), Level 2 uses Roman numerals (i, ii, iii), and Level 3 uses lowercase letters (a, b, c). The preferred format is Ai, Aii, Bi, Bii — not Aa, Ab, Ba, Bb. No boxes or periods surround panel labels.
224225### Display Item Limits
226227Cancer Research strictly limits the total number of display items (figures + tables combined). Research Articles are limited to 7 display items; Letters are limited to 2. Planning figure composition to maximize information density within these limits is essential.
228229### Replicate Reporting in Legends
230231A distinctive Cancer Research requirement is that figure legends must include the number of both technical and biological replicates for each experiment shown. This transparency standard supports reproducibility and is checked during editorial review.
232233## Decision Framework
234235```
236What type of image are you preparing?
237├── Line art (diagram, schematic) → 1,200 DPI
238├── Halftone (photo, micrograph) → 300 DPI
239├── Combination (mixed text + image) → 600-900 DPI
240└── Multi-panel figure
241 ├── Simple panels (A, B, C) → Standard uppercase labels
242 └── Sub-panels needed → Hierarchical: Ai, Aii, Bi, Bii
243```
244245| Scenario | Format | Resolution | Labeling |
246|---|---|---|---|
247| Western blot with quantification | TIFF + EPS | 300 DPI (blot) + 1,200 DPI (graph) | Ai (blot), Aii (quantification) |
248| Tumor growth curves | EPS or AI | Vector or 1,200 DPI | A, B, C (simple panels) |
249| Immunohistochemistry panel | TIFF | 300 DPI | Ai, Aii, Bi, Bii (conditions x magnifications) |
250| Flow cytometry dot plots | TIFF or PDF | 300 DPI | Hierarchical by condition |
251| Kaplan-Meier survival curves | EPS or PDF | Vector | Simple A, B labeling |
252253## Best Practices
2542551. **Plan display items early**: With a 7-item limit for Research Articles, plan which results become figures vs. tables vs. supplementary material before drafting
2562. **Use hierarchical labels for complex panels**: When a main panel has sub-components (e.g., image + quantification), use the Ai/Aii system rather than separate figure letters
2573. **Include replicate counts in every legend**: State both technical and biological replicate numbers for each panel. This is a mandatory requirement, not optional
2584. **Avoid boxes and periods on labels**: Cancer Research specifically prohibits decorative elements around panel labels. Use clean, unboxed capital letters
2595. **Size figures to fit a single page**: Each figure must fit on one printed page. If content exceeds this, consider splitting into two figures or moving data to supplements
2606. **Present figures in sequential order**: Figures should appear adjacent to their legends in the order they are cited in the text
261262## Common Pitfalls
2632641. **Exceeding the display item limit**: Submitting more than 7 figures + tables for a Research Article triggers immediate revision request
265 - *How to avoid*: Count all display items before submission; consolidate related panels using hierarchical labeling
2662. **Using incorrect hierarchical label format**: Writing Aa/Ab instead of Ai/Aii is a common mistake
267 - *How to avoid*: Use Roman numerals (i, ii, iii) for Level 2, not lowercase letters
2683. **Omitting replicate information from legends**: Missing replicate counts delay review and may require revision
269 - *How to avoid*: Add a template line to every legend: "Data represent N=X biological replicates with Y technical replicates each"
2704. **Adding boxes or periods to panel labels**: Decorative elements around labels violate Cancer Research formatting rules
271 - *How to avoid*: Use plain capital letters without any surrounding decoration
2725. **Using 300 DPI for line art**: Line art requires 1,200 DPI — the highest tier. Graphs at 300 DPI will appear jagged in print
273 - *How to avoid*: Export vector graphics as EPS/AI, or rasterize at 1,200 DPI minimum
274275## Pre-Submission Checklist
276277Before submitting figures to Cancer Research, verify:
278279- [ ] Line art at 1,200+ DPI
280- [ ] Halftone/color images at 300+ DPI
281- [ ] Combination images at 600-900 DPI
282- [ ] File format is EPS, TIFF, AI, PSD, or PNG
283- [ ] Research Article: maximum 7 figures + tables combined
284- [ ] Letters: maximum 2 display items
285- [ ] Each figure fits on a single printed page
286- [ ] Panel labels use hierarchical format (Ai, Aii, Bi, Bii)
287- [ ] No boxes around panel labels
288- [ ] No periods after panel labels
289- [ ] Font is Arial, Helvetica, or Times New Roman
290- [ ] Legend includes number of **technical and biological replicates**
291- [ ] Image adjustments applied uniformly
292- [ ] Original data available upon request
293294---
295296## References
297298- AACR Article Style and Format: https://aacrjournals.org/pages/article-style-and-format
299- AACR Editorial Policies: https://aacrjournals.org/pages/editorial-policies
300- Cancer Research Author Guidelines: https://aacrjournals.org/cancerresearch/pages/prep
Run npx skillmds@latest add gabrielmoreira/cancer-research-figure-guide in your terminal (requires Node.js), paste this page's agent-chat prompt into Claude, Cursor, or any MCP-connected agent, or download the SKILL.md file and copy it into your agent's skills directory.
Cancer Research (AACR) figures: resolution (300-1200 DPI), formats (EPS/TIFF/AI), hierarchical panel labels (Ai, Aii, Bi), figure/table limits, legend requirements with replicate counts. It is listed under AI & ML on SkillMD.
This skill has not completed SkillMD's automated safety review yet. Independent scanners report: SkillSpector: PASS, Skill Scanner: PASS. Capability flags: makes network calls. SkillMD never runs a skill's scripts for you; review the SKILL.md before installing.
This skill is tagged as working with Claude Code, Claude.ai, OpenAI Codex. SKILL.md is an open format, so most agents that read a skills directory can load it too.
Yes. Installing skills from SkillMD is free. This skill is licensed under CC-BY-4.
gabrielmoreira (@gabrielmoreira) published this skill. Their other Agent Skills are listed on their SkillMD profile.