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.
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 Type | How to Open | Purpose |
|---|---|---|
| Source Sheet | vd file | Primary data view — rows and columns from source |
| Frequency Sheet | Shift+F on a column | Value counts + percentage for current column |
| Pivot Sheet | Shift+W after setting key column | Cross-tab aggregation |
| Describe Sheet | Shift+I | Statistical profile of all columns |
| Columns Sheet | Shift+C | Edit column metadata in bulk |
| CommandLog Sheet | Shift+D | Replayable record of all commands |
| Melted Sheet | Shift+M | Unpivot wide data to long format |
| Canvas Sheet | . | Graphical plot (dot chart, bar, scatter) |
| Memory Sheet | Alt+Shift+M | Named values stored in memory |
| Threads Sheet | ^T | Background threads and their status |
| Directory Sheet | vd /path/ | File browser |
| Options Sheet | Shift+O | All 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
- Cursor and Scroll — basic movement, scrolling, jump commands
- Global Commands — session lifecycle, command palette, help