Generating Publication Ready Figures In R

v0.1.0

Transform standard ggplot2 figures into publication-quality visualizations matching Nature, Science, and other top journal styles with proper themes, colors,...

0· 305·1 current·1 all-time
MIT-0
Download zip
LicenseMIT-0 · Free to use, modify, and redistribute. No attribution required.
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Suspicious
medium confidence
!
Purpose & Capability
The skill claims a library of R functions (theme_nature, scale_color_nature, export_publication, R/publication_themes.R, etc.) and a project structure, but the published package only contains SKILL.md and README.md. There are no code files or install instructions to provide the advertised functions. A user expecting to simply call those functions will not find them in this bundle.
Instruction Scope
The SKILL.md stays within the stated purpose (transform ggplot objects, combine panels, export with ggsave, use packages like patchwork/cowplot). It does instruct operations that write files (ggsave) and to run font-import commands (extrafont::font_import()), which affect the local environment — those are expected for the purpose but worth reviewing before executing. The instructions assume local R code (sourcing publication_themes.R) that is not included.
Install Mechanism
No install spec and no binaries requested: the skill is instruction-only. This minimizes install-time risk, but combined with the missing code files, it means the skill likely intends to have the agent produce or instruct usage of code rather than provide it.
!
Credentials
The skill requests no environment variables or credentials (good). However, it references operations that interact with the user's filesystem and local R environment (sourcing local scripts, running font_import, saving files). Because the R code that implements the themes isn't present, an agent or a user may be prompted to download or source external scripts — any external sourcing should be verified. No secrets are requested.
Persistence & Privilege
The skill does not request persistent installation or elevated privileges; always is false and there are no install scripts. It does instruct actions that modify the local environment (writing files, importing fonts), but it does not attempt to modify other skills or system-wide agent settings.
What to consider before installing
This skill appears coherent in purpose (making ggplot figures publication-ready) but is instruction-only: it advertises R functions and a project structure that are not included in the published bundle. Before using: 1) don't blindly run code the agent suggests — verify whether theme_* and export_publication functions exist in your environment; 2) if the agent suggests sourcing remote R scripts, inspect their contents before sourcing; 3) be cautious with extrafont::font_import() and other commands that change system fonts or write files — they can be slow and may require permissions; 4) if you expect a ready-to-use package, ask the publisher for the missing R files or a proper install mechanism (CRAN/GitHub repo) so you can review and install safely. Providing the missing R/publication_themes.R or a link to the repository would increase confidence and could change this assessment to benign.

Like a lobster shell, security has layers — review code before you run it.

latestvk97a8f62b7a9p6hvhd24tsqa9x81xm7a

License

MIT-0
Free to use, modify, and redistribute. No attribution required.

SKILL.md

Generating Publication-Ready Figures in R

This skill specializes in transforming ordinary ggplot2 plots into professional, publication-ready figures that meet the strict standards of top-tier journals like Nature, Science, Cell, and others.

Use this skill when the user wants to:

  • Convert ggplot plots to journal-style figures
  • Apply Nature/Science publication themes to existing plots
  • Create multi-panel figures with consistent styling
  • Export figures with proper DPI, dimensions, and formats
  • Match specific journal submission guidelines
  • Create colorblind-safe and publication-quality color schemes

What This Skill Does

When activated, this skill will:

  1. Analyze existing ggplot code - Read and understand the current plot structure

  2. Apply journal themes - Add publication-quality themes including:

    • Proper font sizes and families
    • Clean axis lines and backgrounds
    • Journal-specific color palettes
    • Legend positioning and styling
  3. Optimize for submission - Ensure figures meet:

    • DPI requirements (typically 300-600 DPI)
    • Width/height specifications (single vs double column)
    • File format requirements (TIFF, PDF, EPS)
    • Color space requirements (CMYK vs RGB)
  4. Create multi-panel figures - Combine plots using:

    • patchwork for simple layouts
    • cowplot for complex compositions
    • Custom annotation and labeling
  5. Export properly - Save with correct:

    • Resolution (DPI)
    • Dimensions (inches/cm)
    • File format
    • Color profile

Example User Requests That Should Trigger This Skill

  • "Transform this ggplot to Nature journal style"
  • "Make this figure publication-ready for Science"
  • "Create a two-column figure matching Cell format"
  • "Export these plots at 600 DPI for submission"
  • "Apply a colorblind-safe palette to my plots"
  • "Combine these four plots into one publication figure"
  • "Format my scatter plot for PNAS submission"

Journal Style Guidelines

