← Về thư mục
📄 / / profiles / r-and-d / raw_evidence / scientific-agent-skills / skills / scientific-visualization / references / publication_guidelines.md

Publication Figure Principles

Reviewed 2026-07-23. These are general scientific-communication principles, not publisher requirements. Date-sensitive rules belong in journal_requirements.md. Source IDs resolve in sources.md.

Preserve evidence before styling

Keep three layers separate:

  1. Raw/source data: immutable originals, acquisition metadata, exclusions, and missing-value codes.
  2. Transformation record: executable code or a machine-readable log of filtering, normalization, aggregation, statistical estimation, image processing, and random seeds.
  3. Presentation output: the figure and an export manifest recording dimensions, format, package versions, and source references.

Do not overwrite raw images or tabular data. Keep native-resolution images. Upsampling changes pixel count, not information; PLOS, Science, Nature, Cell Press, Elsevier, and IEEE explicitly warn against treating it as improved quality [PLOS-FIG] [SCIENCE-REVISED] [NATURE-FINAL] [CELL-FIG] [ELSEVIER-SIZE] [IEEE-SIZE].

For experimental/observational images:

The bundled exporter can write a provenance manifest, but it cannot confirm that supplied provenance is complete.

Avoid visual deception

Baselines and context

Uncertainty and raw observations

Missing, excluded, and censored data

Area, volume, and 3D encodings

Logarithms and other transforms

Binning, smoothing, and aggregation

Normalization and color limits

Dual axes

Prefer aligned panels or normalized/common-unit displays. Dual y-axes can make unrelated series appear correlated because each range can be tuned independently. If unavoidable:

Image contrast and channels

Encoding and color

Match the palette to data:

Use hue consistently across a manuscript. Avoid rainbow maps for ordered data unless there is a documented scientific reason and the map has been evaluated for perceptual artifacts. Paul Tol explains why ordinary rainbow schemes create false transitions and fail for some color-vision conditions [TOL].

Color is not a sufficient encoding:

See color_palettes.md and run scripts/palette_audit.py.

Accessibility

WCAG 2.2 is a web-content standard, not a journal-print specification. It provides useful targets for figures delivered on the web [WCAG22]:

For web/interactive figures also provide:

Passing a palette ratio audit does not prove WCAG conformance; applicability depends on rendered context and alternatives.

Layout, typography, and annotation

Static, vector, raster, and interactive output

Vector

PDF/SVG/EPS are useful for text and line art, but a vector container may include rasterized artists. DPI still controls those raster elements [MPL-SAVE]. Dense scatter plots can be selectively rasterized to control file size while preserving vector text/axes.

For Matplotlib:

import matplotlib as mpl

mpl.rcParams["pdf.fonttype"] = 42
mpl.rcParams["ps.fonttype"] = 42
mpl.rcParams["svg.fonttype"] = "none"

PDF/PS Type 42 embeds TrueType fonts. svg.fonttype="none" leaves text as text and therefore depends on font availability; svg.fonttype="path" trades editability/searchability for appearance portability [MPL-STYLE]. Inspect the delivered file rather than assuming font behavior.

Raster

Required pixel width is:

pixels = final width (inches) × target pixels per inch

Embedded DPI metadata alone does not add detail. TIFF/PNG are lossless choices; JPEG can be accepted by some publishers for photographs but is a poor choice for line art or text because it is lossy. Preserve original bit depth and color profile when scientifically important.

Transparency can reveal an unintended background or change apparent contrast. Matplotlib's transparent=True makes axes patches transparent and, unless explicitly overridden, the figure patch too [MPL-SAVE]. Prefer an explicit opaque background for submission unless the destination requires transparency.

Plotly

Final scientific review