ComfyUI Node

Image Plot

Turn a batch into a contact sheet you can actually inspect

By 1hew·Created about a year ago·Updated 8 days ago· 33
Image Plot
  • image
  • image
layouthorizontal
spacing10
grid_columns2
background_color1.0

You generated 30 LoRA test images and they're sitting in one batch. ComfyUI's preview shows you one at a time. Clicking through 30 thumbnails to compare styles is the opposite of productive. Image Plot is the "plot" in the matplotlib sense: it takes that batch and arranges every frame on a single canvas - horizontal strip, vertical strip, or a proper grid - so you can see the whole run at a glance.

That's the whole job, and it's a genuinely useful one. Contact sheets, seed comparisons, prompt sweeps, multi-model side-by-sides: anything where the point is seeing it all at once.

How it works

The node converts each batch frame to a PIL image, arranges them per layout, and returns one composed image. Simple, but the details matter:

  • layout - horizontal, vertical, or grid.
  • spacing - pixels between frames (0–1000).
  • grid_columns - how many columns in grid mode (2 is the default, which is the right default for before/after work).
  • background_color - fills the canvas and the gaps between frames. Default white (1.0), accepts hex, r,g,b, names - and for RGBA output, transparent/none gives you a genuinely transparent canvas.

Mixed-size frames are normalized to the smallest common size via bilinear resize, so a grid of different resolutions still aligns cleanly. If any input frame carries alpha, the canvas goes RGBA and transparency is preserved - and importantly, the background color only fills the empty areas, never overwrites alpha already inside your images.

There's also a video-collection mode: if you pass a Python list of batches, it builds a frame-aligned collage across the sequences, one combined image per frame index. That's for comparing multiple video sequences side by side, and it's a neat trick most "arrange images" nodes don't have.

Install

It's in ComfyUI-1hewNodes:

cd ComfyUI/custom_nodes
git clone https://github.com/1hew/ComfyUI-1hewNodes

Restart ComfyUI. Pure image compositing, no models. Current ComfyUI expected (v3 node API).

Where it fits

Use Image Plot when you have one batch and want an overview. Use the pack's Multi Image Stitch when you have separate images and want a deliberate composition with per-gap control - the two complement each other. A common loop: decode video to frames → Image Plot in grid mode → eyeball the whole clip in one render.

Common issues

  • Frames look squished - mixed resolutions get normalized to the smallest common size. If your source frames vary a lot, normalize them before this node for predictable results.
  • grid_columns does nothing - it's only read in grid mode. In horizontal/vertical it's ignored; that's expected, not a bug.
  • Background won't go transparent - transparency keywords only apply when the output is RGBA. With an all-RGB input you get an opaque canvas, full stop.

It's a simple node and it knows it's simple - no aspect-ratio gymnastics, no cropping options. That's fine. It exists so you stop clicking through batches one at a time.

Category1hewNodes/image

Inputs (5)

NameTypeDefaultDescription
imageIMAGE
layoutCOMBOhorizontal3 options: horizontal, vertical, grid
spacingINT100–1000
grid_columnsINT21–100
background_colorSTRING1.0

Outputs (1)

NameTypeDescription
imageIMAGE