Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion prompts/library/ggplot2.md
Original file line number Diff line number Diff line change
Expand Up @@ -222,7 +222,7 @@ df <- tibble::tibble(
# --- Plot -------------------------------------------------------------------
p <- ggplot(df, aes(x, y)) +
geom_point(color = OKABE_ITO[1], size = 4, alpha = 0.7) +
labs(title = "Basic Scatter", x = "X", y = "Y") +
labs(title = "scatter-basic · R · ggplot2 · anyplot.ai", x = "X", y = "Y") +
theme_minimal(base_size = 14) +
theme(
plot.background = element_rect(fill = PAGE_BG, color = PAGE_BG),
Expand Down
19 changes: 11 additions & 8 deletions prompts/plot-generator.md
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@ ax.scatter(study_hours, exam_scores, alpha=0.7, s=200,
# Style
ax.set_xlabel('Study Hours per Day', fontsize=20, color=INK)
ax.set_ylabel('Exam Score (%)', fontsize=20, color=INK)
ax.set_title('scatter-basic · matplotlib · anyplot.ai',
ax.set_title('scatter-basic · Python · matplotlib · anyplot.ai',
fontsize=24, fontweight='medium', color=INK)
ax.tick_params(axis='both', labelsize=16, colors=INK_SOFT)
ax.spines['top'].set_visible(False)
Expand All @@ -138,23 +138,26 @@ plt.savefig(f'plot-{THEME}.png', dpi=300, bbox_inches='tight', facecolor=PAGE_BG
**Always use this format for the plot title:**

```
{spec-id} · {library} · anyplot.ai
{spec-id} · {Language} · {library} · anyplot.ai
```

`{Language}` is the implementation's language, capitalized: `Python` or `R`. The language token is **required** — viewers cannot tell from `ggplot2` alone whether a chart is Python or R (`plotnine` is the Python ggplot port), and going forward every rendered title must surface the runtime language.

Examples:
- `scatter-basic · matplotlib · anyplot.ai`
- `bar-grouped · seaborn · anyplot.ai`
- `heatmap-correlation · plotly · anyplot.ai`
- `scatter-basic · Python · matplotlib · anyplot.ai`
- `bar-grouped · Python · seaborn · anyplot.ai`
- `heatmap-correlation · Python · plotly · anyplot.ai`
- `biplot-pca · R · ggplot2 · anyplot.ai`

**Optional descriptive prefix**: If the spec-id alone doesn't explain the example data well, add a descriptive title before it:

```
{Descriptive Title} · {spec-id} · {library} · anyplot.ai
{Descriptive Title} · {spec-id} · {Language} · {library} · anyplot.ai
```

Examples:
- `Tesla Stock 2024 · candle-ohlc · matplotlib · anyplot.ai`
- `Sales by Region · bar-grouped · seaborn · anyplot.ai`
- `Tesla Stock 2024 · candle-ohlc · Python · matplotlib · anyplot.ai`
- `Sales by Region · bar-grouped · Python · seaborn · anyplot.ai`

Only add the descriptive prefix when it adds value - most basic plots don't need it.

Expand Down
2 changes: 1 addition & 1 deletion prompts/quality-criteria.md
Original file line number Diff line number Diff line change
Expand Up @@ -332,7 +332,7 @@ This category evaluates aesthetic sophistication beyond mere correctness. A plot

| Points | Criterion |
|--------|-----------|
| 3 | Title format `{spec-id} · {library} · anyplot.ai` AND legend labels correct |
| 3 | Title is `{spec-id} · {Language} · {library} · anyplot.ai`, optionally prefixed with `{Descriptive Title} · ` (Language ∈ {Python, R}). Legend labels correct |
| 2 | Title format correct but legend issues, or vice versa |
| 1 | Partially correct |
| 0 | Missing or wrong |
Expand Down
2 changes: 1 addition & 1 deletion prompts/quality-evaluator.md
Original file line number Diff line number Diff line change
Expand Up @@ -204,7 +204,7 @@ If found: `auto_reject: "AR-08"`, score = 0, stop evaluation.
| SC-01 | Plot Type | 5 | Correct chart type? |
| SC-02 | Required Features | 4 | All spec features present? |
| SC-03 | Data Mapping | 3 | X/Y correctly assigned? All data visible? |
| SC-04 | Title & Legend | 3 | `{spec-id} · {library} · anyplot.ai`? Legend labels correct? |
| SC-04 | Title & Legend | 3 | Title is `{spec-id} · {Language} · {library} · anyplot.ai`, optionally prefixed with `{Descriptive Title} · ` (Language ∈ {Python, R}). Legend labels correct? |

### Step 4: Data Quality (15 pts)

Expand Down
2 changes: 1 addition & 1 deletion prompts/workflow-prompts/ai-quality-review.md
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,7 @@ Read `prompts/quality-criteria.md` and evaluate:
| SC-01 | Plot Type | 5 | Correct chart type? |
| SC-02 | Required Features | 4 | All features from spec? |
| SC-03 | Data Mapping | 3 | X/Y correct? Axes show all data? |
| SC-04 | Title & Legend | 3 | `{spec-id} · {library} · anyplot.ai`? Legend labels match? |
| SC-04 | Title & Legend | 3 | Title is `{spec-id} · {Language} · {library} · anyplot.ai`, optionally prefixed with `{Descriptive Title} · ` (Language ∈ {Python, R}). Legend labels match? |

#### Data Quality (15 pts)
| ID | Criterion | Max | Check |
Expand Down
Loading