Nodes/ComfyUI_Yvann-Nodes/Floats Visualizer
ComfyUI Node

Floats Visualizer

See your weight curves before you trust them

By yvann-ba·Created 2 years ago·Updated 6 months ago· 708
Floats Visualizer
  • floats
  • floats_optional1
  • floats_optional2
  • visual_graph
titleGraph
x_labelX-Axis
y_labelY-Axis

Half of debugging an audio-reactive workflow is asking "is this weight curve actually what I think it is?" Floats Visualizer is the node that answers it with a picture. It takes up to three lists of floats and plots them on one graph, so you can compare your audio weights, your peaks, and your processed weights side by side before you wire any of them into a sampler.

How it works

The primary floats input is required; floats_optional1 and floats_optional2 are optional for comparison. Each list gets its own color and line style - blue solid, green dashed, red dash-dot - so they're easy to tell apart even when they overlap. You can set title, x_label, and y_label if you want something more descriptive than "Graph / X-Axis / Y-Axis."

The output visual_graph is a matplotlib plot rendered as an IMAGE, which means you can hang a Preview Image node on it, or even save it to disk. It's a diagnostic tool, not a data tool - you're looking at shape, not values.

One behavior worth knowing: if the lists are different lengths, the node truncates everything to the shortest one so the x-axis stays consistent. That's almost always what you want when comparing, but it does mean a short list silently hides the tail of a long one.

Why you'd reach for it

In this pack specifically, it's the sanity check for the whole audio pipeline. You've got audio_weights from Audio Analysis, peaks_weights from Audio Peaks Detection, and process_weights from Edit Audio Weights - plotting all three together instantly shows you whether your peaks land on the right transients, whether smoothing murdered your dynamics, and whether the rescaling put the curve in the range you wanted. It's the difference between tuning blind and tuning with eyes open.

Outside audio it's a general-purpose utility: compare any float lists, check a custom schedule, eyeball a mask-derived curve from Mask To Float. If you work with per-frame weight data in ComfyUI, this becomes the node you reach for constantly.

Gotchas

  • It's a debug node, not a save node. The graph renders at a fixed 12-inch figure size; for a pixel-perfect export you'll want to re-plot in matplotlib yourself.
  • If visual_graph comes back empty or black, check that your inputs are actually FLOATS lists - passing a mismatched type (or None) makes the plot fail silently and returns nothing.
  • It won't catch a wrong curve, just show you one. Use it to verify, then decide.

Install

The usual:

cd ComfyUI/custom_nodes
git clone https://github.com/yvann-ba/ComfyUI_Yvann-Nodes

or ComfyUI Manager → search ComfyUI_Yvann-Nodes. Requires matplotlib, which the pack already pulls in - no extra setup beyond the pack install.

Category👁️ Yvann Nodes/🛠️ Utils

Inputs (6)

NameTypeDefaultDescription
floatsFLOATSPrimary list of floats to visualize
titleSTRINGGraphTitle displayed at top of graph
x_labelSTRINGX-AxisLabel for the horizontal axis
y_labelSTRINGY-AxisLabel for the vertical axis
floats_optional1optFLOATSSecond list of floats to compare (green dashed)
floats_optional2optFLOATSThird list of floats to compare (red dash-dot)

Outputs (1)

NameTypeDescription
visual_graphIMAGE