SVG动画案例库

浏览精选的SVG动画案例

移开即停止播放
```javascript 'use client'; import React, { useState, useEffect, useMemo, useRef, useCallback, useLayoutEffect } from 'react'; import { motion, AnimatePresence } from 'framer-motion'; import * as Lucide from 'lucide-react'; import * as d3 from 'd3'; // ----------------------------------------------------------------------------- // Data: Wu Song's Journey (Water Margin) // ----------------------------------------------------------------------------- const WU_SONG_PATH = [ { name: "清河县",

绘制一个<水浒传>里面的武松的轨迹动画

移开即停止播放
```javascript 'use client'; import React, { useState, useEffect, useMemo, useRef, useCallback, useLayoutEffect } from 'react'; import { motion, AnimatePresence } from 'framer-motion'; import * as Lucide from 'lucide-react'; import * as d3 from 'd3'; // ----------------------------------------------------------------------------- // Constants & Data: Wu Song's Journey (Water Margin) // ----------------------------------------------------------------------------- const WU_SONG_PATH = [ { name:

绘制一个水浒传中武松的个人轨迹动画

移开即停止播放
```javascript 'use client'; import React, { useState, useEffect, useRef, useMemo, useCallback } from 'react'; import { Shield, Users, Server, Database, Globe, Cpu, Activity, Lock, AlertTriangle, Zap, Search } from 'lucide-react'; import * as d3 from 'd3'; // --- Configuration & Constants --- const WIDTH = 1200; const HEIGHT = 700; const CX = WIDTH / 2; const CY = HEIGHT / 2; // Visual Palette const COLORS = { bg: '#0F172A', grid: '#1e293b', friendly: '#06b6d4', // Cyan hostile: '#d946

创建一个精细的SVG人物关系知识图谱数据可视化动画,画面构图

移开即停止播放
```javascript import React, { useState, useEffect, useMemo, useRef, useCallback, useLayoutEffect } from 'react'; import { motion, AnimatePresence } from 'framer-motion'; import * as Lucide from 'lucide-react'; import * as d3 from 'd3'; // ----------------------------------------------------------------------------- // Constants & Data: The Life of Li Bai // ----------------------------------------------------------------------------- const LIBAI_PATH = [ { name: "Jiangyou (Sichuan)",

绘制一个李白一生的运动轨迹动画

移开即停止播放
```javascript import React, { useState, useEffect, useRef, useMemo } from 'react'; const WIDTH = 1200; const HEIGHT = 700; const SERVER_X = 250; const DEVICE_X = 950; const GROUND_Y = 400; // 颜色定义 const COLORS = { bg: '#0f172a', grid: '#1e293b', serverBase: '#1e40af', serverHighlight: '#3b82f6', serverGlow: 'rgba(59, 130, 246, 0.5)', deviceBase: '#334155', deviceHighlight: '#94a3b8', snmp: '#f97316', // Orange snmpTrap: '#ef4444', // Red netconf: '#06b6d4', // Cyan netcon

创建一个扁平化2.5D科技风格的SVG动画,用于演示网络管理

移开即停止播放
import React, { useState, useEffect, useRef, useMemo, useCallback } from 'react'; import { motion, AnimatePresence } from 'framer-motion'; import { Play, Pause, RotateCcw, BarChart3, Settings2, Info } from 'lucide-react'; // ========================================== // Constants & Config // ========================================== const WIDTH = 1200; const HEIGHT = 700; const ARRAY_SIZE = 40; const MIN_VAL = 10; const MAX_VAL = 500; const BAR_WIDTH = 20; const GAP = 8; // Colors const COLOR

绘制七大经典排序的动画原理图,要有按钮来切换要看的排序原理

移开即停止播放
import React, { useState, useEffect, useRef, useMemo, useCallback } from 'react'; const WIDTH = 1200; const HEIGHT = 700; const GLOBE_RADIUS = 220; const DOT_SIZE = 4; const COLOR_BG = "#0f172a"; const COLOR_GLOBE_WIRE = "rgba(56, 189, 248, 0.3)"; // Sky blue transparent const COLOR_GLOBE_FILL = "rgba(15, 23, 42, 0.9)"; // Dark fill to hide back const COLOR_CITY = "#ffffff"; const COLOR_ROUTE = "#f43f5e"; // Rose const COLOR_ROUTE_DIM = "rgba(244, 63, 94, 0.2)"; const COLOR_PLANE = "#fbbf24"; /

绘制一个旅游线路图,要有一个3d可旋转的地球,然后可以看到旅

广告

Ads
移开即停止播放
'use client'; import React, { useState, useEffect, useRef, useMemo } from 'react'; import { motion, AnimatePresence } from 'framer-motion'; import { Crosshair, Shield, Sword, Wind, Map as MapIcon, Target } from 'lucide-react'; // ----------------------------------------------------------------------------- // Utility & Constants // ----------------------------------------------------------------------------- const WIDTH = 1200; const HEIGHT = 700; const PHASE_DURATION = 5000; // ms per phase /

创建一个基于SVG的战术演示动画,采用俯瞰视角的古代军事地图

移开即停止播放
```javascript 'use client'; import React, { useState, useEffect, useMemo, useRef, useCallback } from 'react'; import { motion, AnimatePresence } from 'framer-motion'; import * as Lucide from 'lucide-react'; import * as d3 from 'd3'; // ----------------------------------------------------------------------------- // 数据定义:毛泽东生平关键节点 (1893-1976) // ----------------------------------------------------------------------------- const MAO_PATH = [ { name: "湖南韶山", year: 1893, type: "birth", desc: "189

毛泽东生平地理名称时间线(1893-1976) 时间段 地点

移开即停止播放
```javascript 'use client'; import React, { useState, useEffect, useRef, useMemo } from 'react'; const WIDTH = 1200; const HEIGHT = 700; const CENTER_X = WIDTH / 2; const CENTER_Y = HEIGHT / 2; const NODE_RADIUS = 220; // Helper to calculate distance const dist = (x1, y1, x2, y2) => Math.sqrt((x2 - x1) ** 2 + (y2 - y1) ** 2); // Easing function for smooth movement const easeInOutQuad = (t) => t < 0.5 ? 2 * t * t : -1 + (4 - 2 * t) * t; export default function SciFiSwitchAnimation() { // A

科幻感的交换机数据动画

移开即停止播放
```jsx 'use client'; import React, { useState, useEffect, useRef, useMemo, useCallback } from 'react'; import * as Lucide from 'lucide-react'; // ========================================== // 核心常量配置 // ========================================== const CONSTANTS = { WIDTH: 1200, HEIGHT: 700, COLORS: { BG: '#02020A', GRID: '#00FFFF', LASER: '#FFFFFF', TEXT_MAIN: '#E0F2FE', TEXT_SUB: '#64748B', ACCENT: '#0EA5E9' }, POS: { EMITTER: { X: 150, Y: 350 }, PRISM:

画布背景设定为深邃的午夜蓝(#02020A),叠加精细的青色