-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmatplotlib.yaml
More file actions
213 lines (213 loc) · 6.73 KB
/
matplotlib.yaml
File metadata and controls
213 lines (213 loc) · 6.73 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
library: matplotlib
specification_id: arc-basic
created: '2025-12-23T08:48:38Z'
updated: '2026-02-23T12:00:00+00:00'
generated_by: claude-opus-4-6
workflow_run: 20455960794
issue: 0
python_version: '3.14.3'
library_version: 3.10.8
preview_url: https://storage.googleapis.com/pyplots-images/plots/arc-basic/matplotlib/plot.png
preview_thumb: https://storage.googleapis.com/pyplots-images/plots/arc-basic/matplotlib/plot_thumb.png
preview_html: null
quality_score: null
impl_tags:
dependencies: []
techniques:
- patches
- manual-ticks
patterns:
- data-generation
- iteration-over-groups
dataprep: []
styling:
- alpha-blending
- minimal-chrome
review:
strengths:
- Excellent implementation of arc diagram with proper proportional arc heights based
on node distance
- 'Clean visual design with Python-themed color palette (#306998 blue, #FFD43B yellow)'
- Appropriate use of semi-transparency (alpha=0.55) for overlapping arcs
- Weight-based arc thickness provides clear visual differentiation of connection
strength
- Well-chosen realistic scenario (character interactions) that clearly demonstrates
the plot type
weaknesses:
- Missing a legend showing what arc thickness represents (weight scale)
- Could use color coding for different edge types or weights as mentioned in spec
notes
- Library features score could improve by using colormap for arcs based on weight
image_description: The plot displays a basic arc diagram showing character interactions.
Ten nodes (Alice, Bob, Carol, David, Eve, Frank, Grace, Henry, Iris, Jack) are
arranged horizontally along a baseline, represented as yellow circles with blue
borders. Curved blue arcs connect various character pairs above the baseline,
with arc height proportional to the distance between connected characters. For
example, the Alice-Jack connection spans the full width with the tallest arc,
while adjacent connections like Alice-Bob have shorter arcs. Arc thickness varies
based on connection weight, and arcs use semi-transparency (alpha ~0.55) to handle
overlapping connections. The title "Character Interactions · arc-basic · matplotlib
· pyplots.ai" appears at the top. Node labels are displayed below each node in
bold blue text.
criteria_checklist:
visual_quality:
score: 36
max: 40
items:
- id: VQ-01
name: Text Legibility
score: 10
max: 10
passed: true
comment: Title at 24pt, node labels at 16pt bold, all clearly readable
- id: VQ-02
name: No Overlap
score: 8
max: 8
passed: true
comment: No overlapping text; arcs use transparency for overlapping connections
- id: VQ-03
name: Element Visibility
score: 7
max: 8
passed: true
comment: Nodes well-sized (s=500), arcs visible with appropriate thickness
based on weights
- id: VQ-04
name: Color Accessibility
score: 5
max: 5
passed: true
comment: Single blue color scheme (#306998) with yellow accent (#FFD43B),
colorblind-safe
- id: VQ-05
name: Layout Balance
score: 4
max: 5
passed: true
comment: Good proportions, though some whitespace at top could be reduced
- id: VQ-06
name: Axis Labels
score: 2
max: 2
passed: true
comment: N/A for arc diagram (axes turned off appropriately)
- id: VQ-07
name: Grid & Legend
score: 0
max: 2
passed: true
comment: No legend present, though one showing weight scale could add value
spec_compliance:
score: 25
max: 25
items:
- id: SC-01
name: Plot Type
score: 8
max: 8
passed: true
comment: Correct arc diagram with nodes along horizontal line and curved arcs
above
- id: SC-02
name: Data Mapping
score: 5
max: 5
passed: true
comment: Nodes positioned sequentially, edges connect proper node pairs
- id: SC-03
name: Required Features
score: 5
max: 5
passed: true
comment: Arc height proportional to distance, semi-transparent arcs for overlaps,
readable labels, weight-based thickness
- id: SC-04
name: Data Range
score: 3
max: 3
passed: true
comment: All nodes and connections visible within bounds
- id: SC-05
name: Legend Accuracy
score: 2
max: 2
passed: true
comment: N/A for this plot type
- id: SC-06
name: Title Format
score: 2
max: 2
passed: true
comment: 'Uses correct format: "Character Interactions · arc-basic · matplotlib
· pyplots.ai"'
data_quality:
score: 18
max: 20
items:
- id: DQ-01
name: Feature Coverage
score: 7
max: 8
passed: true
comment: Shows short-range and long-range connections, varying weights, but
could demonstrate bidirectional connections or different edge types
- id: DQ-02
name: Realistic Context
score: 7
max: 7
passed: true
comment: Character interactions in a story chapter is a perfect real-world
scenario for arc diagrams
- id: DQ-03
name: Appropriate Scale
score: 4
max: 5
passed: true
comment: 10 nodes with 15 edges is appropriate; weights 1-3 reasonable
code_quality:
score: 10
max: 10
items:
- id: CQ-01
name: KISS Structure
score: 3
max: 3
passed: true
comment: Clean imports → data → plot → save structure, no functions/classes
- id: CQ-02
name: Reproducibility
score: 3
max: 3
passed: true
comment: Uses np.random.seed(42), though data is deterministic anyway
- id: CQ-03
name: Clean Imports
score: 2
max: 2
passed: true
comment: Only necessary imports (matplotlib.patches, pyplot, numpy)
- id: CQ-04
name: No Deprecated API
score: 1
max: 1
passed: true
comment: Modern matplotlib API used
- id: CQ-05
name: Output Correct
score: 1
max: 1
passed: true
comment: Saves as 'plot.png'
library_features:
score: 2
max: 5
items:
- id: LF-01
name: Uses distinctive library features
score: 2
max: 5
passed: false
comment: Uses matplotlib.patches.Arc which is appropriate, but doesn't leverage
other matplotlib features like colormaps for edge colors or annotations
verdict: APPROVED