返回 ppt-master
grouped_bar_chart.svg
根目录 / skills / ppt-master / templates / charts / grouped_bar_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 Grouped Bar Chart Template
6 Usage: Multi-series data comparison
7 Scenarios: Product/period/category comparison, YoY/QoQ analysis
8 Supports: 4 groups × 3 series (adjustable to 3-6 groups, 2-4 series)
9 -->
10 <!-- Background -->
11 <rect width="1280" height="720" fill="#F8FAFC"/>
12 <!-- Title -->
13 <g id="header" data-pptx-bounds="40 15 1200 125">
14 <text x="60" y="70"
15 font-size="32" font-weight="700" fill="#0F172A">Quarterly Revenue by Division</text>
16 <text x="60" y="105"
17 font-size="18" fill="#64748B">Fiscal Year 2025 · Unit: $M</text>
18 </g>
19 <!-- Legend -->
20 <g id="legend" data-pptx-bounds="856 63 424 34" transform="translate(900, 70)">
21 <rect x="0" y="0" width="20" height="20" rx="3" fill="#2563EB"/>
22 <text x="30" y="15"
23 font-size="15" fill="#475569">Division A</text>
24 <rect x="120" y="0" width="20" height="20" rx="3" fill="#059669"/>
25 <text x="150" y="15"
26 font-size="15" fill="#475569">Division B</text>
27 <rect x="240" y="0" width="20" height="20" rx="3" fill="#D97706"/>
28 <text x="270" y="15"
29 font-size="15" fill="#475569">Division C</text>
30 </g>
31 <!-- Chart Area -->
32 <g id="grouped_bar_chart" data-pptx-bounds="19 136 1243 497" data-pptx-replace-with="chart">
33 <metadata type="application/json">
34 {
35 "name": "grouped_bar_chart",
36 "x": 125,
37 "y": 165,
38 "width": 1055,
39 "height": 439.5,
40 "type": "column",
41 "categories": ["Q1", "Q2", "Q3", "Q4"],
42 "series": [
43 {"name": "Division A", "values": [120, 145, 168, 185]},
44 {"name": "Division B", "values": [85, 98, 112, 125]},
45 {"name": "Division C", "values": [65, 78, 92, 108]}
46 ],
47 "style": {"colors": ["#3B82F6", "#10B981", "#F59E0B"]}
48 }
49 </metadata>
50 <g id="chartArea">
51 <!-- Y-Axis Grid Lines -->
52 <line x1="140" y1="570" x2="1180" y2="570" stroke="#E2E8F0" stroke-width="1" stroke-dasharray="4,4"/>
53 <line x1="140" y1="480" x2="1180" y2="480" stroke="#E2E8F0" stroke-width="1" stroke-dasharray="4,4"/>
54 <line x1="140" y1="390" x2="1180" y2="390" stroke="#E2E8F0" stroke-width="1" stroke-dasharray="4,4"/>
55 <line x1="140" y1="300" x2="1180" y2="300" stroke="#E2E8F0" stroke-width="1" stroke-dasharray="4,4"/>
56 <line x1="140" y1="210" x2="1180" y2="210" stroke="#E2E8F0" stroke-width="1" stroke-dasharray="4,4"/>
57 <!-- Y-Axis Tick Labels -->
58 <text x="125" y="575"
59 font-size="14" fill="#64748B" text-anchor="end">0</text>
60 <text x="125" y="485"
61 font-size="14" fill="#64748B" text-anchor="end">50</text>
62 <text x="125" y="395"
63 font-size="14" fill="#64748B" text-anchor="end">100</text>
64 <text x="125" y="305"
65 font-size="14" fill="#64748B" text-anchor="end">150</text>
66 <text x="125" y="215"
67 font-size="14" fill="#64748B" text-anchor="end">200</text>
68 <!-- Axes -->
69 <line x1="140" y1="165" x2="140" y2="570" stroke="#94A3B8" stroke-width="2"/>
70 <line x1="140" y1="570" x2="1180" y2="570" stroke="#94A3B8" stroke-width="2"/>
71 <!-- chart-plot-area: 140,165,1180,570 -->
72 <!-- Q1 Group -->
73 <!-- Q1 Div A: 120M (Height 216px) -->
74 <rect x="170" y="354" width="60" height="216" rx="4" fill="#2563EB"/>
75 <text x="200" y="342"
76 font-size="14" font-weight="600" fill="#0F172A" text-anchor="middle">120</text>
77 <!-- Q1 Div B: 85M (Height 153px) -->
78 <rect x="240" y="417" width="60" height="153" rx="4" fill="#059669"/>
79 <text x="270" y="405"
80 font-size="14" font-weight="600" fill="#0F172A" text-anchor="middle">85</text>
81 <!-- Q1 Div C: 65M (Height 117px) -->
82 <rect x="310" y="453" width="60" height="117" rx="4" fill="#D97706"/>
83 <text x="340" y="441"
84 font-size="14" font-weight="600" fill="#0F172A" text-anchor="middle">65</text>
85 <!-- Q1 Label -->
86 <text x="255" y="600"
87 font-size="18" fill="#475569" text-anchor="middle">Q1</text>
88 <!-- Q2 Group -->
89 <!-- Q2 Div A: 145M (Height 261px) -->
90 <rect x="430" y="309" width="60" height="261" rx="4" fill="#2563EB"/>
91 <text x="460" y="297"
92 font-size="14" font-weight="600" fill="#0F172A" text-anchor="middle">145</text>
93 <!-- Q2 Div B: 98M (Height 176px) -->
94 <rect x="500" y="394" width="60" height="176" rx="4" fill="#059669"/>
95 <text x="530" y="382"
96 font-size="14" font-weight="600" fill="#0F172A" text-anchor="middle">98</text>
97 <!-- Q2 Div C: 78M (Height 140px) -->
98 <rect x="570" y="430" width="60" height="140" rx="4" fill="#D97706"/>
99 <text x="600" y="418"
100 font-size="14" font-weight="600" fill="#0F172A" text-anchor="middle">78</text>
101 <!-- Q2 Label -->
102 <text x="515" y="600"
103 font-size="18" fill="#475569" text-anchor="middle">Q2</text>
104 <!-- Q3 Group -->
105 <!-- Q3 Div A: 168M (Height 302px) -->
106 <rect x="690" y="268" width="60" height="302" rx="4" fill="#2563EB"/>
107 <text x="720" y="256"
108 font-size="14" font-weight="600" fill="#0F172A" text-anchor="middle">168</text>
109 <!-- Q3 Div B: 112M (Height 202px) -->
110 <rect x="760" y="368" width="60" height="202" rx="4" fill="#059669"/>
111 <text x="790" y="356"
112 font-size="14" font-weight="600" fill="#0F172A" text-anchor="middle">112</text>
113 <!-- Q3 Div C: 92M (Height 166px) -->
114 <rect x="830" y="404" width="60" height="166" rx="4" fill="#D97706"/>
115 <text x="860" y="392"
116 font-size="14" font-weight="600" fill="#0F172A" text-anchor="middle">92</text>
117 <!-- Q3 Label -->
118 <text x="775" y="600"
119 font-size="18" fill="#475569" text-anchor="middle">Q3</text>
120 <!-- Q4 Group -->
121 <!-- Q4 Div A: 185M (Height 333px) -->
122 <rect x="950" y="237" width="60" height="333" rx="4" fill="#2563EB"/>
123 <text x="980" y="225"
124 font-size="14" font-weight="600" fill="#0F172A" text-anchor="middle">185</text>
125 <!-- Q4 Div B: 125M (Height 225px) -->
126 <rect x="1020" y="345" width="60" height="225" rx="4" fill="#059669"/>
127 <text x="1050" y="333"
128 font-size="14" font-weight="600" fill="#0F172A" text-anchor="middle">125</text>
129 <!-- Q4 Div C: 108M (Height 194px) -->
130 <rect x="1090" y="376" width="60" height="194" rx="4" fill="#D97706"/>
131 <text x="1120" y="364"
132 font-size="14" font-weight="600" fill="#0F172A" text-anchor="middle">108</text>
133 <!-- Q4 Label -->
134 <text x="1035" y="600"
135 font-size="18" fill="#475569" text-anchor="middle">Q4</text>
136 </g>
137 </g>
138 <!-- Trend Summary Card -->
139 <g id="summaryCard" data-pptx-bounds="9 623 502 74">
140 <rect x="60" y="630" width="400" height="60" rx="8" fill="#F1F5F9" stroke="#E2E8F0" stroke-width="1"/>
141 <text x="80" y="665"
142 font-size="14" font-weight="600" fill="#475569">FY Total:</text>
143 <text x="150" y="665"
144 font-size="16" font-weight="700" fill="#3B82F6">618M</text>
145 <text x="200" y="665"
146 font-size="14" fill="#94A3B8">|</text>
147 <text x="220" y="665"
148 font-size="16" font-weight="700" fill="#10B981">420M</text>
149 <text x="270" y="665"
150 font-size="14" fill="#94A3B8">|</text>
151 <text x="290" y="665"
152 font-size="16" font-weight="700" fill="#F59E0B">343M</text>
153 <text x="80" y="645"
154 font-size="13" font-weight="600" fill="#64748B">YoY Growth: +15.2%</text>
155 </g>
156 <!-- Data Source -->
157 <g id="source" data-pptx-bounds="40 670 1200 40">
158 <text x="1220" y="695"
159 font-size="14" fill="#94A3B8" text-anchor="end">Source: Internal Financials</text>
160 </g>
161 </svg>
162
162 lines Plain Text