Search

PythonReactSEOPDF
OpenClaw

data-viz

Create data visualizations from the command line. Generate charts, graphs, and plots from CSV/JSON data without leaving the terminal.

ianalloway0 source installs☆ 0 Repository stars

Installation

Follow the repository instructions for this skill and your agent. Review the files and dependencies before adding it to your workflow.

SkillHub CLI

skillhub install ianalloway/data-viz

Inspect the source and compatibility requirements, then follow its installation steps.

Give your agent the source link and ask it to inspect instructions and dependencies before explaining the installation steps.

View source ↗Guides

Skill instructions

Data Visualization

Create terminal-based charts and visualizations from CSV, JSON, or piped data.

Quick Visualizations with YouPlot

YouPlot (uplot) creates Unicode charts in the terminal.

Bar Chart
echo -e "Apple,30\nBanana,45\nCherry,20\nDate,35" | uplot bar -d, -t "Fruit Sales"
Line Chart
seq 1 20 | awk '{print $1, sin($1/3)*10+10}' | uplot line -t "Sine Wave"
Histogram
awk 'BEGIN{for(i=0;i<1000;i++)print rand()}' | uplot hist -t "Random Distribution" -n 20
Scatter Plot
awk 'BEGIN{for(i=0;i<100;i++)print rand()*100, rand()*100}' | uplot scatter -t "Random Points"

From CSV Files

# Bar chart from CSV
cat sales.csv | uplot bar -d, -H -t "Monthly Sales"

# Line chart with headers
cat timeseries.csv | uplot line -d, -H -t "Stock Price"

From JSON (with jq)

# Extract data from JSON and plot
curl -s "https://api.example.com/data" | jq -r '.items[] | "\(.name),\(.value)"' | uplot bar -d,

Termgraph (Python Alternative)

Simple horizontal bar charts:

echo -e "2020 50\n2021 75\n2022 90\n2023 120" | termgraph

With colors:

echo -e "Sales 150\nCosts 80\nProfit 70" | termgraph --color green

Gnuplot (Advanced)

For publication-quality charts:

# Quick line plot
gnuplot -e "set terminal dumb; plot sin(x)"

# From data file
gnuplot -e "set terminal dumb; plot 'data.txt' with lines"

Sparklines

Inline mini-charts:

# Using spark (if installed)
echo "1 5 22 13 5" | spark
# Output: ▁▂█▅▂

# Pure bash sparkline
data="1 5 22 13 5"; min=$(echo $data | tr ' ' '\n' | sort -n | head -1); max=$(echo $data | tr ' ' '\n' | sort -n | tail -1); for n in $data; do printf "\u258$((7-7*($n-$min)/($max-$min)))"; done; echo

ASCII Tables

Format data as tables:

# Using column
echo -e "Name,Score,Grade\nAlice,95,A\nBob,82,B\nCarol,78,C" | column -t -s,

# Using csvlook (csvkit)
cat data.csv | csvlook

Real-W...

Source information

Source
github
Repository
openclaw/skills
Path
skills/ianalloway/data-viz
Version
—
Commit
5a728286e54c81a2e1010c1799b58db7bf9c10ab
Classification source
rules
Status
active
Visibility
public

These signals come from indexed source analysis and may lag behind changes. Check the current source files.

Extracted content

SKILL.md
# Data Visualization

Create terminal-based charts and visualizations from CSV, JSON, or piped data.

## Quick Visualizations with YouPlot

YouPlot (`uplot`) creates Unicode charts in the terminal.

### Bar Chart

```bash
echo -e "Apple,30\nBanana,45\nCherry,20\nDate,35" | uplot bar -d, -t "Fruit Sales"
```

### Line Chart

```bash
seq 1 20 | awk '{print $1, sin($1/3)*10+10}' | uplot line -t "Sine Wave"
```

### Histogram

```bash
awk 'BEGIN{for(i=0;i<1000;i++)print rand()}' | uplot hist -t "Random Distribution" -n 20
```

### Scatter Plot

```bash
awk 'BEGIN{for(i=0;i<100;i++)print rand()*100, rand()*100}' | uplot scatter -t "Random Points"
```

## From CSV Files

```bash
# Bar chart from CSV
cat sales.csv | uplot bar -d, -H -t "Monthly Sales"

# Line chart with headers
cat timeseries.csv | uplot line -d, -H -t "Stock Price"
```

## From JSON (with jq)

```bash
# Extract data from JSON and plot
curl -s "https://api.example.com/data" | jq -r '.items[] | "\(.name),\(.value)"' | uplot bar -d,
```

## Termgraph (Python Alternative)

Simple horizontal bar charts:

```bash
echo -e "2020 50\n2021 75\n2022 90\n2023 120" | termgraph
```

With colors:

```bash
echo -e "Sales 150\nCosts 80\nProfit 70" | termgraph --color green
```

## Gnuplot (Advanced)

For publication-quality charts:

```bash
# Quick line plot
gnuplot -e "set terminal dumb; plot sin(x)"

# From data file
gnuplot -e "set terminal dumb; plot 'data.txt' with lines"
```

## Sparklines

Inline mini-charts:

```bash
# Using spark (if installed)
echo "1 5 22 13 5" | spark
# Output: ▁▂█▅▂

# Pure bash sparkline
data="1 5 22 13 5"; min=$(echo $data | tr ' ' '\n' | sort -n | head -1); max=$(echo $data | tr ' ' '\n' | sort -n | tail -1); for n in $data; do printf "\u258$((7-7*($n-$min)/($max-$min)))"; done; echo
```

## ASCII Tables

Format data as tables:

```bash
# Using column
echo -e "Name,Score,Grade\nAlice,95,A\nBob,82,B\nCarol,78,C" | column -t -s,

# Using csvlook (csvkit)
cat data.csv | csvlook
```

## Real-W...

Related skills

OpenClaw

geo-optimization

capt-marbles

Generative Engine Optimization (GEO) for AI search visibility. Optimize content to appear in ChatGPT, Perplexity, Claude, and Google AI Overviews. Use when optimizing websites, pages, or content for LLM discove...

OpenClaw

139mail

chang-tong

139邮箱邮件收发 Skill - 支持 IMAP/SMTP 协议,兼容139/QQ/163/Gmail等主流邮箱 功能: 1. 发送邮件(SMTP) 2. 接收邮件(IMAP) 3. 查看收件箱列表 4. 查看未读邮件 当用户提到 "发邮件"、"收邮件"、"查看邮件"、"邮箱"...