Skip to main content

Sheet Types and Entry Points

VisiData generates specialized sheet types from your data. Each sheet type has its own set of commands and purpose. Understanding which sheet type you are on — shown in the status bar — is key to knowing which keys work.

Learning Focus

Learn the six most common sheet types first: Source, Frequency, Pivot, Describe, Columns, and CommandLog. Each one is opened from a source sheet with a single keystroke.

Sheet Type Overview

Sheet TypeHow to OpenPurpose
Source Sheetvd filePrimary data view — rows and columns from source
Frequency SheetShift+F on a columnValue counts + percentage for current column
Pivot SheetShift+W after setting key columnCross-tab aggregation
Describe SheetShift+IStatistical profile of all columns
Columns SheetShift+CEdit column metadata in bulk
CommandLog SheetShift+DReplayable record of all commands
Melted SheetShift+MUnpivot wide data to long format
Canvas Sheet.Graphical plot (dot chart, bar, scatter)
Memory SheetAlt+Shift+MNamed values stored in memory
Threads Sheet^TBackground threads and their status
Directory Sheetvd /path/File browser
Options SheetShift+OAll VisiData configuration options

1. Source Sheet

The primary sheet loaded from a file, pipe, or URL.

vd ~/github/practice-folder/visidata/01-loading/01-employees.csv
  • Every row = one record
  • Every column = one field
  • All editing, filtering, and analysis starts here
  • Status bar shows: <rows> rows <cols> cols <filename>

2. Frequency Sheet

Open with Shift+F on the current column to count distinct values:

vd ~/github/practice-folder/visidata/01-loading/01-employees.csv

# Move to 'department' column
Shift+F
# Opens: Frequency Sheet for 'department'
# Columns: value, count, percent
# Rows sorted by count descending

Frequency Sheet operations:

[ / ] sort by any column (value, count, percent)
Enter drill into source rows matching this value
q return to source sheet

3. Pivot Sheet

Open with Shift+W after marking at least one key column with !:

vd ~/github/practice-folder/visidata/01-loading/01-employees.csv

# Mark 'department' as key column
!
# Move to 'salary' column, set aggregator
+ mean
# Open pivot
Shift+W
# Rows = department values, columns = aggregated salary

Pivot Sheet operations:

Enter drill into source rows for any pivot cell
g[ / g] sort by key columns

4. Describe Sheet

Open with Shift+I to get a statistical profile of every column:

vd ~/github/practice-folder/visidata/01-loading/01-employees.csv

Shift+I
# Columns: name, type, count, nulls, min, max, mean, stdev

Describe Sheet operations:

Enter open frequency table for the selected column
q return to source sheet

5. Columns Sheet

Open with Shift+C to see and edit all column metadata:

Shift+C
# Columns: name, width, type, key, aggregator, expr

Columns Sheet operations:

e edit any cell (rename, change width, set type, set aggregator)
g! toggle selected columns as key columns
g- hide selected columns
g+ <agg> set aggregator on selected columns
g~ g# g% g$ g@ set type for selected columns (str/int/float/currency/date)
Enter jump to that column in source sheet

6. CommandLog Sheet

Open with Shift+D to view a replayable record of all commands:

Shift+D
# Each row = one command with: sheet, row, col, keystrokes, longname, input

CommandLog operations:

x replay command at current row
gx replay entire CommandLog
^C abort replay
Ctrl+S save CommandLog as .vdj file

Replay a saved log:

vd --play ~/github/practice-folder/visidata/04-cleaning/clean_orders.vdj \
--batch ~/github/practice-folder/visidata/04-cleaning/01-dirty_orders.csv \
-o /tmp/cleaned.csv

7. Melted Sheet

Open with Shift+M to unpivot (melt) wide data to long format:

vd ~/github/practice-folder/visidata/07-melt/01-quarterly.csv
# Wide format: id, Q1, Q2, Q3, Q4

# Mark key columns (id)
!
Shift+M
# Long format: id, variable (Q1/Q2/Q3/Q4), value

8. Canvas Sheet (Graph / Plot)

Open with . (dot) to visualize numeric data:

vd ~/github/practice-folder/visidata/01-loading/01-employees.csv

# Set key column (x-axis)
!
# Move to numeric column (y-axis)
.
# Opens Canvas Sheet — dot plot

Canvas Sheet operations:

+ - zoom in / out
< > ^ v pan the canvas
q return to source sheet

9. Memory Sheet

Open with Alt+Shift+M to view named memory values:

z= <name> save current cell value to memory with name
Alt+Shift+M open Memory Sheet

Use memory values in expressions:

# If you saved: z= → name: tax_rate → value: 0.07
# In a derived column:
= salary * tax_rate

10. Threads Sheet

Open with ^T to monitor background operations:

^T
# Shows: thread name, rows processed, total rows, elapsed time

Cancel a slow operation:

^C cancel selected thread

11. Directory Sheet

Open by running VisiData on a directory path:

vd ~/github/practice-folder/visidata/
# Directory Sheet — file browser

Columns: name, size, modified, extension.

Enter open selected file as a new sheet
d delete selected file (with confirmation)

12. Options Sheet

Open with Shift+O:

Shift+O
# All VisiData options with current values
e edit selected option
Ctrl+S save changes to ~/.visidatarc

See Options Reference for the full list.

What's Next