返回 ppt-master
pareto_chart.svg
根目录 / skills / ppt-master / templates / charts / pareto_chart.svg
1 <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1280 720" width="1280" height="720"
2 font-family="-apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif"
3 font-size="12">
4 <!--
5 Pareto Chart Template
6 Purpose: 80/20 analysis, identify key factors
7 Use cases: Quality issue analysis, sales contribution, cost structure, defect attribution
8 Supports: Bar chart + cumulative line chart combination
9 -->
10 <defs>
11 <!-- Gradient for the "Vital Few" (Top 80% contributors) -->
12 <linearGradient id="vitalGrad" x1="0%" y1="0%" x2="0%" y2="100%">
13 <stop offset="0%" stop-color="#818CF8"/> <!-- Indigo-400 -->
14 <stop offset="100%" stop-color="#4F46E5"/> <!-- Indigo-600 -->
15 </linearGradient>
16 </defs>
17 <!-- Background -->
18 <rect width="1280" height="720" fill="#F8FAFC"/>
19 <!-- Title Area -->
20 <g id="header" data-pptx-bounds="250 25 780 70">
21 <text x="640" y="55"
22 font-size="32" font-weight="800" fill="#0F172A" text-anchor="middle">Product Quality Issue Pareto Analysis</text>
23 <text x="640" y="85"
24 font-size="14" font-weight="700" fill="#64748B" letter-spacing="1" text-anchor="middle">2025 Q4 — CUSTOMER COMPLAINT ATTRIBUTION (TOTAL: 1,000 CASES)</text>
25 </g>
26 <!-- Legend -->
27 <g id="legend" transform="translate(150, 110)" data-pptx-bounds="150 104 500 20">
28 <!-- Bar: Vital Few -->
29 <rect x="0" y="0" width="24" height="12" fill="url(#vitalGrad)" rx="2"/>
30 <text x="32" y="10" font-size="13" font-weight="600" fill="#475569">Vital Few (80%)</text>
31 <!-- Bar: Trivial Many -->
32 <rect x="150" y="0" width="24" height="12" fill="#CBD5E1" rx="2"/>
33 <text x="182" y="10" font-size="13" font-weight="600" fill="#475569">Trivial Many</text>
34 <!-- Line: Cumulative -->
35 <line x1="290" y1="6" x2="320" y2="6" stroke="#F43F5E" stroke-width="3"/>
36 <circle cx="305" cy="6" r="4" fill="#FFFFFF" stroke="#F43F5E" stroke-width="2"/>
37 <text x="330" y="10" font-size="13" font-weight="600" fill="#475569">Cumulative %</text>
38 </g>
39 <g id="pareto_chart" data-pptx-bounds="56 100 1168 530" data-pptx-replace-with="chart">
40 <metadata type="application/json">
41 {
42 "name": "pareto_chart",
43 "x": 56,
44 "y": 100,
45 "width": 1168,
46 "height": 528,
47 "type": "pareto",
48 "categories": ["Function Error", "Appearance", "Missing Parts", "Ship Damage", "Manual Error", "Packaging", "Other"],
49 "values": [350, 220, 150, 120, 70, 50, 40],
50 "style": {"colors": ["#4F46E5", "#CBD5E1", "#F43F5E"]}
51 }
52 </metadata>
53 <!-- ==================== Axes and Grids ==================== -->
54 <!-- X-axis -->
55 <line x1="130" y1="580" x2="1150" y2="580" stroke="#CBD5E1" stroke-width="2"/>
56 <!-- Y-axis (Left - Count) -->
57 <line x1="130" y1="130" x2="130" y2="580" stroke="#CBD5E1" stroke-width="2"/>
58 <text x="70" y="360" font-size="14" font-weight="700" fill="#475569" text-anchor="middle" transform="rotate(-90, 70, 360)">Complaint Count</text>
59 <text x="115" y="584" font-size="13" font-weight="600" fill="#64748B" text-anchor="end">0</text>
60 <text x="115" y="484" font-size="13" font-weight="600" fill="#64748B" text-anchor="end">100</text>
61 <text x="115" y="384" font-size="13" font-weight="600" fill="#64748B" text-anchor="end">200</text>
62 <text x="115" y="284" font-size="13" font-weight="600" fill="#64748B" text-anchor="end">300</text>
63 <text x="115" y="184" font-size="13" font-weight="600" fill="#64748B" text-anchor="end">400</text>
64 <!-- Y-axis (Right - Percentage) -->
65 <line x1="1150" y1="130" x2="1150" y2="580" stroke="#CBD5E1" stroke-width="2"/>
66 <text x="1210" y="360" font-size="14" font-weight="700" fill="#F43F5E" text-anchor="middle" transform="rotate(90, 1210, 360)">Cumulative %</text>
67 <text x="1165" y="584" font-size="13" font-weight="700" fill="#F43F5E">0%</text>
68 <text x="1165" y="494" font-size="13" font-weight="700" fill="#F43F5E">20%</text>
69 <text x="1165" y="404" font-size="13" font-weight="700" fill="#F43F5E">40%</text>
70 <text x="1165" y="314" font-size="13" font-weight="700" fill="#F43F5E">60%</text>
71 <text x="1165" y="224" font-size="13" font-weight="700" fill="#F43F5E">80%</text>
72 <text x="1165" y="134" font-size="13" font-weight="700" fill="#F43F5E">100%</text>
73 <!-- Horizontal Grid Lines -->
74 <line x1="130" y1="490" x2="1150" y2="490" stroke="#E2E8F0" stroke-width="1" stroke-dasharray="4 4"/>
75 <line x1="130" y1="400" x2="1150" y2="400" stroke="#E2E8F0" stroke-width="1" stroke-dasharray="4 4"/>
76 <line x1="130" y1="310" x2="1150" y2="310" stroke="#E2E8F0" stroke-width="1" stroke-dasharray="4 4"/>
77 <!-- 80% Reference Line -->
78 <line x1="130" y1="220" x2="1150" y2="220" stroke="#F43F5E" stroke-width="1.5" stroke-dasharray="6 4" stroke-opacity="0.6"/>
79 <!-- Divider between Vital Few and Trivial Many -->
80 <line x1="660" y1="130" x2="660" y2="580" stroke="#94A3B8" stroke-width="1.5" stroke-dasharray="6 4" stroke-opacity="0.8"/>
81 <text x="645" y="150" font-size="13" font-weight="800" fill="#64748B" text-anchor="end">VITAL FEW (84%)</text>
82 <text x="675" y="150" font-size="13" font-weight="800" fill="#94A3B8" text-anchor="start">TRIVIAL MANY (16%)</text>
83 <!-- chart-plot-area: 130,130,1150,580 -->
84 <!-- ==================== Bar Data ==================== -->
85 <!-- 1. Function Error: 350 (35%) - Cumulative 35% -->
86 <rect x="180" y="230" width="80" height="350" fill="url(#vitalGrad)" rx="4"/>
87 <text x="220" y="215" font-size="14" font-weight="800" fill="#4F46E5" text-anchor="middle">350</text>
88 <text x="220" y="605" font-size="13" font-weight="700" fill="#1E293B" text-anchor="middle">Function Error</text>
89 <text x="220" y="625" font-weight="600" fill="#64748B" text-anchor="middle">35%</text>
90 <!-- 2. Appearance: 220 (22%) - Cumulative 57% -->
91 <rect x="310" y="360" width="80" height="220" fill="url(#vitalGrad)" rx="4"/>
92 <text x="350" y="345" font-size="14" font-weight="800" fill="#4F46E5" text-anchor="middle">220</text>
93 <text x="350" y="605" font-size="13" font-weight="700" fill="#1E293B" text-anchor="middle">Appearance</text>
94 <text x="350" y="625" font-weight="600" fill="#64748B" text-anchor="middle">22%</text>
95 <!-- 3. Missing Parts: 150 (15%) - Cumulative 72% -->
96 <rect x="440" y="430" width="80" height="150" fill="url(#vitalGrad)" rx="4"/>
97 <text x="480" y="415" font-size="14" font-weight="800" fill="#4F46E5" text-anchor="middle">150</text>
98 <text x="480" y="605" font-size="13" font-weight="700" fill="#1E293B" text-anchor="middle">Missing Parts</text>
99 <text x="480" y="625" font-weight="600" fill="#64748B" text-anchor="middle">15%</text>
100 <!-- 4. Ship Damage: 120 (12%) - Cumulative 84% -->
101 <rect x="570" y="460" width="80" height="120" fill="url(#vitalGrad)" rx="4"/>
102 <text x="610" y="445" font-size="14" font-weight="800" fill="#4F46E5" text-anchor="middle">120</text>
103 <text x="610" y="605" font-size="13" font-weight="700" fill="#1E293B" text-anchor="middle">Ship Damage</text>
104 <text x="610" y="625" font-weight="600" fill="#64748B" text-anchor="middle">12%</text>
105 <!-- 5. Manual Error: 70 (7%) - Cumulative 91% -->
106 <rect x="700" y="510" width="80" height="70" fill="#CBD5E1" rx="4"/>
107 <text x="740" y="495" font-size="14" font-weight="800" fill="#64748B" text-anchor="middle">70</text>
108 <text x="740" y="605" font-size="13" font-weight="700" fill="#1E293B" text-anchor="middle">Manual Error</text>
109 <text x="740" y="625" font-weight="600" fill="#64748B" text-anchor="middle">7%</text>
110 <!-- 6. Packaging: 50 (5%) - Cumulative 96% -->
111 <rect x="830" y="530" width="80" height="50" fill="#CBD5E1" rx="4"/>
112 <text x="870" y="515" font-size="14" font-weight="800" fill="#64748B" text-anchor="middle">50</text>
113 <text x="870" y="605" font-size="13" font-weight="700" fill="#1E293B" text-anchor="middle">Packaging</text>
114 <text x="870" y="625" font-weight="600" fill="#64748B" text-anchor="middle">5%</text>
115 <!-- 7. Other: 40 (4%) - Cumulative 100% -->
116 <rect x="960" y="540" width="80" height="40" fill="#CBD5E1" rx="4"/>
117 <text x="1000" y="525" font-size="14" font-weight="800" fill="#64748B" text-anchor="middle">40</text>
118 <text x="1000" y="605" font-size="13" font-weight="700" fill="#1E293B" text-anchor="middle">Other</text>
119 <text x="1000" y="625" font-weight="600" fill="#64748B" text-anchor="middle">4%</text>
120 <!-- ==================== Cumulative Line Chart ==================== -->
121 <polyline points="220,422.5 350,323.5 480,256 610,202 740,170.5 870,148 1000,130"
122 fill="none" stroke="#F43F5E" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"/>
123 <g fill="#FFFFFF" stroke="#F43F5E" stroke-width="2.5">
124 <circle cx="220" cy="422.5" r="5"/>
125 <circle cx="350" cy="323.5" r="5"/>
126 <circle cx="480" cy="256" r="5"/>
127 <circle cx="610" cy="202" r="5"/>
128 <circle cx="740" cy="170.5" r="5"/>
129 <circle cx="870" cy="148" r="5"/>
130 <circle cx="1000" cy="130" r="5"/>
131 </g>
132 <text x="220" y="405" font-weight="800" fill="#E11D48" text-anchor="middle">35%</text>
133 <text x="350" y="306" font-weight="800" fill="#E11D48" text-anchor="middle">57%</text>
134 <text x="480" y="238" font-weight="800" fill="#E11D48" text-anchor="middle">72%</text>
135 <text x="610" y="184" font-weight="800" fill="#E11D48" text-anchor="middle">84%</text>
136 <text x="740" y="152" font-weight="800" fill="#E11D48" text-anchor="middle">91%</text>
137 <text x="870" y="130" font-weight="800" fill="#E11D48" text-anchor="middle">96%</text>
138 <text x="1000" y="112" font-weight="800" fill="#E11D48" text-anchor="middle">100%</text>
139 </g>
140 <!-- ==================== Insight Box ==================== -->
141 <g id="insight" data-pptx-bounds="130 646 1020 58">
142 <rect x="130" y="646" width="1020" height="58" rx="8" fill="#FFF1F2" stroke="#FDA4AF" stroke-width="1.5"/>
143 <text x="150" y="670" font-size="14" font-weight="800" fill="#9F1239">Key Finding:<tspan dx="8" font-weight="600" fill="#BE123C">Top 4 issues account for 84% of complaints — Prioritize resolution</tspan></text>
144 <text x="245" y="692" font-size="13" font-weight="500" fill="#F43F5E">| Action: Enhance QC process, optimize packaging, enforce part checks</text>
145 </g>
146 </svg>
147
147 lines Plain Text