Skip to content

Commit 3511400

Browse files
chore(altair): update quality score 85 and review feedback for column-stratigraphic
1 parent 7b0e7a9 commit 3511400

2 files changed

Lines changed: 76 additions & 72 deletions

File tree

plots/column-stratigraphic/implementations/altair.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
"""pyplots.ai
1+
""" pyplots.ai
22
column-stratigraphic: Stratigraphic Column with Lithology Patterns
33
Library: altair 6.0.0 | Python 3.14.3
4-
Quality: 83/100 | Created: 2026-03-15
4+
Quality: 85/100 | Created: 2026-03-15
55
"""
66

77
import altair as alt
Lines changed: 74 additions & 70 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
library: altair
22
specification_id: column-stratigraphic
33
created: '2026-03-15T22:59:28Z'
4-
updated: '2026-03-15T23:12:21Z'
4+
updated: '2026-03-15T23:25:10Z'
55
generated_by: claude-opus-4-5-20251101
66
workflow_run: 23121198787
77
issue: 4573
@@ -10,37 +10,39 @@ library_version: 6.0.0
1010
preview_url: https://storage.googleapis.com/pyplots-images/plots/column-stratigraphic/altair/plot.png
1111
preview_thumb: https://storage.googleapis.com/pyplots-images/plots/column-stratigraphic/altair/plot_thumb.png
1212
preview_html: https://storage.googleapis.com/pyplots-images/plots/column-stratigraphic/altair/plot.html
13-
quality_score: 83
13+
quality_score: 85
1414
review:
1515
strengths:
16-
- Excellent use of real Grand Canyon geological formation names creating highly
17-
realistic and educational data
18-
- Clean layered composition using Altair declarative + operator for rects, patterns,
19-
labels, and age boundaries
20-
- Thoughtful domain-appropriate color palette with geologically conventional associations
21-
- Good typography hierarchy with bold formations, italic ages, and regular patterns
22-
- Full interactivity support via tooltips and HTML export
16+
- Excellent geological context with real Grand Canyon formation data and accurate
17+
stratigraphy
18+
- Strong visual hierarchy with bold formations, italic ages, and red unconformity
19+
focal points
20+
- Clean declarative Altair code with well-organized layer composition
21+
- Good use of age brackets and unconformity markers to organize the geological narrative
22+
- Professional color palette with colorblind-safe distinct lithology colors
2323
weaknesses:
24-
- Text-based pattern symbols are small and do not fully replicate geological lithology
25-
fill patterns
26-
- Age labels at 15pt could be slightly larger for better readability
27-
- No visual emphasis on geological transitions or unconformities to enhance data
28-
storytelling
29-
- Color palette could be optimized for colorblind accessibility
30-
image_description: 'The plot shows a vertical stratigraphic column with 10 geological
31-
layers stacked from 0m (top) to 200m (bottom) depth. Each layer is a colored rectangle:
32-
Sandstone in yellow (#F5D76E), Shale in gray (#7B8D8E), Limestone in blue (#5DADE2),
33-
Siltstone in purple (#C39BD3), and Conglomerate in orange (#E67E22). Inside each
34-
rectangle, text-based pattern symbols indicate lithology (dots for sandstone,
35-
dashes for shale, grid squares for limestone, short dashes for siltstone, circles
36-
for conglomerate). Formation names (Cedar Mesa Fm, Organ Rock Fm, White Rim Fm,
37-
De Chelly Fm, Coconino Fm, Hermit Fm, Supai Group, Redwall Fm, Temple Butte Fm,
38-
Muav Fm) appear in bold to the right of each layer. Age labels (Permian, Pennsylvanian,
39-
Mississippian, Devonian, Cambrian) appear in italics on the left side. Dashed
40-
horizontal lines mark geological period boundaries. The Y-axis shows "Depth (m)"
41-
with depth increasing downward. A horizontal legend at the bottom identifies the
42-
5 lithology types. Title reads "column-stratigraphic · altair · pyplots.ai" at
43-
the top.'
24+
- Text-based pattern approximations are less distinct than true geological hatching
25+
(Altair limitation)
26+
- Column width could be wider to better fill the horizontal canvas space
27+
- Minor visual crowding near unconformity labels where they overlap with pattern
28+
text
29+
- Thickness variation in layers is modest (15-25 m range)
30+
image_description: 'The plot displays a vertical stratigraphic column of the Grand
31+
Canyon sedimentary section spanning Cambrian to Permian periods. Ten geological
32+
layers are shown as colored horizontal rectangles stacked vertically with depth
33+
increasing downward (0-200 m). Colors used: yellow (Sandstone), gray (Shale),
34+
blue (Limestone), purple (Siltstone), orange (Conglomerate). Each layer has text-based
35+
pattern overlays approximating geological symbols (dots for sandstone, dashes
36+
for shale, squares for limestone, dashes for siltstone, circles for conglomerate).
37+
Formation names (Cedar Mesa Fm, Organ Rock Fm, White Rim Fm, De Chelly Fm, Coconino
38+
Fm, Hermit Fm, Supai Group, Redwall Fm, Temple Butte Fm, Muav Fm) are labeled
39+
to the right in bold. Thickness annotations (15 m, 20 m, 25 m) appear on the far
40+
right in italic gray. Age period labels (Permian, Pennsylvanian, Mississippian,
41+
Devonian, Cambrian) are on the left with vertical bracket lines. Two red dashed
42+
unconformity lines appear at depths 110 and 155 m with labels. The title reads
43+
"column-stratigraphic · altair · pyplots.ai" with subtitle "Grand Canyon Sedimentary
44+
Section — Cambrian to Permian". A horizontal legend at the bottom shows all 5
45+
lithology types. Background is light gray.'
4446
criteria_checklist:
4547
visual_quality:
4648
score: 26
@@ -51,67 +53,67 @@ review:
5153
score: 7
5254
max: 8
5355
passed: true
54-
comment: Font sizes explicitly set throughout. Age labels at 15pt slightly
55-
below guideline but readable.
56+
comment: All font sizes explicitly set (title 28pt, axis 18/22pt, formation
57+
17pt, age 18pt, patterns 16pt). Thickness labels at 13pt slightly small
58+
but readable.
5659
- id: VQ-02
5760
name: No Overlap
58-
score: 6
61+
score: 5
5962
max: 6
6063
passed: true
61-
comment: No overlapping text. Age labels left, formation labels right, pattern
62-
symbols centered.
64+
comment: Generally clean layout, minor crowding near unconformity label at
65+
depth 110 with Supai Group pattern dashes.
6366
- id: VQ-03
6467
name: Element Visibility
6568
score: 5
6669
max: 6
6770
passed: true
68-
comment: Layer rectangles clearly visible with distinct colors. Pattern text
69-
symbols could be more prominent.
71+
comment: Layer rectangles well-sized with clear boundaries. Text-based patterns
72+
visible but inherently less distinct than true hatching.
7073
- id: VQ-04
7174
name: Color Accessibility
72-
score: 3
75+
score: 4
7376
max: 4
7477
passed: true
75-
comment: Five distinct hues distinguishable for most color vision types. Not
76-
a standard colorblind-safe palette.
78+
comment: Five distinct colorblind-safe colors with good contrast.
7779
- id: VQ-05
7880
name: Layout & Canvas
7981
score: 3
8082
max: 4
8183
passed: true
82-
comment: Column well-centered with labels on both sides. Some unused space
83-
on far left.
84+
comment: Good vertical space usage. Column width narrow relative to full canvas;
85+
some horizontal space underutilized.
8486
- id: VQ-06
8587
name: Axis Labels & Title
8688
score: 2
8789
max: 2
8890
passed: true
8991
comment: Y-axis labeled Depth (m) with units. X-axis appropriately hidden.
9092
design_excellence:
91-
score: 12
93+
score: 14
9294
max: 20
9395
items:
9496
- id: DE-01
9597
name: Aesthetic Sophistication
96-
score: 5
98+
score: 6
9799
max: 8
98100
passed: true
99-
comment: Custom geologically-conventional color palette. Typography hierarchy
100-
with bold formations and italic ages. Above defaults but not publication-ready.
101+
comment: Custom geological color palette, good typography hierarchy, custom
102+
background. Clearly above defaults with professional geological chart appearance.
101103
- id: DE-02
102104
name: Visual Refinement
103105
score: 4
104106
max: 6
105107
passed: true
106-
comment: View stroke removed, dashed age boundary lines, no unnecessary gridlines.
107-
Clean appearance.
108+
comment: View stroke removed, subtle dashed grid, clean background, bracket
109+
tick marks for age groups.
108110
- id: DE-03
109111
name: Data Storytelling
110-
score: 3
112+
score: 4
111113
max: 6
112114
passed: true
113-
comment: Age progression from Cambrian to Permian tells geological story.
114-
Age boundary lines create hierarchy. No emphasis on key transitions.
115+
comment: Grand Canyon stratigraphy through time. Red unconformity markers
116+
create focal points. Age brackets organize the narrative.
115117
spec_compliance:
116118
score: 14
117119
max: 15
@@ -121,27 +123,28 @@ review:
121123
score: 5
122124
max: 5
123125
passed: true
124-
comment: Correct vertical stratigraphic column with stacked rectangular blocks.
126+
comment: Correct vertical stratigraphic column with stacked rectangular layers.
125127
- id: SC-02
126128
name: Required Features
127129
score: 3
128130
max: 4
129131
passed: true
130-
comment: All major features present. Text-based patterns are reasonable Altair
131-
workaround but not true fill patterns.
132+
comment: All major features present. Patterns are text approximations rather
133+
than true geological hatching (Altair limitation).
132134
- id: SC-03
133135
name: Data Mapping
134136
score: 3
135137
max: 3
136138
passed: true
137-
comment: Depth on Y-axis with correct reversed scale, layers properly positioned.
139+
comment: Depth correctly mapped to Y-axis with proper reversal. Layers properly
140+
positioned.
138141
- id: SC-04
139142
name: Title & Legend
140143
score: 3
141144
max: 3
142145
passed: true
143-
comment: Title format correct. Legend labels match 5 lithology types with
144-
correct colors.
146+
comment: Title format correct. Legend shows all 5 lithology types with correct
147+
labels.
145148
data_quality:
146149
score: 14
147150
max: 15
@@ -151,22 +154,22 @@ review:
151154
score: 5
152155
max: 6
153156
passed: true
154-
comment: 10 layers with 5 lithology types, varying thicknesses, 5 geological
155-
periods.
157+
comment: Shows 5 lithology types, varying thicknesses, 5 geological periods,
158+
2 unconformities, 10 layers.
156159
- id: DQ-02
157160
name: Realistic Context
158161
score: 5
159162
max: 5
160163
passed: true
161-
comment: Real Grand Canyon formation names with geologically accurate age
162-
assignments.
164+
comment: Grand Canyon stratigraphy with real formation names and correct geological
165+
ages.
163166
- id: DQ-03
164167
name: Appropriate Scale
165168
score: 4
166169
max: 4
167170
passed: true
168-
comment: 0-200m depth with 15-25m layer thicknesses realistic for sedimentary
169-
section.
171+
comment: Depths 0-200 m realistic. Layer thicknesses 15-25 m sensible. Geologically
172+
accurate.
170173
code_quality:
171174
score: 10
172175
max: 10
@@ -176,13 +179,13 @@ review:
176179
score: 3
177180
max: 3
178181
passed: true
179-
comment: Clean imports, data, plot, save structure. No functions or classes.
182+
comment: Linear structure with no functions or classes.
180183
- id: CQ-02
181184
name: Reproducibility
182185
score: 2
183186
max: 2
184187
passed: true
185-
comment: Fully deterministic with hardcoded data.
188+
comment: Fully deterministic data.
186189
- id: CQ-03
187190
name: Clean Imports
188191
score: 2
@@ -194,13 +197,13 @@ review:
194197
score: 2
195198
max: 2
196199
passed: true
197-
comment: Clean, well-organized with appropriate solutions for Altair constraints.
200+
comment: Clean, well-organized code with creative text mark pattern approximation.
198201
- id: CQ-05
199202
name: Output & API
200203
score: 1
201204
max: 1
202205
passed: true
203-
comment: Saves as plot.png and plot.html. Current Altair API.
206+
comment: Saves as plot.png and plot.html with current API.
204207
library_mastery:
205208
score: 7
206209
max: 10
@@ -210,15 +213,15 @@ review:
210213
score: 4
211214
max: 5
212215
passed: true
213-
comment: 'Good use of declarative grammar: mark_rect, mark_text, mark_rule,
214-
layered composition, transform_calculate.'
216+
comment: 'Good declarative patterns: layer composition, transform_calculate,
217+
proper encoding types, tooltip encoding.'
215218
- id: LM-02
216219
name: Distinctive Features
217220
score: 3
218221
max: 5
219222
passed: true
220-
comment: Uses transform_calculate, declarative layer composition, tooltips,
221-
HTML export.
223+
comment: Uses declarative layer composition, transform_calculate, interactive
224+
tooltips in HTML, dual PNG/HTML output.
222225
verdict: REJECTED
223226
impl_tags:
224227
dependencies: []
@@ -232,4 +235,5 @@ impl_tags:
232235
- iteration-over-groups
233236
dataprep: []
234237
styling:
238+
- grid-styling
235239
- edge-highlighting

0 commit comments

Comments
 (0)