You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Excellent real-world scenario using the 2008-2009 recession as the highlighted
27
-
period
28
-
- Clean visual design with appropriate use of semi-transparent fill (alpha=0.25)
29
-
- Well-labeled span with annotation text positioned inside the highlighted region
30
-
- Proper title format following pyplots.ai conventions
31
-
- Good use of ggplot grammar with geom_rect, geom_line, and geom_text layering
18
+
- Compelling, real-world recession scenario that immediately communicates the purpose
19
+
of span plots
20
+
- All font sizes explicitly set at correct values for the large-canvas target resolution
21
+
- geom_rect() with alpha=0.25 is the idiomatic lets-plot approach; alpha is within
22
+
the spec-required 0.2-0.3 range
23
+
- In-span annotation and legend together provide layered context for the highlighted
24
+
region
25
+
- Reproducible with np.random.seed(42) and clean linear code structure
26
+
- HTML export leverages a distinctive lets-plot capability
32
27
weaknesses:
33
-
- Axis label for y-axis lacks units (could be "Economic Index (points)" or similar)
34
-
- Legend title "Highlighted Region" is redundant since it only shows one category
35
-
- Does not demonstrate horizontal span variant mentioned in spec (vertical only)
36
-
image_description: The plot displays a line chart showing an "Economic Index" over
37
-
time from 2006 to 2011. A semi-transparent yellow/gold vertical span highlights
38
-
the "Recession 2008-2009" period, clearly labeled at the top of the highlighted
39
-
region. The line is rendered in Python blue (#306998) with both line segments
40
-
and circular markers at each data point. The data shows a decline from ~105 in
41
-
2006, bottoming out around 74 during the recession, then recovering to ~119 by
42
-
late 2011. The title "span-basic · letsplot · pyplots.ai" appears at the top.
43
-
Axis labels show "Year" on x-axis and "Economic Index" on y-axis. A legend on
44
-
the right identifies the yellow region as "Highlighted Region - Recession Period".
45
-
The overall layout is clean with a light gray background and subtle grid lines.
28
+
- 'Title uses wrong domain: pyplots.ai instead of anyplot.ai — must match {spec-id}
29
+
· {library} · anyplot.ai format'
30
+
- 'Source code uses color=#306998 (Python Blue) for line and points — must be #009E73
31
+
(Okabe-Ito position 1, brand green)'
32
+
- No ANYPLOT_THEME environment variable handling — code must read os.getenv(ANYPLOT_THEME,
33
+
light) and apply adaptive background/text/grid color tokens
34
+
- 'Wrong output filenames: saves to plot.png and plot.html instead of plot-{THEME}.png
35
+
and plot-{THEME}.html'
36
+
- Full horizontal and vertical grid lines for a line chart — restrict to y-axis
37
+
(horizontal) grid only per style guide
38
+
- geom_point overlaid on 72 monthly data points adds unnecessary visual noise —
39
+
remove or reduce significantly for a dense time series
40
+
image_description: |-
41
+
Light render (plot-light.png):
42
+
Background: Warm off-white approximately #FAF8F1 — NOT pure white, correct theme surface.
43
+
Chrome: Title at top ("span-basic · letsplot · [domain].ai"), axis label "Economic Index" (y-axis), "Year" (x-axis), tick labels 2006-2011 — all dark-colored and clearly readable against the light background.
44
+
Data: Main line is a green/teal color consistent with #009E73 (Okabe-Ito position 1). Semi-transparent pale yellow span covers 2008 to mid-2009. "Recession 2008-2009" annotation text inside span. Legend on right shows yellow swatch labeled "Recession Period".
45
+
Legibility verdict: PASS
46
+
47
+
Dark render (plot-dark.png):
48
+
Background: Warm near-black approximately #1A1A17 — NOT pure black, correct dark theme surface.
49
+
Chrome: Title, axis labels, tick labels, legend text — all appear light-colored (white/near-white) and clearly readable against the dark background. No dark-on-dark text failures observed.
50
+
Data: Main line retains identical green/teal color as in light render — data colors are consistent across themes. Span fill appears golden/brownish (#FFD43B at 25% opacity over dark background). Annotation text "Recession 2008-2009" is visible.
51
+
Legibility verdict: PASS
46
52
criteria_checklist:
47
53
visual_quality:
48
-
score: 37
49
-
max: 40
54
+
score: 28
55
+
max: 30
50
56
items:
51
57
- id: VQ-01
52
58
name: Text Legibility
53
-
score: 10
54
-
max: 10
59
+
score: 8
60
+
max: 8
55
61
passed: true
56
-
comment: Title, axis labels, tick marks, and legend are all clearly readable
57
-
with appropriate font sizes
62
+
comment: 'All font sizes explicitly set: plot_title=24, axis_title=20, axis_text=16,
63
+
legend_text=16, legend_title=18. All text readable in both renders.'
58
64
- id: VQ-02
59
65
name: No Overlap
60
-
score: 8
61
-
max: 8
66
+
score: 6
67
+
max: 6
62
68
passed: true
63
-
comment: No overlapping text elements, all labels well-spaced
69
+
comment: No overlapping text or elements.
64
70
- id: VQ-03
65
71
name: Element Visibility
66
-
score: 7
67
-
max: 8
72
+
score: 5
73
+
max: 6
68
74
passed: true
69
-
comment: Line and markers are appropriately sized for the data density (72
70
-
points); markers could be slightly smaller to reduce visual clutter
75
+
comment: Line clearly visible. geom_point on 72 monthly observations creates
76
+
some noise; points not necessary alongside the continuous line.
71
77
- id: VQ-04
72
78
name: Color Accessibility
73
-
score: 5
74
-
max: 5
79
+
score: 2
80
+
max: 2
75
81
passed: true
76
-
comment: Blue line on yellow span provides excellent contrast; colorblind-safe
82
+
comment: Good contrast in both themes; CVD-safe.
77
83
- id: VQ-05
78
-
name: Layout Balance
79
-
score: 5
80
-
max: 5
84
+
name: Layout & Canvas
85
+
score: 4
86
+
max: 4
81
87
passed: true
82
-
comment: Plot fills canvas appropriately with balanced margins
0 commit comments