D2 XY Upload Image
Drag and drop a stack of reference images straight into an XY plot
- image_count
- status
- LIST
- x / y_list
- image_count
Some XY plots you want to run over a set of images - a dozen reference shots, a style study, a character sheet. The manual way is loading each one and pasting its path in. D2 XY Upload Image makes that a drag-and-drop operation: drop a pile of files onto the node, they land in a temporary folder, and the node hands you the list of paths for your XY plot to iterate over.
It's a sibling of D2 XY Folder Images (which scans a folder you already have on disk). This one is for the files you have open in front of you - grab them from a browser, from Discord, wherever - and want to test without moving them into a project folder first.
The inputs and outputs
image_list- a text field that gets populated with the uploaded file paths (newline-separated). You can also paste paths in by hand if you prefer.image_count/status- informational displays showing how many images are queued.
Outputs:
LIST- the file paths as an array.x / y_list- the same paths, newline-joined, ready for an XY Plot.image_count- the number of images, as an INT.
How to use it
Drag and drop your images onto the node - they upload to a temporary directory and the paths appear in the text area. Wire x / y_list into the x_list of D2 XY Plot Easy, set x_type to STRING, and connect x_other to a loader (the pack's D2 Load Image or a normal one) so each cell loads that cell's image. The pack documents this as "designed to be connected to D2 Load Image via D2 XY Plot Easy," which is exactly the intended flow.
Because the images land in a temp folder, D2 Load Image's Combo input won't list them - feed the path in via the string connection instead, which is what the STRING axis gives you.
Installing
Part of the D2-nodes-ComfyUI pack - install the pack, not the node.
- ComfyUI Manager → search "D2-nodes-ComfyUI" → Install → restart.
- Or
cd ComfyUI/custom_nodes && git clone https://github.com/da2el-ai/D2-nodes-ComfyUIand restart.
Dependencies: piexif, charset-normalizer - nothing heavy, no model downloads. Pack gotcha: v32.0.0+ requires the newer ComfyUI V3 schema; older ComfyUI → pre-32.0.0 release.
Where people get burned
The image_list text field is the source of truth - hand-edit it to trim the set before you run the plot (same pattern as D2 XY Model List). And remember the images are in a temporary location: the node works as long as the workflow runs, but don't count on the temp files surviving a reboot. For a permanent set you want to reuse across sessions, D2 XY Folder Images pointing at a real folder is the more durable choice. Also watch the axis type - STRING, not INT/FLOAT, or the paths won't arrive as text.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| image_list | STRING | — | |
| image_countopt | D2_SIMPLE_TEXT | — | |
| statusopt | D2_SIMPLE_TEXT | — |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| LIST | LIST | — |
| x / y_list | STRING | — |
| image_count | INT | — |