| name | latex-posters |
| description | "Create professional research posters in LaTeX using beamerposter, tikzposter, or baposter. Support for conference presentations, academic posters, and scientific communication. Includes layout design, color schemes, multi-column formats, figure integration, and poster-specific best practices for visual communication." |
| allowed-tools | Read Write Edit Bash |
LaTeX Research Posters
Overview
Research posters are a critical medium for scientific communication at conferences, symposia, and academic events. This skill provides comprehensive guidance for creating professional, visually appealing research posters using LaTeX packages. Generate publication-quality posters with proper layout, typography, color schemes, and visual hierarchy.
When to Use This Skill
This skill should be used when:
- Creating research posters for conferences, symposia, or poster sessions
- Designing academic posters for university events or thesis defenses
- Preparing visual summaries of research for public engagement
- Converting scientific papers into poster format
- Creating template posters for research groups or departments
- Designing posters that comply with specific conference size requirements (A0, A1, 36ร48", etc.)
- Building posters with complex multi-column layouts
- Integrating figures, tables, equations, and citations in poster format
AI-Powered Visual Element Generation
STANDARD WORKFLOW: Generate ALL major visual elements using AI before creating the LaTeX poster.
This is the recommended approach for creating visually compelling posters:
- Plan all visual elements needed (title, intro, methods, results, conclusions)
- Generate each element using scientific-schematics or Nano Banana Pro
- Assemble generated images in the LaTeX template
- Add text content around the visuals
Target: 60-70% of poster area should be AI-generated visuals, 30-40% text.
CRITICAL: Preventing Content Overflow
โ ๏ธ POSTERS MUST NOT HAVE TEXT OR CONTENT CUT OFF AT EDGES.
Common Overflow Problems:
- Title/footer text extending beyond page boundaries
- Too many sections crammed into available space
- Figures placed too close to edges
- Text blocks exceeding column widths
Prevention Rules:
1. Limit Content Sections (MAXIMUM 5-6 sections for A0):
โ
GOOD - 5 sections with room to breathe:
- Title/Header
- Introduction/Problem
- Methods
- Results (1-2 key findings)
- Conclusions
โ BAD - 8+ sections crammed together:
- Overview, Introduction, Background, Methods,
- Results 1, Results 2, Discussion, Conclusions, Future Work
2. Set Safe Margins in LaTeX:
% tikzposter - add generous margins
\documentclass[25pt, a0paper, portrait, margin=25mm]{tikzposter}
% baposter - ensure content doesn't touch edges
\begin{poster}{
columns=3,
colspacing=2em, % Space between columns
headerheight=0.1\textheight, % Smaller header
% Leave space at bottom
}
3. Figure Sizing - Never 100% Width:
% Leave margins around figures
\includegraphics[width=0.85\linewidth]{figure.png} % NOT 1.0\linewidth
4. Check for Overflow Before Printing:
pdflatex poster.tex
grep -i "overfull" poster.log
5. Word Count Limits:
- A0 poster: 300-800 words MAXIMUM
- Per section: 50-100 words maximum
- If you have more content: Cut it or make a handout
CRITICAL: Poster-Size Font Requirements
โ ๏ธ ALL text within AI-generated visualizations MUST be poster-readable.
When generating graphics for posters, you MUST include font size specifications in EVERY prompt. Poster graphics are viewed from 4-6 feet away, so text must be LARGE.
โ ๏ธ COMMON PROBLEM: Content Overflow and Density
The #1 issue with AI-generated poster graphics is TOO MUCH CONTENT. This causes:
- Text overflow beyond boundaries
- Unreadable small fonts
- Cluttered, overwhelming visuals
- Poor white space usage
SOLUTION: Generate SIMPLE graphics with MINIMAL content.
MANDATORY prompt requirements for EVERY poster graphic:
POSTER FORMAT REQUIREMENTS (STRICTLY ENFORCE):
- ABSOLUTE MAXIMUM 3-4 elements per graphic (3 is ideal)
- ABSOLUTE MAXIMUM 10 words total in the entire graphic
- NO complex workflows with 5+ steps (split into 2-3 simple graphics instead)
- NO multi-level nested diagrams (flatten to single level)
- NO case studies with multiple sub-sections (one key point per case)
- ALL text GIANT BOLD (80pt+ for labels, 120pt+ for key numbers)
- High contrast ONLY (dark on white OR white on dark, NO gradients with text)
- MANDATORY 50% white space minimum (half the graphic should be empty)
- Thick lines only (5px+ minimum), large icons (200px+ minimum)
- ONE SINGLE MESSAGE per graphic (not 3 related messages)
โ ๏ธ BEFORE GENERATING: Review your prompt and count elements
- If your description has 5+ items โ STOP. Split into multiple graphics
- If your workflow has 5+ stages โ STOP. Show only 3-4 high-level steps
- If your comparison has 4+ methods โ STOP. Show only top 3 or Our vs Best Baseline
Content limits per graphic type (STRICT):
| Graphic Type | Max Elements | Max Words | Reject If | Good Example |
|---|
| Flowchart | 3-4 boxes MAX | 8 words | 5+ stages, nested steps | "DISCOVER โ VALIDATE โ APPROVE" (3 words) |
| Key findings | 3 items MAX | 9 words | 4+ metrics, paragraphs | "95% ACCURATE" "2X FASTER" "FDA READY" (6 words) |
| Comparison chart | 3 bars MAX | 6 words | 4+ methods, legend text | "OURS: 95%" "BEST: 85%" (4 words) |
| Case study | 1 case, 3 elements | 6 words | Multiple cases, substories | Logo + "18 MONTHS" + "to discovery" (2 words) |
| Timeline | 3-4 points MAX | 8 words | Year-by-year detail | "2020 START" "2022 TRIAL" "2024 APPROVED" (6 words) |
Example - WRONG (7-stage workflow - TOO COMPLEX):
python scripts/generate_schematic.py "Drug discovery workflow showing: Stage 1 Target Identification, Stage 2 Molecular Synthesis, Stage 3 Virtual Screening, Stage 4 AI Lead Optimization, Stage 5 Clinical Trial Design, Stage 6 FDA Approval. Include success metrics, timelines, and validation steps for each stage." -o figures/workflow.png
Example - CORRECT (simplified to 3 key stages):
python scripts/generate_schematic.py "POSTER FORMAT for A0. ULTRA-SIMPLE 3-box workflow: 'DISCOVER' โ 'VALIDATE' โ 'APPROVE'. Each word in GIANT bold (120pt+). Thick arrows (10px). 60% white space. NO substeps, NO details. 3 words total. Readable from 10 feet." -o figures/workflow_overview.png
Example - WRONG (complex case studies with multiple sections):
python scripts/generate_schematic.py "Case studies: Insilico Medicine (drug candidate, discovery time, clinical trials), Recursion Pharma (platform, methodology, results), Exscientia (drug candidates, FDA status, timeline). Include company logos, metrics, and outcomes." -o figures/cases.png
Example - CORRECT (one case study, one key metric):
python scripts/generate_schematic.py "POSTER FORMAT for A0. ONE case study card: Company logo (large), '18 MONTHS' in GIANT text (150pt), 'to discovery' below (60pt). 3 elements total: logo + number + caption. 50% white space. Readable from 10 feet." -o figures/case_single.png
Example - WRONG (key findings too complex):
python scripts/generate_schematic.py "Key findings showing 8 metrics: accuracy 95%, precision 92%, recall 94%, F1 0.93, AUC 0.97, training time 2.3 hours, inference 50ms, model size 145MB with comparison to 5 baseline methods" -o figures/findings.png
Example - CORRECT (key findings simple):
python scripts/generate_schematic.py "POSTER FORMAT for A0. KEY FINDINGS with ONLY 3 large cards. Card 1: '95%' in GIANT text (120pt) with 'ACCURACY' below (48pt). Card 2: '2X' in GIANT text with 'FASTER' below. Card 3: checkmark icon with 'VALIDATED' in large text. 50% white space. High contrast colors. NO other text or details." -o figures/findings.png
Font size reference for poster prompts:
| Element | Minimum Size | Prompt Keywords |
|---|
| Main numbers/metrics | 72pt+ | "huge", "very large", "giant", "poster-size" |
| Section titles | 60pt+ | "large bold", "prominent" |
| Labels/captions | 36pt+ | "readable from 6 feet", "clear labels" |
| Body text | 24pt+ | "poster-readable", "large text" |
Always include in prompts:
- "POSTER FORMAT" or "for A0 poster" or "readable from 6 feet"
- "VERY LARGE TEXT" or "huge bold fonts"
- Specific text that should appear (so it's baked into the image)
- "minimal text, maximum impact"
- "high contrast" for readability
- "generous margins" and "no text near edges"
CRITICAL: AI-Generated Graphic Sizing
โ ๏ธ Each AI-generated graphic should focus on ONE concept with MINIMAL content.
Problem: Generating complex diagrams with many elements leads to small text.
Solution: Generate SIMPLE graphics with FEW elements and LARGE text.
Example - WRONG (too complex, text will be small):
python scripts/generate_schematic.py "Complete ML pipeline showing data collection,
preprocessing with 5 steps, feature engineering with 8 techniques, model training
with hyperparameter tuning, validation with cross-validation, and deployment with
monitoring. Include all labels and descriptions." -o figures/pipeline.png
Example - CORRECT (simple, focused, large text):
python scripts/generate_schematic.py "POSTER FORMAT for A0: Simple 4-step pipeline.
Four large boxes: DATA โ PROCESS โ MODEL โ RESULTS.
GIANT labels (80pt+), thick arrows, lots of white space.
Only 4 words total. Readable from 8 feet." -o figures/overview.png
python scripts/generate_schematic.py "POSTER FORMAT for A0: Single key metric display.
Giant '95%' text (150pt+) with 'ACCURACY' below (60pt+).
Checkmark icon. Minimal design, high contrast.
Readable from 10 feet." -o figures/accuracy.png
Rules for AI-generated poster graphics:
| Rule | Limit | Reason |
|---|
| Elements per graphic | 3-5 maximum | More elements = smaller text |
| Words per graphic | 10-15 maximum | Minimal text = larger fonts |
| Flowchart steps | 4-5 maximum | Keeps labels readable |
| Chart categories | 3-4 maximum | Prevents crowding |
| Nested levels | 1-2 maximum | Avoids complexity |
Split complex content into multiple simple graphics:
Instead of 1 complex diagram with 12 elements:
โ Create 3 simple diagrams with 4 elements each
โ Each graphic can have LARGER text
โ Arrange in poster with clear visual flow
Step 0: MANDATORY Pre-Generation Review (DO THIS FIRST)
โ ๏ธ BEFORE generating ANY graphics, review your content plan:
For EACH planned graphic, ask these questions:
-
Element count: Can I describe this in 3-4 items or less?
- โ NO โ Simplify or split into multiple graphics
- โ
YES โ Continue
-
Complexity check: Is this a multi-stage workflow (5+ steps) or nested diagram?
- โ YES โ Flatten to 3-4 high-level steps only
- โ
NO โ Continue
-
Word count: Can I describe all text in 10 words or less?
- โ NO โ Cut text, use single-word labels
- โ
YES โ Continue
-
Message clarity: Does this graphic convey ONE clear message?
- โ NO โ Split into multiple focused graphics
- โ
YES โ Continue to generation
Common patterns that ALWAYS fail (reject these):
- "Show stages 1 through 7..." โ Split into high-level overview (3 stages) + detail graphics
- "Multiple case studies..." โ One case per graphic
- "Timeline from 2015 to 2024 with annual milestones..." โ Show only 3-4 key years
- "Comparison of 6 methods..." โ Show only top 3 or Our method vs Best baseline
- "Architecture with all layers and connections..." โ High-level only (3-4 components)
Step 1: Plan Your Poster Elements
After passing the pre-generation review, identify visual elements needed:
- Title Block - Stylized title with institutional branding (optional - can be LaTeX text)
- Introduction Graphic - Conceptual overview (3 elements max)
- Methods Diagram - High-level workflow (3-4 steps max)
- Results Figures - Key findings (3 metrics max per figure, may need 2-3 separate figures)
- Conclusion Graphic - Summary visual (3 takeaways max)
- Supplementary Icons - Simple icons, QR codes, logos (minimal)
Step 2: Generate Each Element (After Pre-Generation Review)
โ ๏ธ CRITICAL: Review Step 0 checklist before proceeding.
Use the appropriate tool for each element type:
For Schematics and Diagrams (scientific-schematics):
mkdir -p figures
python scripts/generate_schematic.py "POSTER FORMAT for A0. ULTRA-SIMPLE 3-box workflow: 'DISCOVER' (120pt bold) โ 'VALIDATE' (120pt bold) โ 'APPROVE' (120pt bold). Thick arrows (10px). 60% white space. ONLY these 3 words. NO substeps. Readable from 12 feet." -o figures/workflow_simple.png
python scripts/generate_schematic.py "POSTER FORMAT for A0. ULTRA-SIMPLE 3-component stack: 'DATA' box (120pt) โ 'AI MODEL' box (120pt) โ 'PREDICTION' box (120pt). Thick vertical arrows. 60% white space. 3 words only. Readable from 12 feet." -o figures/architecture.png
python scripts/generate_schematic.py "POSTER FORMAT for A0. Timeline with ONLY 3 points: '2018' + icon, '2021' + icon, '2024' + icon. GIANT years (120pt). Large icons. 60% white space. NO connecting lines or details. Readable from 12 feet." -o figures/timeline.png
python scripts/generate_schematic.py "POSTER FORMAT for A0. ONE case study: Large logo + '18 MONTHS' (150pt bold) + 'to discovery' (60pt). 3 elements total. 60% white space. Readable from 12 feet." -o figures/case1.png
For Stylized Blocks and Graphics (Nano Banana Pro):
python scripts/generate_schematic.py "POSTER FORMAT for A0. Title block: 'ML FOR DRUG DISCOVERY' in HUGE bold text (120pt+). Dark blue background. ONE subtle icon. NO other text. 40% white space. Readable from 15 feet." -o figures/title_block.png
python scripts/generate_schematic.py "POSTER FORMAT for A0. SIMPLE problem visual with ONLY 3 icons: drug icon, arrow, target icon. ONE label per icon (80pt+). 50% white space. NO detailed text. Readable from 8 feet." -o figures/intro_visual.png
python scripts/generate_schematic.py "POSTER FORMAT for A0. KEY FINDINGS with EXACTLY 3 cards only. Card 1: '95%' (150pt font) with 'ACCURACY' (60pt). Card 2: '2X' (150pt) with 'FASTER' (60pt). Card 3: checkmark icon with 'READY' (60pt). 50% white space. NO other text. Readable from 10 feet." -o figures/conclusions_graphic.png
python scripts/generate_schematic.py "POSTER FORMAT for A0. SIMPLE visual with ONLY 3 large icons in a row: problem icon โ challenge icon โ impact icon. ONE word label each (80pt+). 50% white space. NO detailed text. Readable from 8 feet." -o figures/background_visual.png
For Data Visualizations - SIMPLE, 3 bars max:
python scripts/generate_schematic.py "POSTER FORMAT for A0. SIMPLE bar chart with ONLY 3 bars: BASELINE (70%), EXISTING (85%), OURS (95%). GIANT percentage labels ON the bars (100pt+). NO axis labels, NO legend, NO gridlines. Our bar highlighted in different color. 40% white space. Readable from 8 feet." -o figures/comparison_chart.png
Step 2b: MANDATORY Post-Generation Review (Before Assembly)
โ ๏ธ CRITICAL: Review EVERY generated graphic before adding to poster.
For each generated figure, open at 25% zoom and check:
-
โ
PASS criteria (all must be true):
- Can read ALL text clearly at 25% zoom
- Count elements: 3-4 or fewer
- White space: 50%+ of image is empty
- Simple enough to understand in 2 seconds
- NOT a complex workflow with 5+ stages
- NOT multiple nested sections
-
โ FAIL criteria (regenerate if ANY are true):
- Text is small or hard to read at 25% zoom โ REGENERATE with "150pt+" fonts
- More than 4 elements โ REGENERATE with "ONLY 3 elements"
- Less than 50% white space โ REGENERATE with "60% white space"
- Complex multi-stage workflow โ SPLIT into 2-3 simple graphics
- Multiple case studies cramped together โ SPLIT into separate graphics
- Takes more than 3 seconds to understand โ SIMPLIFY and regenerate
Common failures and fixes:
- "7-stage workflow with tiny text" โ Regenerate as "3 high-level stages only"
- "3 case studies in one graphic" โ Generate 3 separate simple graphics
- "Timeline with 8 years" โ Regenerate with "ONLY 3 key milestones"
- "Comparison of 5 methods" โ Regenerate with "ONLY Our method vs Best baseline (2 bars)"
DO NOT PROCEED to assembly if ANY graphic fails the checks above.
Step 3: Assemble in LaTeX Template
After all figures pass the post-generation review, include them in your poster template:
tikzposter example:
\documentclass[25pt, a0paper, portrait]{tikzposter}
\begin{document}
\maketitle
\begin{columns}
\column{0.5}
\block{Introduction}{
\centering
\includegraphics[width=0.85\linewidth]{figures/intro_visual.png}
\vspace{0.5em}
Brief context text here (2-3 sentences max).
}
\block{Methods}{
\centering
\includegraphics[width=0.9\linewidth]{figures/methods_flowchart.png}
}
\column{0.5}
\block{Results}{
\begin{minipage}{0.48\linewidth}
\centering
\includegraphics[width=\linewidth]{figures/result_1.png}
\end{minipage}
\hfill
\begin{minipage}{0.48\linewidth}
\centering
\includegraphics[width=\linewidth]{figures/result_2.png}
\end{minipage}
\vspace{0.5em}
Key findings in 3-4 bullet points.
}
\block{Conclusions}{
\centering
\includegraphics[width=0.8\linewidth]{figures/conclusions_graphic.png}
}
\end{columns}
\end{document}
baposter example:
\headerbox{Methods}{name=methods,column=0,row=0}{
\centering
\includegraphics[width=0.95\linewidth]{figures/methods_flowchart.png}
}
\headerbox{Results}{name=results,column=1,row=0}{
\includegraphics[width=\linewidth]{figures/comparison_chart.png}
\vspace{0.3em}
Key finding: Our method achieves 92% accuracy.
}
Example: Complete Poster Generation Workflow
Full workflow with ALL quality checks:
mkdir -p figures
python scripts/generate_schematic.py "POSTER FORMAT for A0. ULTRA-SIMPLE 3-box workflow: 'DISCOVER' โ 'VALIDATE' โ 'APPROVE'. Each word 120pt+ bold. Thick arrows (10px). 60% white space. ONLY 3 words total. Readable from 12 feet." -o figures/workflow.png
python scripts/generate_schematic.py "POSTER FORMAT for A0. ONE case: Company logo + '18 MONTHS' (150pt bold) + 'to drug discovery' (60pt). 3 elements only. 60% white space. Readable from 12 feet." -o figures/case1.png
python scripts/generate_schematic.py "POSTER FORMAT for A0. ONE case: Company logo + '95% SUCCESS' (150pt bold) + 'in trials' (60pt). 3 elements only. 60% white space." -o figures/case2.png
python scripts/generate_schematic.py "POSTER FORMAT for A0. ONE case: Company logo + 'FDA APPROVED' (150pt bold) + '2024' (60pt). 3 elements only. 60% white space." -o figures/case3.png
python scripts/generate_schematic.py "POSTER FORMAT for A0. ONLY 3 years: '2018' (150pt) + icon, '2021' (150pt) + icon, '2024' (150pt) + icon. Large icons. 60% white space. NO lines or details. Readable from 12 feet." -o figures/timeline.png
python scripts/generate_schematic.py "POSTER FORMAT for A0. TWO bars only: 'BASELINE 70%' and 'OURS 95%' (highlighted). GIANT percentages (150pt) ON bars. NO axis, NO legend. 60% white space. Readable from 12 feet." -o figures/results.png
pdflatex poster.tex
grep "Overfull" poster.log
If ANY graphic fails Step 2b review:
- Too many elements โ Regenerate with "ONLY 3 elements"
- Small text โ Regenerate with "150pt+" or "GIANT BOLD (150pt+)"
- Cluttered โ Regenerate with "60% white space" and "ULTRA-SIMPLE"
- Complex workflow โ SPLIT into multiple simple 3-element graphics
Visual Element Guidelines
โ ๏ธ CRITICAL: Each graphic must have ONE message and MAXIMUM 3-4 elements.
ABSOLUTE LIMITS - These are NOT guidelines, these are HARD LIMITS:
- MAXIMUM 3-4 elements per graphic (3 is ideal)
- MAXIMUM 10 words total per graphic
- MINIMUM 50% white space (60% is better)
- MINIMUM 120pt for key numbers/metrics
- MINIMUM 80pt for labels
For each poster section - STRICT requirements:
| Section | Max Elements | Max Words | Example Prompt (REQUIRED PATTERN) |
|---|
| Introduction | 3 icons | 6 words | "POSTER FORMAT for A0: ULTRA-SIMPLE 3 icons: [icon1] [icon2] [icon3]. ONE WORD labels (100pt bold). 60% white space. 3 words total." |
| Methods | 3 boxes | 6 words | "POSTER FORMAT for A0: UL |