← 返回
数据分析 中文

Dynamic UI

Render tables, charts, stats, cards, and dashboards as images using HTML templates and wkhtmltoimage.
使用 HTML 模板和 wkhtmltoimage 将表格、图表、统计、卡片及仪表盘渲染为图片。
theashbhat
数据分析 clawhub v1.2.0 2 版本 99920.1 Key: 无需
★ 3
Stars
📥 1,190
下载
💾 21
安装
2
版本
#latest

概述

Dynamic UI Skill

Render dynamic visual content (tables, charts, stats, cards, dashboards) as images using HTML templates and wkhtmltoimage.

Triggers

  • "render", "visualize", "chart", "dashboard", "dynamic-ui"

Usage

# Basic usage
./scripts/render.sh <template> --data '<json>'

# With options
./scripts/render.sh table --data '{"columns":["A","B"],"rows":[["1","2"]]}' --style dark --output out.png

# From stdin
echo '{"labels":["Q1","Q2"],"values":[100,200]}' | ./scripts/render.sh chart-bar --style modern

Templates

TemplateDescriptionInput Schema
-------------------------------------
tableData tables{"columns": [...], "rows": [[...], ...]}
chart-barBar charts{"labels": [...], "values": [...], "title": "..."}
statsKPI cards{"stats": [{"label": "...", "value": "...", "change": "..."}]}
cardInfo card`{"title": "...", "subtitle": "...", "body": "...", "status": "green\yellow\red"}`
dashboardComposite`{"title": "...", "widgets": [{"type": "stat\table\chart", ...}]}`

Options

OptionDescriptionDefault
------------------------------
--data, --inputJSON data (or use stdin)-
--styleTheme: modern, dark, minimalmodern
--output, -oOutput pathstdout (base64)
--widthImage width in pixels800

Themes

  • modern — Purple/blue gradients, shadows, rounded corners
  • dark — Dark background, light text, subtle borders
  • minimal — Clean white, thin borders

Examples

# Render a table
./scripts/render.sh table --data '{"columns":["Name","Score"],"rows":[["Alice","95"],["Bob","87"]]}' -o table.png

# Render a bar chart
./scripts/render.sh chart-bar --data '{"labels":["Jan","Feb","Mar"],"values":[120,150,180],"title":"Monthly Sales"}' --style dark -o chart.png

# Render stats
./scripts/render.sh stats --data '{"stats":[{"label":"Users","value":"12.5K","change":"+12%"},{"label":"Revenue","value":"$45K","change":"+8%"}]}' -o stats.png

💡 Sending Images to Users

After rendering an image, you'll typically want to send it to the user. Here's the recommended workflow:

Recommended Workflow:

# 1. Render to ~/.openclaw/media/ (recommended path)
./scripts/render.sh table --data '...' -o ~/.openclaw/media/my-table.png

# 2. Send inline via message tool
message(action=send, filePath=/home/ubuntu/.openclaw/media/my-table.png, caption="Caption", channel=telegram, to=<user_id>)

Tips:

  • Save to ~/.openclaw/media/ — this path works reliably for inline sending
  • Use descriptive captions — helps users understand the visual
  • Consider the context — sometimes saving to disk is fine if the user requested it

Example (complete flow):

# Render
echo '{"title":"My Data","columns":["A","B"],"rows":[["1","2"]]}' | \
  ./scripts/render.sh table -o ~/.openclaw/media/data.png

# Send
message(action=send, filePath=/home/ubuntu/.openclaw/media/data.png, caption="Here's your data", channel=telegram, to=USER_ID)

Dependencies

  • /usr/bin/wkhtmltoimage — HTML to image conversion
  • jq — JSON parsing

版本历史

共 2 个版本

  • v1.2.0 当前
    2026-03-29 07:33 安全 安全
  • v1.0.4
    2026-03-07 01:51

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

data-analysis

A股量化 AkShare

mbpz
A股量化数据分析工具,基于AkShare库获取A股行情、财务数据、板块信息等。用于回答关于A股股票查询、行情数据、财务分析、选股等问题。
★ 165 📥 60,022
data-analysis

Excel / XLSX

ivangdavila
创建、检查和编辑 Microsoft Excel 工作簿及 XLSX 文件,支持可靠的公式、日期、类型、格式、重算及模板保留功能。
★ 368 📥 140,470
data-analysis

Data Analysis

ivangdavila
{"answer":"数据分析与可视化。查询数据库、生成报告、自动化电子表格,将原始数据转化为清晰可行的见解。适用于:(1) 您……"}
★ 198 📥 65,124