← Back to Skills Marketplace
ianalloway

Data Viz

by ianalloway · GitHub ↗ · v0.1.0
cross-platform ⚠ suspicious
1422
Downloads
0
Stars
12
Active Installs
1
Versions
Install in OpenClaw
/install data-viz
Description
Create terminal charts and plots from CSV or JSON data using YouPlot and termgraph without leaving the command line.
README (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

echo -e "Apple,30\
Banana,45\
Cherry,20\
Date,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\x3C1000;i++)print rand()}' | uplot hist -t "Random Distribution" -n 20

Scatter Plot

awk 'BEGIN{for(i=0;i\x3C100;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\
2021 75\
2022 90\
2023 120" | termgraph

With colors:

echo -e "Sales 150\
Costs 80\
Profit 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 ' ' '\
' | sort -n | head -1); max=$(echo $data | tr ' ' '\
' | 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\
Alice,95,A\
Bob,82,B\
Carol,78,C" | column -t -s,

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

Real-World Examples

Stock Price Chart

# Fetch and plot stock data (using Alpha Vantage free API)
curl -s "https://www.alphavantage.co/query?function=TIME_SERIES_DAILY&symbol=AAPL&apikey=demo" | \
  jq -r '.["Time Series (Daily)"] | to_entries | .[:20] | reverse | .[] | "\(.key) \(.value["4. close"])"' | \
  uplot line -t "AAPL Stock Price"

System Metrics

# CPU usage over time
for i in {1..20}; do
  top -bn1 | grep "Cpu(s)" | awk '{print 100-$8}'
  sleep 1
done | uplot line -t "CPU Usage %"

API Response Times

# Measure and plot response times
for i in {1..10}; do
  curl -s -o /dev/null -w "%{time_total}\
" https://example.com
done | uplot line -t "Response Time (s)"

Tips

  • Use -d, for comma-delimited data, -d' ' for tabs
  • Use -H when your data has headers
  • Pipe through head or tail to limit data points
  • Combine with jq for JSON data extraction
  • Use watch for live updating charts: watch -n1 'command | uplot bar'
Usage Guidance
This skill appears to do what it says: create terminal charts using YouPlot/termgraph. Before installing or running its example install commands, note two practical items: (1) SKILL.md expects tools beyond 'curl' (uplot/youplot, termgraph, jq, gnuplot, csvkit, etc.) — make sure you have or want those installed. (2) The install steps use 'gem install youplot' and 'pip install termgraph' which install code from public package registries; review those packages' sources (GitHub repo) and run installs in a safe environment (e.g., virtualenv, container, or sandbox) if you are unsure. Also be aware example commands use curl to fetch data from external APIs — do not send sensitive data to unfamiliar endpoints. If you want this skill added to an automated agent, clarify the registry metadata to declare the actual binary dependencies and whether install commands should be executed automatically.
Capability Analysis
Type: OpenClaw Skill Name: data-viz Version: 0.1.0 The skill bundle is classified as suspicious due to its broad use of shell execution and network capabilities, which, while aligned with its stated purpose of data visualization, introduce significant security risks. The `SKILL.md` file includes `shell` type installations (`gem install youplot`, `pip install termgraph`) and numerous examples demonstrating `curl` commands to external domains (e.g., `https://api.example.com/data`, `https://www.alphavantage.co/query`, `https://example.com`), as well as execution of system commands like `top` for data collection. These capabilities, if exploited via prompt injection or other vulnerabilities, could lead to unauthorized command execution, data exfiltration, or other harmful actions, even though no explicit malicious intent is present in the provided code or instructions.
Capability Assessment
Purpose & Capability
The skill's stated purpose (create terminal charts with YouPlot and termgraph) matches the commands and examples in SKILL.md. However, registry metadata lists only curl as a required binary while the instructions expect/mention many other tools (uplot/youplot, termgraph, jq, gnuplot, csvlook, spark, column, top, watch). The SKILL.md also contains install commands (gem install youplot, pip install termgraph) even though the registry metadata said 'No install spec', which is an internal inconsistency but not obviously malicious.
Instruction Scope
Runtime instructions limit actions to local data processing and calling HTTP APIs (curl) for example data; they do not instruct reading unrelated system files, harvesting environment variables, or transmitting data to unexpected endpoints. Examples do use network calls to public APIs (e.g., alphavantage/demo) which is expected for data fetches.
Install Mechanism
No formal install spec in the registry, but SKILL.md includes shell install commands: 'gem install youplot' and 'pip install termgraph'. These are standard package-manager installs from central registries (RubyGems/PyPI) — moderate risk and expected for this purpose. There is no use of arbitrary download URLs or archive extraction. The inconsistency between 'no install spec' and embedded install commands should be clarified.
Credentials
The skill requests no environment variables or credentials. Example commands reference public API usage (apikey=demo) but do not require secret tokens. No sensitive or unrelated credentials are requested.
Persistence & Privilege
always is false and the skill does not request permanent presence or attempt to modify other skills or system-wide agent settings. It is user-invocable and can be invoked autonomously (platform default), which is appropriate for this kind of helper.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install data-viz
  3. After installation, invoke the skill by name or use /data-viz
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v0.1.0
- Initial release of data-viz skill for terminal-based data visualization. - Generate charts, plots, and graphs directly from CSV/JSON or piped data using YouPlot, termgraph, and gnuplot. - Supports bar charts, line charts, histograms, scatter plots, sparklines, and ASCII tables. - Includes real-world command-line examples for system metrics, stock prices, and API response times. - Guidance for using tools like jq and csvkit for easy data extraction and formatting.
Metadata
Slug data-viz
Version 0.1.0
License
All-time Installs 12
Active Installs 12
Total Versions 1
Frequently Asked Questions

What is Data Viz?

Create terminal charts and plots from CSV or JSON data using YouPlot and termgraph without leaving the command line. It is an AI Agent Skill for Claude Code / OpenClaw, with 1422 downloads so far.

How do I install Data Viz?

Run "/install data-viz" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Data Viz free?

Yes, Data Viz is completely free (open-source). You can download, install and use it at no cost.

Which platforms does Data Viz support?

Data Viz is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Data Viz?

It is built and maintained by ianalloway (@ianalloway); the current version is v0.1.0.

💬 Comments