Distill drawing experience
Recurring visual components become parameterized Python functions that generate DrawIO XML.
ECCV 2026
1 Lancaster University, 2 University of Electronic Science and Technology of China, 3 Adobe Research
Method illustrations carry the logic of a scientific paper, but creating them still takes hours or days of careful composition.
FigAgent mirrors how human authors work: study strong examples, preserve useful visual components as reusable drawing middlewares, adapt those middlewares as visual requirements evolve, and try multiple drawing paths before committing to a final composition.
Recurring visual components become parameterized Python functions that generate DrawIO XML.
Selection, mutation, and crossover extend middlewares to cover newly emerging concepts.
Candidate drawings are explored and evaluated for their long-term effect on the complete figure.
Method
The framework separates repository construction from paper-specific illustration generation while keeping the final artifact editable.
Builds the experience dataset and maintains the drawing middleware repository.
Extracts a research theme, core concepts, and their relationships as a concept graph.
Retrieves, parameterizes, and orchestrates middlewares on the DrawIO canvas.
Produces revision feedback and quality scores for candidate canvas states.
Adds connections, tunes spacing, and harmonizes the final visual style.
Run the three Python middlewares and inspect how creation, mutation, and crossover change the same visual component.
Gallery
Compare FigAgent with representative baselines.
The citation will be updated when the official proceedings metadata becomes available.
@inproceedings{li2026figagent,
title = {Automatic Method Illustration Generation for AI Scientific Papers via Drawing Middleware Creation, Evolution, and Orchestration},
author = {Li, Zhuoling and Zhang, Jiarui and Hu, Ping and Kuen, Jason and Gu, Jiuxiang and Rahmani, Hossein and Liu, Jun},
booktitle = {European Conference on Computer Vision (ECCV)},
year = {2026},
url = {https://arxiv.org/abs/2603.29590}
}