---
Creates technical diagrams and STEM animations using Matplotlib (static) or Manim (motion). Triggers when visualizing physics FBDs, math plots, flowcharts, or 3Blue1Brown-style animations.
/plugin marketplace add ThepExcel/claude-skills/plugin install thepexcel-create-visualization-plugins-create-visualization@ThepExcel/claude-skillsThis skill inherits all available tools. When active, it can use any tool Claude has access to.
SOURCES.mdreferences/manim-guide.mdสร้าง diagrams และ animations สำหรับอธิบาย STEM concepts
| Need | Tool | Script |
|---|---|---|
| Physics FBD | Matplotlib | scripts/physics_fbd.py |
| Math plots/geometry | Matplotlib | scripts/math_plots.py |
| Flowcharts | Matplotlib | scripts/flowchart.py |
| Animations (3b1b style) | Manim | scripts/manim_physics.py |
Rule: Static → Matplotlib (fast) | Motion/transform → Manim (powerful)
from scripts.physics_fbd import draw_inclined_plane_fbd, draw_two_blocks_rope
# Inclined plane with force decomposition
draw_inclined_plane_fbd(mass=4, angle=30, show_components=True)
# Two blocks connected by rope
draw_two_blocks_rope(mass_A=2, mass_B=3, F_pull=10)
Output: PNG in learning-notes/ folder
from scripts.math_plots import plot_function, draw_unit_circle, draw_coordinate_plane
import numpy as np
# Function plot
plot_function(lambda x: np.sin(x), x_range=(-2*np.pi, 2*np.pi), title="sin(x)")
# Unit circle with angles
draw_unit_circle(angles_deg=[0, 30, 45, 60, 90])
# Coordinate plane with vectors
draw_coordinate_plane(
vectors=[((0,0), (3,2), "a", "red"), ((0,0), (1,4), "b", "blue")]
)
from scripts.flowchart import draw_simple_flowchart, draw_decision_flowchart
# Linear flow
draw_simple_flowchart([
("Start", "start"),
("Input x", "io"),
("Process", "process"),
("End", "end"),
])
# Decision branching
draw_decision_flowchart(
before_decision=[("Start", "start")],
decision_text="x > 0?",
yes_branch=[("Positive", "process")],
no_branch=[("Negative", "process")],
after_merge=[("End", "end")]
)
For 3Blue1Brown-style animations. See references/manim-guide.md for full guide.
scripts/manim_physics.py| Scene | Description |
|---|---|
VectorAddition | Head-to-tail vector addition |
ForcesOnBox | FBD with motion |
NewtonThirdLaw | Action-reaction pairs |
InclinedPlane | Forces on incline with equations |
ProjectileMotion | Parabolic path with velocity vectors |
CircularMotion | Centripetal acceleration |
AtwoodIncline | Pulley system (customizable m1, m2, θ) |
# Preview (low quality, fast)
manim -pql scripts/manim_physics.py VectorAddition
# GIF output
manim -ql --format=gif scripts/manim_physics.py VectorAddition
from manim import *
class MyScene(Scene):
def construct(self):
circle = Circle(color=BLUE)
self.play(Create(circle))
self.play(circle.animate.shift(RIGHT * 2))
สร้างภาพอธิบายการทำงานของ Excel/DAX/Power Query functions
# 1. Generate visualization
python3 tools/visualize_function.py excel left 1
# 2. Upload to server (--mkdir creates directory if needed)
python3 tools/ftp_upload.py -f media/function-viz/excel/left-1.png -r wp-content/uploads/function-viz/excel/ --mkdir
# 3. Add image_url to JSON example, then publish
python3 tools/smart_publish.py --slugs left --program excel --allow
Output: media/function-viz/{program}/{slug}-{example_number}.png
Server: https://www.thepexcel.com/wp-content/uploads/function-viz/{program}/{slug}-{example}.png
| Function | Description |
|---|---|
| LEFT | ดึงตัวอักษรจากซ้าย |
| RIGHT | ดึงตัวอักษรจากขวา |
| MID | ดึงตัวอักษรจากตรงกลาง |
| FIND | หาตำแหน่งข้อความ |
| SUBSTITUTE | แทนที่ข้อความ |
python3 tools/visualize_function.py {program} {slug} {example_num}python3 tools/ftp_upload.py -f {file} -r wp-content/uploads/function-viz/{program}/ --mkdir"image_url": "https://..." ใน examplepython3 tools/smart_publish.py --slugs {slug} --program {program} --allowสำหรับ formula ซับซ้อน เช่น =LEFT(A1, FIND(" ", A1)-1) ต้องเขียน script แยก:
# ดูตัวอย่างที่ media/function-viz/excel/left-5-custom.py
Note: Script หลักรองรับ formula ง่ายๆ ที่มี string literal เท่านั้น
python3 scripts/physics_fbd.py or manim -pql ...explorer.exe output.png or use image viewerTip: Use run_in_background=true for viewers to avoid blocking conversation.
| When | Suggest |
|---|---|
| AI-generated images/videos (realistic, artistic) | /prompt-ai-image-video - prompt engineering |
| Teaching concepts with visuals | /explain-concepts - ACES methodology |
| Need facts before visualizing | /deep-research - verify data |
| Problem-solving context | /problem-solving - structured thinking |
Note: Use /create-visualization for technical diagrams (FBD, plots, flowcharts). Use /prompt-ai-image-video for AI-generated realistic/artistic images and videos.
Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
This skill should be used when the user asks to "create a hookify rule", "write a hook rule", "configure hookify", "add a hookify rule", or needs guidance on hookify rule syntax and patterns.