From b0e07b41813068fc206ce77b6189f66b2b556f06 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Thu, 11 Dec 2025 22:56:08 +0000 Subject: [PATCH 1/3] feat(matplotlib): implement bar-basic --- plots/bar-basic/implementations/matplotlib.py | 52 +++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 plots/bar-basic/implementations/matplotlib.py diff --git a/plots/bar-basic/implementations/matplotlib.py b/plots/bar-basic/implementations/matplotlib.py new file mode 100644 index 0000000000..334d2d950e --- /dev/null +++ b/plots/bar-basic/implementations/matplotlib.py @@ -0,0 +1,52 @@ +""" +bar-basic: Basic Bar Chart +Library: matplotlib +""" + +import matplotlib.pyplot as plt + + +# Data - Product sales by category +categories = ["Electronics", "Clothing", "Home & Garden", "Sports", "Books", "Toys"] +values = [45200, 32800, 28500, 21300, 18900, 15600] + +# Create plot +fig, ax = plt.subplots(figsize=(16, 9)) + +# Bar chart with Python Blue color +bars = ax.bar(categories, values, color="#306998", width=0.6, edgecolor="white", linewidth=1) + +# Add value labels on top of bars +for bar, value in zip(bars, values, strict=True): + height = bar.get_height() + ax.annotate( + f"${value:,}", + xy=(bar.get_x() + bar.get_width() / 2, height), + xytext=(0, 8), + textcoords="offset points", + ha="center", + va="bottom", + fontsize=14, + ) + +# Labels and styling +ax.set_xlabel("Product Category", fontsize=20) +ax.set_ylabel("Sales ($)", fontsize=20) +ax.set_title("Product Sales by Category", fontsize=20) + +# Style tick labels +ax.tick_params(axis="both", labelsize=16) + +# Subtle grid on y-axis only +ax.yaxis.grid(True, alpha=0.3, linestyle="-") +ax.set_axisbelow(True) + +# Remove top and right spines for cleaner look +ax.spines["top"].set_visible(False) +ax.spines["right"].set_visible(False) + +# Set y-axis to start at 0 +ax.set_ylim(bottom=0) + +plt.tight_layout() +plt.savefig("plot.png", dpi=300, bbox_inches="tight") From 8ea35885a4ad4bf8d51910b2544db836d7d5bfad Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Thu, 11 Dec 2025 22:56:21 +0000 Subject: [PATCH 2/3] chore(matplotlib): add metadata for bar-basic --- plots/bar-basic/metadata/matplotlib.yaml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 plots/bar-basic/metadata/matplotlib.yaml diff --git a/plots/bar-basic/metadata/matplotlib.yaml b/plots/bar-basic/metadata/matplotlib.yaml new file mode 100644 index 0000000000..7bb8b71239 --- /dev/null +++ b/plots/bar-basic/metadata/matplotlib.yaml @@ -0,0 +1,18 @@ +# Per-library metadata for matplotlib implementation of bar-basic +# Auto-generated by impl-generate.yml + +library: matplotlib +specification_id: bar-basic + +preview_url: https://storage.googleapis.com/pyplots-images/plots/bar-basic/matplotlib/plot.png +preview_html: null + +current: + version: 0 + generated_at: 2025-12-11T22:56:21Z + generated_by: claude-opus-4-5-20251101 + workflow_run: 20150015715 + issue: 612 + quality_score: null # Updated after review + +history: [] From 775840cf4d1c3068cc65c7e48577afa2d4921de5 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Thu, 11 Dec 2025 22:58:24 +0000 Subject: [PATCH 3/3] chore(matplotlib): set quality score 92 for bar-basic --- plots/bar-basic/metadata/matplotlib.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plots/bar-basic/metadata/matplotlib.yaml b/plots/bar-basic/metadata/matplotlib.yaml index 7bb8b71239..a0cf306cea 100644 --- a/plots/bar-basic/metadata/matplotlib.yaml +++ b/plots/bar-basic/metadata/matplotlib.yaml @@ -13,6 +13,6 @@ current: generated_by: claude-opus-4-5-20251101 workflow_run: 20150015715 issue: 612 - quality_score: null # Updated after review + quality_score: 92 history: []