Nature Style

  • Font: Arial or Helvetica
  • Font sizes: Axis titles 7-9 pt, axis labels 6-8 pt
  • Single column: 89 mm (3.5 in) width
  • Double column: 183 mm (7.2 in) width
  • Max height: 234 mm (9.2 in)
  • Resolution: 300-600 DPI
  • Formats: TIFF, PDF, EPS (vector preferred)

Science Style

  • Font: Arial
  • Font sizes: Title 9 pt, labels 7 pt
  • Single column: 57 mm (2.25 in) width
  • Double column: 114 mm (4.5 in) width
  • Resolution: 300-600 DPI
  • Formats: TIFF, PDF, EPS

Cell Press Style

  • Font: Arial or Helvetica
  • Single column: 85 mm (3.3 in) width
  • Double column: 178 mm (7 in) width
  • Resolution: 300 DPI minimum
  • Formats: TIFF, EPS, PDF

Theme Templates Available

theme_nature()

Clean, minimalist theme matching Nature journals:

  • No gray backgrounds
  • Minimal grid lines
  • Arial font family
  • Proper axis sizing

theme_science()

Theme for Science journal submissions:

  • Compact layout
  • Clean typography
  • Optimized for smaller widths

theme_cellpress()

Cell Press journal theme:

  • Professional appearance
  • Flexible legend placement
  • Publication-ready defaults

theme_colorblind()

Colorblind-safe palette with:

  • Viridis/Colorbrewer schemes
  • High contrast ratios
  • Print-friendly colors

Color Palettes

Nature-Approved Colors

# Primary colors
nature_colors <- c(
  blue = "#3B4992",
  red = "#EE0000",
  green = "#008B45",
  purple = "#631879"
)

Colorblind-Safe Scales

  • scale_fill_viridis()
  • scale_color_okabe_ito() (Okabe-Ito palette)
  • scale_color_viridis()

Example Workflow

User: Here's my ggplot code, make it Nature-style.

# Original plot
p <- ggplot(mtcars, aes(x = wt, y = mpg, color = factor(cyl))) +
  geom_point(size = 3)

Skill transforms to:

# Publication-ready version
p <- ggplot(mtcars, aes(x = "Weight (tons)", y = "Fuel Efficiency (mpg)",
                        color = "Cylinders")) +
  geom_point(size = 2.5, shape = 16, alpha = 0.8) +
  scale_color_nature() +
  theme_nature(base_size = 8) +
  labs(title = NULL)

# Export at correct size
ggsave("figure1.pdf", p, width = 3.5, height = 3, dpi = 300,
       device = "pdf")

Multi-Panel Figures

# Combine plots with patchwork
library(patchwork)

figure1 <- (panel_a | panel_b) / (panel_c | panel_d)

# Add panel labels
figure1 <- figure1 +
  plot_annotation(tag_levels = "A",
                  tag_suffix = ")")

# Export
ggsave("figure1.pdf", figure1, width = 7, height = 6, dpi = 300)

Tools & Packages Commonly Used

PurposeR Packages
Base plottingggplot2
Themesggplot2, cowplot, hrbrthemes
Color palettesviridis, RColorBrewer, scales, ggsci
Multi-panelpatchwork, cowplot, ggpubr
Exportggplot2, ragg
Fontsextrafont, showtext
Annotationsggrepel, ggpp

Common Journal Requirements

JournalWidth (single)Width (double)Max HeightMin DPI
Nature89 mm183 mm234 mm300
Science57 mm114 mm229 mm300
Cell85 mm178 mm229 mm300
PNAS87 mm178 mm227 mm300
PLOS ONE170 mm-230 mm300
eLife183 mm-244 mm300

Quick Reference

Applying a theme

p + theme_nature()           # Nature style
p + theme_science()          # Science style
p + theme_cellpress()        # Cell Press style
p + theme_colorblind()       # Colorblind-safe

Export formats

# Vector (preferred)
ggsave("figure.pdf", ... device = "pdf")
ggsave("figure.eps", ... device = "eps")

# Raster (high DPI)
ggsave("figure.tiff", ... device = "tiff", dpi = 600)
ggsave("figure.png", ... device = "png", dpi = 300)

Common fixes

  • Text too small: Increase base_size in theme
  • Legend overlap: Use theme(legend.position = "bottom")
  • Colors not distinct: Use scale_fill_viridis()
  • Fonts not rendering: Use extrafont::font_import()

Notes

  • Always check specific journal guidelines before submission
  • Vector formats (PDF/EPS) are preferred over raster
  • Use consistent styling across all figures in a paper
  • Test colorblind accessibility with colorblindr package
  • Keep axis labels clear and concise
  • Avoid redundant chart junk (backgrounds, grid lines)

Files

2 total
Select a file
Select a file to preview.

Comments

Loading comments…