Plot Coordinates
Turn a coordinate list into an actual picture you can check
- images
- width
- height
- bbox_width
- bbox_height
If you've ever built a coordinate path by hand and had no way to tell whether it looked right before burning a full generation on it, this is the fix. Plot Coordinates takes the same coordinates string format used by this pack's Interpolate Coords and renders it out as an actual sequence of images via Matplotlib - dots, a bounding box at each point, and a title, so you can eyeball your path instead of reading raw JSON and hoping.
It's filed under KJNodes/experimental alongside Interpolate Coords, and honestly the pairing makes the most sense in this pack: build or resample a coordinate path with one, sanity-check it visually with this one, before you ever wire either into whatever actually consumes the coordinates downstream (a camera pan, a moving crop window, a motion path - anything that reads this pack's coordinate format).
The inputs and outputs that matter
coordinates- your path, as a string, same format Interpolate Coords produces or consumes.text(default "title") - a label drawn on the plotted image, useful for telling multiple debug plots apart when you're iterating.width/height(default 512 each) - canvas size for the plot.bbox_width/bbox_height(default 128 each) - the size of a bounding box drawn at each coordinate point, so you can see not just where a point is but roughly how big whatever's supposed to sit there would be.size_multiplier(optional, default a single-value list of 1) - scales the bounding box per frame, since it's a list input rather than a flat number. Feed it a batch of values if you want the box to grow or shrink as the sequence plays out - useful for previewing something like a zoom that tracks the path.- Outputs:
images(the plotted sequence), pluswidth,height,bbox_width,bbox_heightpassed straight through - handy so a downstream node that needs those same dimensions doesn't need its own separate widget repeating the numbers.
How to install it
Standard KJNodes install: ComfyUI Manager → search "KJNodes for ComfyUI" → install, or cd ComfyUI/custom_nodes && git clone https://github.com/kijai/ComfyUI-KJNodes, then pip install -r ComfyUI-KJNodes/requirements.txt, then restart. The one dependency worth naming here specifically is Matplotlib - it's part of the pack's requirements.txt, so a normal install covers it, but if you're on an unusual or stripped-down Python environment and this node errors on import, that's the first thing to check.
Common issues & troubleshooting
Malformed coordinates crash the plot before it draws anything. This node doesn't validate the format for you - if you're hand-writing the coordinate string rather than getting it from Interpolate Coords or another compatible node, a typo in the JSON shape is the single most likely cause of an error here.
Don't feed the plotted output back into your actual generation. It's easy to accidentally treat the images output as content once it's an IMAGE type flowing through your graph - but these are debug plots (dots and boxes on a blank canvas), not anything you want in a final render. Use them to check the path, then route your real coordinates onward to whatever actually consumes them.
Documentation for this whole "coordinates" mini-format is thin. There's no spec beyond what the nodes themselves imply - if something about the shape isn't working, the most reliable way to figure out the expected format is to generate a known-good example with another compatible node and inspect it directly rather than guessing from first principles.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| coordinates | STRING | — | |
| text | STRING | title | — |
| width | INT | 5128–4096 | — |
| height | INT | 5128–4096 | — |
| bbox_width | INT | 1288–4096 | — |
| bbox_height | INT | 1288–4096 | — |
| size_multiplieropt | FLOAT | 1 | — |
Outputs (5)
| Name | Type | Description |
|---|---|---|
| images | IMAGE | — |
| width | INT | — |
| height | INT | — |
| bbox_width | INT | — |
| bbox_height | INT | — |