Skip to content
Development
Skill

/cell-figure-guide

Cell (Cell Press) figure preparation: resolution (300-1000 DPI), formats (TIFF/PDF), RGB color, Avenir/Arial fonts, uppercase panel labels, strict image manipulation policies.

From plugin
sciagent-skills
364200 skills
Install
$ npx -y skills add jaechang-hits/SciAgent-Skills --skill cell-figure-guide --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/cell-figure-guide

Context preview

The summary Claude sees to decide when to auto-load this skill.

Cell (Cell Press) figure preparation: resolution (300-1000 DPI), formats (TIFF/PDF), RGB color, Avenir/Arial fonts, uppercase panel labels, strict image manipulation policies.

SKILL.md

cell-figure-guide.SKILL.md
name: cell-figure-guide
description: "Cell (Cell Press) figure preparation: resolution (300-1000 DPI), formats (TIFF/PDF), RGB color, Avenir/Arial fonts, uppercase panel labels, strict image manipulation policies."
license: CC-BY-4.0
compatibility: Python 3.10+, Pillow, Matplotlib
metadata:
  authors: HITS
  version: "1.0"

Cell Figure Preparation Guide

Overview

This guide provides the complete specifications for preparing figures for submission to **Cell** and other Cell Press journals (e.g., Cell Stem Cell, Cell Reports, Molecular Cell). Cell Press has strict figure requirements and a rigorous image integrity policy.

**Official reference**: https://www.cell.com/information-for-authors/figure-guidelines

---

Resolution Requirements

| Image Type | Minimum Resolution | Notes | |---|---|---| | Color / Grayscale photographs | **300 DPI** | At desired print size | | Black-and-white images | **500 DPI** | At desired print size | | Line art (graphs, diagrams) | **1,000 DPI** | At desired print size |

**IMPORTANT**: All resolution measurements are at the **desired print size**, not at full-page size.

Verify Resolution

from PIL import Image

def check_cell_resolution(image_path, image_type='color'):
    """Check if image meets Cell journal resolution requirements.

    Args:
        image_path: Path to the image file
        image_type: 'color' (300 DPI), 'bw' (500 DPI), or 'lineart' (1000 DPI)
    """
    min_dpi = {'color': 300, 'bw': 500, 'lineart': 1000}
    required = min_dpi.get(image_type, 300)

    img = Image.open(image_path)
    dpi = img.info.get('dpi', (72, 72))

    print(f"Image type: {image_type}")
    print(f"Required DPI: {required}")
    print(f"Actual DPI: {dpi[0]} x {dpi[1]}")

    if dpi[0] >= required:
        print("PASS: Resolution meets Cell requirements")
    else:
        print(f"FAIL: Need at least {required} DPI, got {dpi[0]}")

    return dpi[0] >= required

---

File Format

Preferred Formats

| Format | Best For | Notes | |---|---|---| | **TIFF** | Bitmap, grayscale, color images | Use LZW compression to reduce size | | **PDF** | Any figure type | Universally accepted | | **EPS** | Vector images (graphs, diagrams) | Preserves scalability |

Also Accepted

  • JPEG, CDX files

File Size

  • Individual files: **20 MB maximum**

Submission Notes

  • Initial submission: Figures can be embedded in manuscript or uploaded separately
  • Final production: Separate high-resolution files required

---

Figure Size and Dimensions

2-Column Format Journals (Cell, Molecular Cell, etc.)

| Layout | Width | |---|---| | 1 column | **85 mm** (3.35 in) | | 1.5 columns | **114 mm** (4.49 in) | | Full width | **174 mm** (6.85 in) |

3-Column Format Journals

| Layout | Width | |---|---| | 1 column | **55 mm** (2.17 in) | | 2 columns | **114 mm** (4.49 in) | | Full width | **174 mm** (6.85 in) |

Other Cell Press Journals (Chem, Joule, Matter, etc.)

| Layout | Width | |---|---| | 1 column | **112 mm** (4.41 in) | | Full width | **172 mm** (6.77 in) |

**All figures** must fit on a single 8.5" x 11" page.

Python: Set Cell Figure Dimensions

import matplotlib.pyplot as plt

# Cell Press figure widths in inches
CELL_WIDTHS = {
    '2col_single':   85 / 25.4,   # 3.35 in
    '2col_1.5':      114 / 25.4,  # 4.49 in
    '2col_full':     174 / 25.4,  # 6.85 in
    '3col_single':   55 / 25.4,   # 2.17 in
    '3col_double':   114 / 25.4,  # 4.49 in
    '3col_full':     174 / 25.4,  # 6.85 in
}

def create_cell_figure(layout='2col_single', aspect_ratio=0.75):
    """Create a Matplotlib figure sized for Cell Press journals."""
    width = CELL_WIDTHS[layout]
    height = width * aspect_ratio

    fig, ax = plt.subplots(figsize=(width, height))
    fig.set_dpi(300)

    return fig, ax

---

Color Mode

  • **Submit in RGB** color space
  • Journal converts to CMYK for print production
  • RGB preserves brighter colors for online viewing
from PIL import Image

def convert_to_rgb_for_cell(image_path, output_path):
    """Convert image to RGB for Cell Press submission."""
    img = Image.open(image_path)
    if img.mode == 'CMYK':
        img = img.convert('RGB')
        print("Converted from CMYK to RGB")
    elif img.mode != 'RGB':
        img = img.convert('RGB')
        print(f"Converted from {img.mode} to RGB")
    img.save(output_path)
    return output_path

---

Font Requirements

| Element | Font | Size | |---|---|---| | Primary font | **Avenir** (preferred), Arial, Helvetica | — | | Figure text | — | ~**7 pt** at print size | | Panel labels | — | Bold, **capital letters** |

Critical Rules

  • **All fonts must be embedded** in Adobe Illustrator files
  • Use Avenir as the first choice; Arial or Helvetica as alternatives
  • Consistent font usage across all figure panels
import matplotlib.pyplot as plt

def set_cell_fonts():
    """Configure Matplotlib for Cell Press figure fonts."""
    plt.rcParams.update({
        'font.family': 'sans-serif',
        'font.sans-serif': ['Avenir', 'Arial', 'Helvetica'],
        'font.size': 7,
        'axes.labelsize': 7,
        'axes.titlesize': 7,
        'xtick.labelsize': 6,
        'ytick.labelsize': 6,
        'legend.fontsize': 6,
    })

---

Labeling Conventions

Panel Labels

  • **Capital letters**: A, B, C, D, ...
  • Bold weight
  • Position: top-left corner of each panel

Titles

  • **Do NOT place titles inside figures** — include them in the figure caption instead
  • Remove any labels not essential for understanding the figure; explain in caption
import matplotlib.pyplot as plt
import string

def add_cell_panel_labels(fig, axes):
    """Add Cell-style uppercase bold panel labels."""
    if not hasattr(axes, '__iter__'):
        axes = [axes]

    for i, ax in enumerate(axes):
        label = string.ascii_uppercase[i]
        ax.text(-0.1, 1.1, label,
                transform=ax.transAxes,
                fontsize=
Read more
Ships withsciagent-skills

Turn your AI coding agent into a life sciences expert — 199 bioinformatics skills for Claude Code covering RNA-seq, single-cell analysis, genomics, proteomics, drug discovery, and more. Boosted BixBench from 65% to 92%. Open source.

Get the whole plugin

Other skills on sciagent-skills.