夜半-LoRA XYZ 对比图
Your Krea 2 test renders, glued together into one labeled grid
- images
- xyz_grid
Batch-testing LoRAs is only useful if you can actually read the results, and staring at fifty separate output images in a long strip is how you lose the thread halfway through. YebanLoraTestXYZGrid (夜半-LoRA XYZ 对比图) is the finishing move of the Yeban Krea2 LoRA Matrix pack: it takes your batch of images, slaps a label under each one, and arranges them into a single dark-canvas grid you can eyeball as one image.
What it does
All the layout inputs take lists (images, cell_labels, columns, cells_per_grid), which is the ComfyUI way of saying "I expect a batch." It stitches every input image onto a #151515 canvas, pads each cell with a label band, and draws white text under the image. Label text is drawn with a CJK-capable font (msyh.ttc, simhei, or NotoSansCJK) when one is found on the system - which matters, because the labels the pack's test controller produces are Chinese (构图形体, 主体特征, …) and a default font renders those as tofu boxes.
The layout rules are where the node gets opinionated. layout_mode offers four:
- 自动:单权重网格,多权重分列 (default) - one grid when it's a single-strength sweep, split by weight columns when there are multiple strengths
- 按权重分列 - force column-per-weight
- 自动网格 - pick columns as the square root of the cell count
- 固定列数 - use
fixed_columns(default 4)
label_height (default 44) sizes the label band, and columns / cells_per_grid are forced inputs - you can't type them by hand, they must be wired in. That's a deliberate design choice, and it's how this node is meant to work: it's the terminal of a pipeline that already knows its own grid shape.
Wiring it up
Two natural sources feed it, both from this pack:
- From the test controller: batch-sample its
models, then wire the images intoimages,case_labelsintocell_labels, andcolumns+cells_per_gridstraight from the controller's matching outputs. The controller computes those specifically so the grid lands in the right shape (six columns when area-isolation cases are present, so each LoRA's six regions read down a column). - From the strength-sweep node:
YebanKrea2LoraTestMatrixgives youcell_labelsandstrength_count; pick a column count and let the default layout split by strength.
The single output, xyz_grid (an IMAGE), is one finished tensor you can save, preview, or push into an image-save node.
Install
Standard pack install, it's not standalone:
cd ComfyUI/custom_nodes
git clone https://github.com/wsq194/yeban-krea2-lora-matrix.git Yeban_Krea2_Lora_Matrix
or install "Yeban Krea2 LoRA Matrix" from ComfyUI Manager and restart. ComfyUI ≥ 0.27.0, frontend ≥ 1.45.20, no extra Python deps. It does need Pillow for the drawing, which ComfyUI ships anyway. The images input has to actually arrive as a list - if you feed it a single image tensor instead of a batch, it still works (it flattens frames), but you'll get a one-cell grid, which is probably not the comparison you wanted.
One honest caveat: this is a grid assembler, not a fancy XY-plot tool. If you're used to nodes that also handle sub-prompts, dynamic resolution or data-driven axes, those lives elsewhere. This one takes finished images and labels and makes them legible - which, after a long Krea 2 tuning session, is the part that actually matters.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| images | IMAGE | — | |
| cell_labels | STRING | — | |
| columns | INT | 1–16 | — |
| cells_per_grid | INT | 1–16 | — |
| label_height | INT | 441–120 | — |
| layout_mode | COMBO | 4 options: 自动:单权重网格,多权重分列, 按权重分列, 自动网格, 固定列数 | |
| fixed_columns | INT | 41–16 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| xyz_grid | IMAGE | — |