kuva violin

Kernel-density violin plot. Same input format as box.

Input: two columns — group label and numeric value, one observation per row.

FlagDefaultDescription
--group-col <COL>0Group label column
--value-col <COL>1Numeric value column
--y <COL>[,<COL>…]Comma-separated columns; each column becomes a separate group (column name = group label). Overrides --group-col + --value-col when 2+ columns given
--color <CSS>steelblueViolin fill color (uniform, all groups)
--group-colors <CSS,...>Per-group colors, comma-separated; falls back to --color for unlisted groups
--bandwidth <F>(Silverman)KDE bandwidth
--overlay-pointsoffOverlay individual points as a jittered strip
--overlay-swarmoffOverlay individual points as a non-overlapping beeswarm
--horizontaloffRender groups on the Y-axis, values on the X-axis
kuva violin samples.tsv --group-col group --value-col expression

kuva violin samples.tsv --group-col group --value-col expression \
    --overlay-swarm --bandwidth 0.3

kuva violin samples.tsv --group-col group --value-col expression \
    --group-colors "steelblue,tomato,seagreen,goldenrod,mediumpurple"

# multi-column: each numeric column is a group
kuva violin data.tsv --y col_a,col_b,col_c

# horizontal layout
kuva violin samples.tsv --group-col group --value-col expression --horizontal

See also: Shared flags — output, appearance, axes, log scale.