All notable changes to the ssci-plots Skill are documented here.
The format is based on Keep a Changelog.
_italicize_keynow emits aUserWarningwhen an unrecognized key looks like a statistical symbol (contains digit, caret, underscore, or non-ASCII char) before falling through to plain text. Plain English words pass silent.add_panel_labelsdefaultfontsizefallback changed from 14 pt → 12 pt to align with D-R2-2 and majority APA-journal convention. Explicitfontsize=14and preset overrides (psych_science 18 pt, nature 9 pt) preserved unchanged.
- SKILL.md §6 Quality Checklist + §7 Troubleshooting now warn against
fig.text(..., "*Note.* ...")embedding (APA §7.28 / SSCI-Plots §9 violation; useformat_apa_figure_text(note_text=...)instead).
- 18 figure gallery unified to
tol_mutedpalette + alpha SSOT + uppercase panel labels + APA §9-compliant Note handling. See A7R1-A7R9 reports in phase_7_polish/.
These changes alter user-visible output for the listed helpers. They are documented as bug fixes, not breaking API changes — signatures remain unchanged — but downstream code that pattern-matches the affected output strings (regex on "ns", parsing rendered Markdown) will need adjustment.
-
p_to_stars(p)— non-significant return value changed from"ns"to"n.s."(with periods). This unifies the output withadd_significance_bracket, which already emitted"n.s.". The dotted form is the conventional APA 7 style. Code that compared the return string to"ns"literal must be updated to"n.s.". -
format_apa_figure_text(...)— probability-level lines (e.g.*p < .05. **p < .01. ***p < .001.) now insert a zero-width space (U+200B) between consecutive asterisks. The change fixes Markdown rendering where**was previously interpreted as bold emphasis, producing visually garbled output (bold p < .05.bold p < .01.). The zero-width space is invisible in rendered text. Disable viazwsp=Falseif a downstream pipeline strips zero-width characters; the rendered output is otherwise identical. -
add_panel_labels(axes, style=None, fontsize=None, ...)— default values forstyleandfontsizechanged from'upper'/14toNone. When the value isNone, the helper reads the active journal preset's_ACTIVE_PRESET['panel_label_case']andpanel_label_sizeand falls back to the previous defaults only when no preset is active. The change implements the Phase 4 D10 bug 2 fix:apply_style(journal='nature')now produces lowercase a/b/c panel labels at 9 pt automatically, instead of always emitting uppercase A/B/C at 14 pt. To restore the old behavior on a single call, passstyle='upper'andfontsize=14explicitly.
-
get_palette(n, 'tol_light')withn >= 4now emits aUserWarningadvising thattol_lightis fill-only with low luminance contrast and not recommended for line / marker plots. Prefertol_brightortol_mutedfor line / scatter figures; reservetol_lightfor stacked bars, choropleth fills, or table backgrounds. -
get_palette(n, palette_name)withn >= 5for anybaseline_riskyCVD-grade palette (nature_npg,science_aaas,nejm,lancet,jama,bmj,economics,uk_gov_af,economist_chart) now emits aUserWarningadvising the user to pair with redundant marker shapes / hatching / line styles so the figure remains interpretable under all three CVD types and in grayscale.
To silence either warning in a specific code path:
import warnings
with warnings.catch_warnings():
warnings.simplefilter('ignore', UserWarning)
colors = get_palette(5, 'nature_npg')-
The
bbc_bbplotpalette description inreferences/color-system.md§2.8.8 now warns that teal and green tones may converge under tritanopia; pair with markers for 4+ colors. -
The
add_panel_labelsdescription inSKILL.mdnow correctly states that Science uses uppercase A/B/C (the prior text incorrectly attributed parentheses to Science). -
The public-helper count is 27 (was incorrectly documented as 24 in several places). The correct breakdown: 2 entry + 7 palette + 3 save / spine / legend + 3 APA + 2 sig / effect + 2 inline / ref + 1 panel labels + 7 multipanel.