Skip to main content

VisiData Documentation

VisiData is an interactive multitool for tabular data in the terminal. It combines the clarity of a spreadsheet, the efficiency of the terminal, and the power of Python — capable of handling millions of rows with ease.

Who This Track Is For
  • Data analysts and engineers exploring CSV, JSON, SQLite, and log files in the terminal
  • Sysadmins parsing structured output from commands and log files interactively
  • Developers who need a fast, keyboard-driven alternative to spreadsheets and pandas
What You Will Build
  • A fast sheet-based exploration workflow for any tabular data format
  • Column manipulation pipelines: type casting, derived columns, regex splits
  • Frequency tables, pivot tables, and in-terminal scatterplots
  • A .visidatarc configuration that matches your workflow
  • Replayable audit trails via VisiData's CommandLog
How To Use This Track
  • Follow the modules in order (1 to 11). Each lesson includes real commands and exercises.
  • Practice with actual data files: CSVs, TSVs, JSON, or system logs.
  • Build your own .visidatarc incrementally as you complete each module.

Learning Path

ModuleFocusLessons
1. IntroductionFundamentals and mental model3
2. Loading DataOpen files, formats, and pipes3
3. NavigationMoving, searching, and switching sheets3
4. Rows and ColumnsSelection, sorting, column types3
5. Data EditingEdit cells, rename columns, append rows2
6. Analysis and GroupingFrequency tables, pivot, descriptive stats3
7. VisualizationIn-terminal graphs and scatterplots2
8. Configuration.visidatarc, themes, and key bindings3
9. Real-World WorkflowsSysadmin and data pipeline patterns3
10. TroubleshootingDiagnosing issues and edge cases2
11. CheatsheetFast operational reference3

Core Architecture

How VisiData Works

Sheet-Based Mental Model

warning

VisiData does not modify your source files unless you explicitly save with Ctrl+S. All transformations happen in memory.

Quick Start

first-visidata-session.sh
# 1) Install VisiData
pip install visidata # recommended
sudo apt install visidata # Debian/Ubuntu (may be older version)

# 2) Open a CSV file
vd data.csv

# 3) Navigate with arrow keys or hjkl
# 4) Open a frequency table on the current column
# Press: Shift+F

# 5) Quit the current sheet
# Press: q

# 6) Quit VisiData entirely
# Press: q (until all sheets closed)
# Or: gq (quit all at once)
note

The default VisiData help menu is Alt+H. Press Ctrl+H for the full man page inside VisiData, or z Ctrl+H for a sheet of all commands for the current sheet.

VisiData vs Alternatives

ToolUse CaseKey Advantage
visidataInteractive tabular data explorationMulti-format, Python expressions, sheets
csvkitCSV transformation pipelinesCLI-composable, scriptable
millerStream processing of structured dataFast, AWK-like syntax
pandasProgrammatic data analysisFull Python ecosystem
xsvFast CSV indexing and slicingBlazing speed, Rust-based

Prerequisites

  • Linux shell basics (ls, cat, pipe, redirection)
  • Familiarity with CSV or tabular data concepts
  • Python 3.8+ (VisiData is a Python package)

Success Criteria

By the end of this track, you can:

  • Open any supported data format and navigate it fluidly
  • Select, filter, and sort rows using keyboard-driven workflows
  • Create derived columns with Python expressions
  • Build frequency tables and pivot tables without leaving the terminal
  • Customize VisiData with a .visidatarc that matches your workflow
  • Replay and document data transformations via CommandLog

Next Step

Start with What is VisiData.