CommunityPesquisa e Análise de Dadosgithub.com

diagram — sơ đồ & biểu đồ

Vẽ sơ đồ và biểu đồ đẹp cho báo cáo — flowchart/sequence/class/state/ER/gantt bằng Mermaid (kroki.io, PNG), biểu đồ cột/tròn/line bằng matplotlib (uv), output `<tên>.diagram.png` cạnh nguồn để nhúng vào `.report.docx`. Dùng khi báo cáo cần sơ đồ thay cho ASCII, cần biểu đồ dữ liệu, hoặc user yêu cầu "sơ đồ đẹp".

O que é diagram — sơ đồ & biểu đồ?

Skill này cung cấp khả năng sinh sơ đồ và biểu đồ chất lượng cao, chuyên dùng trong các tác vụ báo cáo tự động. Nó hỗ trợ hai loại đầu ra chính: một là sơ đồ kiến trúc, luồng xử lý (flowchart, sequence, class, state, ER, gantt) được tạo từ ngôn ngữ mô tả Mermaid và xuất ra PNG nhờ script `mmd2png.py`; hai là biểu đồ dữ liệu thống kê (cột, tròn, đường) từ file CSV sử dụng matplotlib thông qua script `chart.py`. Skill tuân thủ nguyên tắc "local-first": mặc định chỉ chạy công cụ CLI `mmdc` trên máy, không gửi dữ liệu ra ngoài, tránh phụ thuộc mạng. Khi kết hợp với skill `paper` và recipe `doc`, các file PNG được đặt cạnh file nguồn và dễ dàng nhúng vào báo cáo `.report.docx` thông qua cú pháp Markdown. Skill này kiểm tra nghiêm ngặt chất lượng đầu ra (magic number, kích thước file, khả năng hiển thị) để đảm bảo sơ đồ không bị lỗi, font đọc được và bố cục hợp lý, tránh tình trạng vỡ trang khi in.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/tpc-pascal/agent-skills/tree/HEAD/skills/research/diagram

Installed? Explore more Pesquisa e Análise de Dados skills: affaan-m/uspto-database, affaan-m/scholar-evaluation, affaan-m/literature-review · View all 6 →

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Prévia

Do README da skill

tiêu đề

Documentação

Bản tiếng Anh: SKILL.en.md

O que diagram — sơ đồ & biểu đồ faz?

Skill mỏng, có 2 script: scripts/mmd2png.py (Mermaid → PNG, local-only mặc định qua mmdc; remote chỉ khi chọn rõ) và scripts/chart.py (biểu đồ số liệu → PNG, matplotlib qua uv hoặc Python có sẵn). Nguồn nằm cạnh output, không ghi đè file có sẵn.

Bảng route theo nhu cầu

Nhu cầuCách làm
Flowchart / sequence / class / state / ER / gantt / kiến trúc hệ thốngMermaid → scripts/mmd2png.py (mặc định chỉ dùng mmdc local)
Biểu đồ cột / tròn / line từ số liệu thậtscripts/chart.py (matplotlib; uv có thể cần mạng nếu package chưa có trong cache)
Sơ đồ nhúng báo cáo .report.docxPNG + ![tiêu đề](<tên>.diagram.png) trong .report.md, xuất docx theo skill paper và recipe doc
Sơ đồ ngoài khả năng Mermaid/matplotlib (3D, đồ hoạ tuỳ biến cao)[N/A] — báo user rõ giới hạn, không bịa cách

