Nature Journal Figure Guidelines 2026: Everything You Need to Know

Nature Portfolio submissions are often delayed by avoidable figure-format issues. Incorrect DPI, wrong fonts, or non-standard dimensions can add weeks to your revision cycle.
This guide gives you every requirement that matters with a live Python code editor showing a Nature-compliant figure template you can run and modify instantly. Or skip the manual work and let Plotivy generate Nature-ready figures automatically.
What You Will Learn
0.Live Code Lab: Nature-Ready Figure
1.Figure Dimensions
2.Resolution (DPI) Requirements
3.Fonts and Text
4.Color Mode & Accessibility
5.File Formats
6.Common Rejection Reasons
0. Live Code Lab: Nature-Ready Figure
This code creates a fully Nature-compliant bar chart with individual data points, SEM error bars, and significance brackets - all using the exact dimensions, fonts, and line weights Nature requires.
Modify the data, add more groups, or change the figure width to double-column (7.2 inches).
Preparing preview
Running once automatically on first load
Learn by Experimenting
This is a safe playground for learning! Try changing:
- • Colors: Modify color values to see different palettes
- • Numbers: Adjust sizes, positions, or data ranges
- • Labels: Update titles, axis names, or legends
Edit the code, run it, then open the full data visualization tool to continue with your own dataset.
1. Figure Dimensions
Single Column
89 mm
3.5 inches wide. Most common for simple plots, bar charts, single-panel figures.
1.5 Column
120-136 mm
4.7-5.4 inches. Good for 2-panel figures or plots with wide legends.
Double Column
183 mm
7.2 inches wide. For multi-panel figures spanning the full page width.
Pro Tip
Maximum height is 247 mm (9.7 inches). Design your figure to be compact - tall, narrow figures waste valuable page space and are harder to read.
Skip the math: Plotivy's AI automatically sizes your figures to Nature specifications. Just select "Nature" from the journal dropdown.
2. Resolution (DPI) Requirements
Low-resolution images are an instant rejection trigger. DPI requirements vary by content type:
Line Art (Graphs)
1000+ DPI
Or better yet, submit as vector (PDF/EPS). Vector is always preferred for charts and plots.
Photos / Micrographs
300-600 DPI
Color images, confocal images, gel images, staining photos.
Combination
600 DPI
Panels mixing photos and text/graphs. Use 600 DPI as a safe default.
Learn more: See our complete guide on exporting high-resolution figures for step-by-step PNG, PDF, and SVG export instructions.
3. Fonts and Text
Font Family
Sans-serif only. Arial or Helvetica are preferred. Avoid Times New Roman and decorative fonts.
plt.rcParams["font.family"] = "Arial"Font Sizes
- Axis labels: 5-7 pt
- Axis tick labels: 5-7 pt
- Panel labels (a, b, c): 8 pt bold
- Line weight minimum: 0.25 pt
Try it now: Create a bar chart, scatter plot, or box plot with Nature-compliant fonts and styling.
4. Color Mode & Accessibility
- Submit in RGB for online publication. Avoid neon colors that are out of CMYK gamut.
- Nature now expects colorblind-accessible figures. Use blue-orange or viridis palettes instead of red-green.
- Do not rely on color alone to encode meaning - add pattern, shape, or label differences too.
Avoid common mistakes: Red-green color schemes are a top rejection reason. Read our visualization mistakes guide for more tips on colorblind accessibility.
5. File Formats
PDF / EPS
Preferred for line art. Vector output means sharp text at any zoom level.
TIFF
Required by some Nature journals for photographs. Use LZW compression to reduce file size.
PNG
Acceptable but check journal-specific guidelines. Use 600+ DPI for print quality.
Quick reference: Check our journal requirements cheat sheet for a side-by-side comparison of file format requirements across top journals.
6. Common Rejection Reasons
Low resolution raster for line art
Fix: Export as PDF/EPS instead of PNG, or use 1000+ DPI
Text too small at final print size
Fix: Use 7 pt minimum and check readability at actual printed dimensions
Non-standard figure width
Fix: Set figsize to exactly 3.5 or 7.2 inches
Missing panel labels
Fix: Add bold 8 pt labels (a, b, c) in the upper-left corner of each panel
Red-green color scheme
Fix: Use colorblind-safe palettes (blue-orange, viridis)
One-Click Nature Compliance
Select "Nature" from the journal style dropdown and Plotivy automatically sets dimensions, fonts, DPI, and exports in the correct format. No more manual rcParams or figsize calculations.
Chart gallery
Nature-ready chart templates
Start from these gallery templates - each follows Nature styling guidelines out of the box.

Scatterplot
Displays values for two variables as points on a Cartesian coordinate system.
Sample code / prompt
import matplotlib.pyplot as plt
import numpy as np
from scipy import stats
import pandas as pd
# Generate sample data
np.random.seed(42)
n_samples = 200
height = np.random.normal(170, 8, n_samples)
weight = height * 0.6 + np.random.normal(0, 8, n_samples) - 50
Bar Chart
Compares categorical data using rectangular bars with heights proportional to values.
Sample code / prompt
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
from scipy import stats
# Generate performance scores for 5 treatment groups
np.random.seed(42)
groups = ['Control', 'Treatment A', 'Treatment B', 'Treatment C', 'Treatment D']
n_samples = 30
Error Bars
Graphical representations of the variability of data indicating error or uncertainty in measurements.
Sample code / prompt
import numpy as np
import matplotlib.pyplot as plt
from scipy import stats
# Generate bacterial growth data with replicates
np.random.seed(42)
time_points = np.array([0, 4, 8, 12, 18, 24])
mean_values = np.array([10, 25, 80, 250, 600, 800])
# Generate 5 replicates per time point with noise.png&w=1920&q=75)
Box and Whisker Plot
Displays data distribution using quartiles, median, and outliers in a standardized format.
Sample code / prompt
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
from scipy import stats
# Generate gene expression data for 4 genotypes
np.random.seed(42)
genotypes = ['WT', 'KO1', 'KO2', 'Mutant']
n_per_group = 20Related Guides
Stop Worrying About Figure Formatting
Upload your data, select Nature style, and get a compliant figure in seconds. No more revision delays, no more rejection for technical issues.
Found this helpful? Share it with your network.
Experimental Physicist & Photonics Researcher
Hands-on experience in silicon photonics, semiconductor fabrication (DRIE/ICP-RIE), optical simulation, and data-driven analysis. Built Plotivy to help researchers focus on discoveries instead of data struggles.
More about the authorVisualize your own data
Apply the techniques from this article to your own datasets. Upload CSV, Excel, or paste data directly.