← 返回 Skills 市场
Data Viz
作者
ianalloway
· GitHub ↗
· v0.1.0
1422
总下载
0
收藏
12
当前安装
1
版本数
在 OpenClaw 中安装
/install data-viz
功能描述
Create terminal charts and plots from CSV or JSON data using YouPlot and termgraph without leaving the command line.
使用说明 (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
-Hwhen your data has headers - Pipe through
headortailto limit data points - Combine with
jqfor JSON data extraction - Use
watchfor live updating charts:watch -n1 'command | uplot bar'
安全使用建议
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.
功能分析
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.
能力评估
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.
如何使用
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install data-viz - 安装完成后,直接呼叫该 Skill 的名称或使用
/data-viz触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
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.
元数据
常见问题
Data Viz 是什么?
Create terminal charts and plots from CSV or JSON data using YouPlot and termgraph without leaving the command line. 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 1422 次。
如何安装 Data Viz?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install data-viz」即可一键安装,无需额外配置。
Data Viz 是免费的吗?
是的,Data Viz 完全免费(开源免费),可自由下载、安装和使用。
Data Viz 支持哪些平台?
Data Viz 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。
谁开发了 Data Viz?
由 ianalloway(@ianalloway)开发并维护,当前版本 v0.1.0。
推荐 Skills