Quy tắc

  1. Output cạnh nguồn: <tên_gốc>.diagram.png (ảnh) + <tên_gốc>.diagram.mmd (nguồn Mermaid, sửa được). Không ghi đè file nguồn.
  2. Mermaid: viết vào .mmd, render python3 scripts/mmd2png.py '<f>.mmd' '<f>.diagram.png'; nhãn sơ đồ theo ngôn ngữ người dùng nói.
  3. Số liệu vẽ vào biểu đồ phải là số đo/thuật từ nguồn (nhãn [fact]/[observed]); không vẽ số bịa.
  4. Local-first, không gửi nguồn âm thầm: mặc định mmd2png.py chỉ dùng mmdc; thiếu CLI/browser hoặc lỗi thì dừng và báo lý do, không gọi mạng. Cài npm i -g @mermaid-js/mermaid-cli và Chrome/Chromium. Chỉ khi người dùng/agent chọn rõ mới đặt MMD2PNG_BACKEND=remote (Kroki rồi mermaid.ink), kroki hoặc ink. chart.py xử lý local; uv run --with matplotlib có thể cần mạng để lấy package nếu chưa cài/cache, nên khi offline dùng Python có matplotlib sẵn hoặc cache đã chuẩn bị.
  5. Verify trước khi giao: mmd2png.py tự kiểm PNG magic + dung lượng ≥ 1 KB, ảnh JPEG từ remote được convert sang PNG thật bằng ImageMagick (thiếu converter → ghi <f>.jpg + cảnh báo, không giả làm .png); khi nhúng báo cáo → kiểm lại bằng pdfinfo + pdftotext sau khi convert DOCX→PDF (ảnh hiển thị, không vỡ trang).
  6. Kích thước: mỗi sơ đồ 1 ý, font đủ đọc; sơ đồ quá rộng → tách nhỏ thay vì để trình soạn thảo co cụm.
  7. Nhắc ngôn ngữ input — trả lời cùng ngôn ngữ người dùng nói.

scripts

  • scripts/mmd2png.py — Mermaid → PNG (local-only mặc định; remote opt-in qua MMD2PNG_BACKEND): python3 scripts/mmd2png.py '<f>.mmd' '<f>.diagram.png' [--scale 2] [--size 1600] [--theme forest]
  • scripts/chart.py — số liệu CSV (2 cột: nhãn,giá trị) → PNG: uv run --with matplotlib python3 scripts/chart.py '<f>.csv' '<f>.diagram.png' <bar|pie|line>

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

tpc-pascal/agent-skills

Trích xuất và chuyển đổi tài liệu PDF/DOCX/XLSX — lấy text layer (pdftotext), OCR ảnh scan (pdftoppm + tesseract), chuyển markdown (docling), XLSX → CSV (libreoffice headless), ghép/tách/đảo trang (qpdf/pdftk), kiểm tra output bằng pdfinfo + pdftotext. Dùng khi đưa tài liệu và muốn lấy text, OCR bản scan, chuyển định dạng, tách/ghép/trang, hoặc xác minh nội dung đã trích.

tpc-pascal/agent-skills

Xử lý media — ffprobe thông số, ffmpeg cắt/ghép/transcode/GIF, trích frame, tách audio, phụ đề (shift/convert/burn), timecode SMPTE, phát hiện shot, OCR frame/ảnh, tải từ URL (yt-dlp), nhạc (thể loại/mood/BPM/lyrics). Dùng khi đưa video/audio/ảnh/URL media và muốn tóm tắt nội dung, trích text, cắt ghép, làm phụ đề, lấy khung hình, hoặc tải xuống.

tpc-pascal/agent-skills

Điều phối — nhận input, xác định loại, chuyển tiếp tới skill anh em trong repo — doc (tài liệu), media (video/audio/ảnh), paper (báo cáo), web (đọc web/mạng xã hội/tìm kiếm) — và mở cổng câu hỏi bắt buộc trước khi viết báo cáo. Dùng khi chưa biết skill nào xử lý input đang có, hoặc khi cần quy trình phối hợp nhiều skill.

tpc-pascal/agent-skills

Viết báo cáo theo một trong hai dạng: chuẩn quốc tế hoặc phổ biến tại Việt Nam. Tổng hợp nguồn có trích dẫn, giữ báo cáo chính gọn và tách dữ liệu hỗ trợ khi cần; xuất `.report.md` hoặc `.report.docx`.

Habilidades Relacionadas