AVW-9:视觉指南——工具 Logo 墙、架构图、对比表与演示索引
AI 动态视觉 Web 专题 全景地图 | 动画引擎 | 数据可视化 | 交互叙事 | AI 生成 UI | 视频与动效 | 程序化三剑客 | 中国生态 | AVW-9 视觉指南 ← 本文
# AVW-9 视觉指南
## 工具 Logo 墙
### 动画引擎
- GSAP
- anime.js
- Motion
- Animate.css
### 可视化工具
- ECharts
- AntV(G2 / G6 / X6)
- Plotly
- Observable / D3
## Easing 曲线速查
### 常用缓动类型
- power1~4(日常减速)
- back.out(弹性过头)
- elastic.out(橡皮筋)
- bounce.out(弹跳)
- expo.out(加速 fade)
### 推荐场景配对
- 卡片入场 → power2.out
- Hero 标题 → power3.out
- Modal 弹窗 → back.out(1.7)
- 加载进度条 → none
## ScrollTrigger 原理
### 关键参数
- start / end 触发区间
- pin 固定元素
- scrub 滚动映射进度
- markers 调试辅助线
## 技术栈架构图
### 四层结构
- 用户层:自然语言 Prompt
- AI 生成层:v0 / bolt.new / CopilotKit / AVA / Remotion
- 渲染层:GSAP / ECharts / Lottie / A2UI
- 基础层:React / Vue / Canvas / WebGL
### 工具决策树
- 交互动画 → GSAP / Motion / anime.js
- 数据可视化 → Plotly / ECharts / Bokeh / G6
- AI 建站 → bolt.new / v0 / CopilotKit
- 生成视频 → Remotion / Editly / Motion Canvas
## 演示索引
### GSAP CodePen
- Timeline / Stagger / ScrollTrigger
- SplitText / ScrambleText / DrawSVG / MorphSVG
### 数据可视化演示
- ECharts 平行坐标 / 3D 地球
- G6 知识图谱 / X6 流程图
- Plotly / Observable D3 / Flourish
### 交互叙事体验
- Twine / Ren'Py / Ink
### AI 生成演示
- v0 / bolt.new / CopilotKit / Remotion
## 关键数据对比
### 可视化工具评分矩阵
- 图表种类 / 大数据 / 3D / 移动端
- AI 集成 / 中文文档
### 动画引擎评分矩阵
- 复杂度 / 性能 / 滚动 / React 支持
- 生态 / 学习曲线
一、工具 Logo 墙
动画引擎
| 工具 | Logo | 官网 |
|---|---|---|
| GSAP | ![]() |
gsap.com |
| anime.js | — | animejs.com |
| Motion | — | motion.dev |
| Animate.css | — | animate.style |
可视化工具
| 工具 | Logo | 官网 |
|---|---|---|
| ECharts | ![]() |
echarts.apache.org |
| AntV | antv.antgroup.com | |
| Plotly | — | plotly.com |
| Observable | — | observablehq.com |
二、GSAP Easing 曲线速查
动画的"性格"由缓动函数决定:
power1.out ████████████░░░░ 柔和减速
power2.out ██████████░░░░░░ 最常用,干脆利落 ← 日常首选
power3.out ████████░░░░░░░░ 有力,Hero 标题
power4.out ██████░░░░░░░░░░ 强冲击,弹出通知
back.out ████████░░░░░░██ 弹性过头,Modal 弹窗
elastic.out ████░░██░░██░░██ 橡皮筋,趣味交互
bounce.out ██░░██░░░░██░░██ 弹跳,购物车图标
expo.out ██████████████░░ 加速 fade
none ████████████████ 匀速,加载进度条
在线工具: GSAP Ease Visualizer | Cubic-Bezier.com
| 场景 | Ease | 代码 |
|---|---|---|
| 日常卡片入场 | power2.out | ease: 'power2.out' |
| Hero 大标题 | power3.out | ease: 'power3.out' |
| Modal 弹窗 | back.out(1.7) | ease: 'back.out(1.7)' |
| 加载进度条 | none | ease: 'none' |
| 通知弹出 | power4.in | ease: 'power4.in' |
| 趣味交互 | elastic.out(1,0.3) | ease: 'elastic.out(1,0.3)' |
三、ScrollTrigger 滚动动画原理
┌───────────────────────────────────────────────┐
│ VIEWPORT │
│ │
│ ┌── start: 'top 80%' ────────────────────┐ │
│ │ ┌──────────────────────────────┐ │ │
│ │ │ TRIGGER ELEMENT │ │ │
│ │ │ scroll 位置 → 动画进度 │ │ │
│ │ └──────────────────────────────┘ │ │
│ └── end: 'bottom 20%' ────────────────────┘ │
│ │
│ ██████████████████████████████████ 滚动进度 │
│ ▲ start 触发 ▲ end 结束 │
└───────────────────────────────────────────────┘
pin: true → 元素固定在屏幕上
scrub: true → 滚动条映射到动画进度
markers: true → 开发时显示 start/end 线
在线演示: ScrollTrigger CodePen 合集
四、AI 动态视觉 Web 技术栈架构图
第一行:用户层 → AI 生成层
flowchart LR
A["用户层\n自然语言 Prompt"] --> B1["AI生成层\nv0 / bolt.new\n网站生成"]
A --> B2["AI生成层\nCopilotKit\nAgent UI"]
A --> B3["AI生成层\nAVA\n可视化推荐"]
A --> B4["AI生成层\nRemotion\n视频生成"]
A --> B5["AI生成层\nLLM+Ink/Ren'Py\n叙事生成"]
第二行:渲染层 → 基础层
flowchart LR
B1["v0 / bolt.new"] --> C1["渲染层\nGSAP / Motion\n动画引擎"]
B5["LLM+Ink/Ren'Py"] --> C1
B2["CopilotKit"] --> C4["渲染层\nA2UI Renderer\nAgent UI 渲染"]
B3["AVA"] --> C2["渲染层\nECharts / G2 / Plotly\n数据图表"]
B4["Remotion"] --> C1
B4 --> C2
C1 --> D["基础层\nReact / Vue / Svelte\nCanvas / WebGL / WASM\nNode.js / Bun / Python"]
C2 --> D
C4 --> D
C3["渲染层\nLottie / Rive\n动效播放"] --> D
工具选择决策树
graph TD
START{你要做什么?}
START -->|网页交互动画| ANIM{技术栈?}
ANIM -->|React| MOTION[Motion]
ANIM -->|非React| GSAP[GSAP + ScrollTrigger]
ANIM -->|轻量原型| ANIME[anime.js]
START -->|数据可视化| VIZ{数据量?}
VIZ -->|中小交互| PLOTLY[Plotly / ECharts]
VIZ -->|大规模实时| BOKEH[Bokeh]
VIZ -->|知识图谱| G6[G6 / Pyvis]
START -->|AI建站| AIUI{复杂度?}
AIUI -->|原型| BOLT[bolt.new]
AIUI -->|生产| V0[v0]
AIUI -->|Agent界面| COPILOT[CopilotKit]
START -->|生成视频| VID{方式?}
VID -->|React代码| REMOTION[Remotion]
VID -->|JSON配置| EDITLY[Editly]
VID -->|数学动画| MCANVAS[Motion Canvas]
五、动画演示索引
GSAP 核心演示(CodePen)
| 效果 | 链接 | 插件 |
|---|---|---|
| Timeline 编排 | CodePen | Core |
| Stagger 交错 | CodePen | Core |
| ScrollTrigger 基础 | CodePen | ScrollTrigger |
| 水平滚动画廊 | CodePen | ScrollTrigger |
| SplitText 逐字 | CodePen | SplitText |
| ScrambleText 乱码 | CodePen | ScrambleText |
| DrawSVG 描边 | CodePen | DrawSVG |
| MorphSVG 变形 | CodePen | MorphSVG |
| MotionPath 路径 | CodePen | MotionPath |
| GSAP + React | StackBlitz | @gsap/react |
数据可视化演示
| 工具 | 演示链接 |
|---|---|
| ECharts 平行坐标 | echarts.apache.org |
| ECharts 3D 地球 | echarts.apache.org |
| G6 知识图谱 | g6.antv.antgroup.com |
| X6 流程图 | x6.antv.antgroup.com |
| Plotly 平行坐标 | plotly.com |
| Observable D3 画廊 | observablehq.com |
| Flourish 展示 | flourish.studio |
交互叙事在线体验
| 工具 | 链接 |
|---|---|
| Twine 编辑器 | twinery.org |
| Ren'Py Web 版 | renpy.beuc.net |
| Ink 交互示例 | inklestudios.com/ink |
AI 生成演示
| 工具 | 链接 |
|---|---|
| v0 | v0.app |
| bolt.new | bolt.new |
| CopilotKit | copilotkit.ai |
| Remotion Showcase | remotion.dev/showcase |
六、关键数据对比
可视化工具评分矩阵
| 工具 | 图表种类 | 大数据 | 3D | 移动端 | AI集成 | 中文文档 | 总评 |
|---|---|---|---|---|---|---|---|
| ECharts | ★★★★★ | ★★★★ | ★★★★ | ★★★★★ | ★★★ | ★★★★★ | 9.2 |
| Plotly | ★★★★ | ★★★ | ★★ | ★★★ | ★★★ | ★★★ | 8.0 |
| Bokeh | ★★★ | ★★★★★ | ★ | ★★ | ★★★ | ★★ | 7.5 |
| G2 | ★★★★ | ★★★★ | ★ | ★★★★ | ★★★★ | ★★★★ | 8.5 |
| G6 | ★★ | ★★★★★ | - | ★★★ | ★★★ | ★★★★ | 8.0 |
| D3 | ★★★★★ | ★★★★ | ★★ | ★★ | ★ | ★★★ | 8.5 |
动画引擎评分矩阵
| 引擎 | 复杂度 | 性能 | 滚动 | React | 生态 | 学习曲线 | 推荐场景 |
|---|---|---|---|---|---|---|---|
| GSAP | ★★★★★ | ★★★★★ | ★★★★★ | ★★★★ | ★★★★★ | ★★★ | 专业动画 |
| Motion | ★★★★ | ★★★★ | ★★★ | ★★★★★ | ★★★★ | ★★★★ | React 项目 |
| anime.js | ★★★ | ★★★★ | ★ | ★★★ | ★★★ | ★★★★ | 轻量创意 |
| Animate.css | ★ | ★★★★ | ★ | ★★ | ★★★★★ | ★★★★★ | 快速原型 |
本视觉指南持续更新。各篇文章内会引用此处的图表和演示链接。
实操清单
- 打开 GSAP Ease Visualizer 逐个预览 power1~power4、back、elastic、bounce 曲线,记录各自适合的场景
- 结合"Easing 曲线速查"表,在自己的项目中针对卡片入场换用
power2.out,对比修改前后视觉感受 - 在 GSAP CodePen 演示索引中打开 Timeline 编排和 Stagger 交错两个示例,Fork 后修改 stagger 数值观察效果变化
- 打开 ScrollTrigger 基础 CodePen,将
start: 'top 80%'和end: 'bottom 20%'改为其他值,开启markers: true观察触发线位置 - 在本地项目中实现一个带
pin: true+scrub: true的水平滚动画廊,参考"水平滚动画廊"演示链接 - 访问 ECharts 示例页面,分别查看平行坐标和 3D 地球演示,下载配置代码并在本地运行
- 使用"工具选择决策树"架构图,根据自己当前项目需求找到推荐工具,访问对应官网文档
- 对照"可视化工具评分矩阵"和"动画引擎评分矩阵",选出最符合当前项目需求的工具各一个并说明理由
- 访问 v0.app 或 bolt.new,输入一段界面需求描述,体验 AI 一键生成 UI 的效果
- 打开 Twine 或 Ink 在线编辑器,编写一个至少包含 2 个分支选择的简单交互叙事原型

