manim/docs/source/tutorials/quickstart.rst
2026-05-31 02:46:40 +00:00

52 lines
2.5 KiB
ReStructuredText

Nếu bạn muốn vẽ sơ đồ khối bằng code (Text-to-Diagram), dưới đây là các công cụ tốt nhất, giúp bạn chỉ cần gõ vài dòng chữ là sơ đồ tự động sinh ra cực kỳ vuông vắn và đẹp mắt:
## 1. Mermaid.js (Phổ biến nhất, dễ học)
* Đặc điểm: Ngôn ngữ dạng text cực kỳ đơn giản. Được tích hợp sẵn vào GitHub, Notion, và các trình chỉnh sửa Markdown.
* Công cụ vẽ trực tuyến: Mermaid Live Editor
* Ví dụ code cho mạch của bạn:
graph LR
A[Đầu vào: Nhấn nút] -->|Tín hiệu| B(Xử lý: Chip)
B -->|Lệnh điều khiển| C[Đầu ra: Đèn sáng]
C -.->|Mạch kín / Phản hồi| A
## 2. PlantUML (Mạnh mẽ cho dân lập trình)
* Đặc điểm: Rất mạnh để vẽ sơ đồ khối, sơ đồ phần mềm, hệ thống. Hỗ trợ nhiều định dạng xuất file (PNG, SVG).
* Công cụ vẽ trực tuyến: PlantUML Online Server
* Ví dụ code:
@startuml
card "Đầu vào\n(Nhấn nút)" as Input
card "Xử lý\n(Chip)" as Process
card "Đầu ra\n(Đèn sáng)" as Output
Input -> Process : Tín hiệu
Process -> Output : Lệnh
Output .left.> Input : Mạch kín
@enduml
### 3. Graphviz (Đỉnh cao sắp xếp tự động)
* **Đặc điểm**: Sử dụng ngôn ngữ `DOT`. Nó sử dụng các thuật toán toán học để tự động tính toán vị trí các khối sao cho dây nối ít bị chồng chéo nhất.
* **Công cụ vẽ trực tuyến**: [Graphviz Online](https://github.io)
* **Ví dụ code**:
```dot
digraph G {
rankdir=LR;
Input [label="Đầu vào\n(Nhấn nút)", shape=box];
Process [label="Xử lý\n(Chip)", shape=ellipse];
Output [label="Đầu ra\n(Đèn sáng)", shape=box];
Input -> Process [label="Tín hiệu"];
Process -> Output [label="Lệnh"];
Output -> Input [label="Mạch kín", style=dashed];
}
```
### 4. Diagram as Code (Dành cho Python)
* **Đặc điểm**: Nếu bạn là lập trình viên Python, bạn có thể dùng thư viện `diagrams` để vẽ sơ đồ trực tiếp bằng code Python. Rất phù hợp khi vẽ kiến trúc hệ thống đám mây (AWS, Azure) hoặc mạch logic lớn.
Để tôi tư vấn kỹ hơn, bạn muốn **nhúng sơ đồ này vào đâu** (vào báo cáo Word, tài liệu Notion, GitHub, hay làm slide)? Tôi có thể cung cấp ngay **đoạn code chuẩn** tương ứng với phần mềm bạn chọn!