Skip to content

feat(seaborn): implement ohlc-bar#7057

Merged
MarkusNeusinger merged 4 commits into
mainfrom
implementation/ohlc-bar/seaborn
May 17, 2026
Merged

feat(seaborn): implement ohlc-bar#7057
MarkusNeusinger merged 4 commits into
mainfrom
implementation/ohlc-bar/seaborn

Conversation

@github-actions
Copy link
Copy Markdown
Contributor

Implementation: ohlc-bar - python/seaborn

Implements the python/seaborn version of ohlc-bar.

File: plots/ohlc-bar/implementations/python/seaborn.py

Parent Issue: #3293


🤖 impl-generate workflow

github-actions Bot and others added 2 commits May 17, 2026 10:37
Regen from quality 91. Addressed:
- theme-adaptive styling (light/dark modes via ANYPLOT_THEME env var)
- legend improved with line-based representation (plt.Line2D) instead of square markers
- proper output file naming (plot-{THEME}.png)
- seaborn library-specific theme-adaptive chrome tokens applied
- removed top and right spines, applied subtle grid

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
@claude
Copy link
Copy Markdown
Contributor

claude Bot commented May 17, 2026

AI Review - Attempt 1/3

Image Description

Light render (plot-light.png): The plot displays on a warm off-white surface (#FAF8F1) with an OHLC bar chart showing 45 trading days of stock price data. The title "ohlc-bar · seaborn · anyplot.ai" is rendered in dark text (24pt), clearly readable. Axis labels "Date" and "Price ($)" are in dark text at 20pt. Tick labels (dates and prices) are in secondary dark text at 16pt, all highly readable. The OHLC bars use blue (#306998) for up movements and red (#C44E52) for down movements, with vertical lines representing the high-low range and horizontal left/right ticks for open/close prices. The y-axis grid is subtle (15% alpha). All text is perfectly readable with strong contrast. Legibility verdict: PASS.

Dark render (plot-dark.png): The plot displays on a warm near-black surface (#1A1A17) with identical OHLC visualization. Title, axis labels, and tick labels are in light theme colors, all clearly visible and well-contrasted. The data colors are identical to the light render: blue and red bars unchanged between themes, confirming proper theme adaptation. Legibility verdict: PASS — no dark-on-dark failures, all elements clear and readable.

Score: 90/100

Category Score Max
Visual Quality 30 30
Design Excellence 15 20
Spec Compliance 15 15
Data Quality 15 15
Code Quality 10 10
Library Mastery 6 10
Total 90 100

Visual Quality (30/30)

  • VQ-01: Text Legibility (8/8) — All text explicitly sized and perfectly readable in both themes
  • VQ-02: No Overlap (6/6) — Zero overlapping elements; date labels rotated 45° for clarity
  • VQ-03: Element Visibility (6/6) — All 45 bars clearly visible with appropriate line width
  • VQ-04: Color Accessibility (2/2) — Good contrast; blue/red distinction is CVD-safe
  • VQ-05: Layout & Canvas (4/4) — Perfect 16:9 landscape layout at 4800×2700px
  • VQ-06: Axis Labels & Title (2/2) — Title format correct; labels descriptive with units
  • VQ-07: Palette Compliance (2/2) — Perfect theme chrome; data colors identical across themes

Design Excellence (15/20)

  • DE-01: Aesthetic Sophistication (6/8) — Professional theme-adaptive design with clear hierarchy
  • DE-02: Visual Refinement (5/6) — Spines removed; custom grid styling; generous whitespace
  • DE-03: Data Storytelling (4/6) — Clear color encoding; natural price trend progression

Spec Compliance (15/15)

  • SC-01: Plot Type (5/5) — Perfect OHLC implementation
  • SC-02: Required Features (4/4) — All features present and working
  • SC-03: Data Mapping (3/3) — Axes correctly assigned; all data visible
  • SC-04: Title & Legend (3/3) — Correct format and labels

Data Quality (15/15)

  • DQ-01: Feature Coverage (6/6) — Shows all OHLC aspects
  • DQ-02: Realistic Context (5/5) — Realistic stock scenario with appropriate volatility
  • DQ-03: Appropriate Scale (4/4) — All proportions sensible and correct

Code Quality (10/10)

  • CQ-01: KISS Structure (3/3) — Clean procedural code
  • CQ-02: Reproducibility (2/2) — Seeded randomness; fully deterministic
  • CQ-03: Clean Imports (2/2) — Only necessary imports; all used
  • CQ-04: Code Elegance (2/2) — Pythonic and clean; no fake UI
  • CQ-05: Output & API (1/1) — Correct output format and DPI

Library Mastery (6/10)

  • LM-01: Idiomatic Usage (4/5) — Good seaborn patterns; appropriate matplotlib mix
  • LM-02: Distinctive Features (2/5) — Uses matplotlib primitives (appropriate for OHLC)

Strengths

  • Excellent theme adaptation with perfect legibility in both light and dark modes
  • Correct OHLC implementation with proper data mapping
  • Perfect visual quality with no overlaps or legibility issues
  • Clean, reproducible code with proper theme tokens
  • All specification requirements met

Weaknesses

  • Design Excellence functional but not exceptional
  • seaborn-specific features not leveraged (appropriate for this plot type, though)

Verdict: APPROVED ✓

@github-actions github-actions Bot added quality:90 Quality score 90/100 ai-approved Quality OK, ready for merge labels May 17, 2026
@MarkusNeusinger MarkusNeusinger merged commit ac60103 into main May 17, 2026
3 checks passed
@MarkusNeusinger MarkusNeusinger deleted the implementation/ohlc-bar/seaborn branch May 17, 2026 10:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ai-approved Quality OK, ready for merge quality:90 Quality score 90/100

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant