summaryrefslogtreecommitdiff
path: root/paper/figures/render_fig5_cross_arch.py
diff options
context:
space:
mode:
authorYurenHao0426 <Blackhao0426@gmail.com>2026-04-08 14:35:20 -0500
committerYurenHao0426 <Blackhao0426@gmail.com>2026-04-08 14:35:20 -0500
commit1c4672e465b9145d71cfddeae4e2ebaeeef2964f (patch)
treea9a1eab21bed0ae00da714fd09398a23ad2a01a6 /paper/figures/render_fig5_cross_arch.py
parent528a240f4d8288ad626781ac86e4f0c8941cfe76 (diff)
Figures 3 and 4: fix aspect ratio (fig3 was squeezed strip) and key-finding label overlap (fig4)
Per user feedback: - fig4_penalty_rescue.pdf (Figure 3 in paper): was figsize=(13, 3.5), aspect 3.7:1, which rendered as a thin strip with squeezed subplot content. Increased height to figsize=(13, 6.0), aspect 2.2:1. Much taller panels that actually show axis labels and legends readably. - fig5_cross_arch_summary.pdf (Figure 4 in paper): the 'Key finding' italic text annotation at y=-1.0 in axes transform was overlapping with the multiline architecture y-tick labels at the bottom of the second subplot. Moved to y=-1.55 and increased figsize height from 3.5 to 4.2 so the lower annotation still fits in bbox_inches='tight' crop. - Also bumped includegraphics width from 0.92\linewidth to \linewidth for both figures so they use the full text width. Main content still exactly 9 pages within E&D budget. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Diffstat (limited to 'paper/figures/render_fig5_cross_arch.py')
-rw-r--r--paper/figures/render_fig5_cross_arch.py6
1 files changed, 3 insertions, 3 deletions
diff --git a/paper/figures/render_fig5_cross_arch.py b/paper/figures/render_fig5_cross_arch.py
index e163956..9ad9ce2 100644
--- a/paper/figures/render_fig5_cross_arch.py
+++ b/paper/figures/render_fig5_cross_arch.py
@@ -26,7 +26,7 @@ dfa = np.array([
bp = np.zeros_like(dfa) # BP: passes everywhere
-fig, axes = plt.subplots(1, 2, figsize=(11, 3.5))
+fig, axes = plt.subplots(1, 2, figsize=(11, 4.2))
for ax, mat, title in [(axes[0], bp, "BP-trained: protocol passes"),
(axes[1], dfa, "DFA-trained: protocol verdict by architecture")]:
@@ -42,8 +42,8 @@ for ax, mat, title in [(axes[0], bp, "BP-trained: protocol passes"),
ax.set_yticklabels(arches, fontsize=9)
ax.set_title(title, fontsize=10)
-# Highlight the key finding
-axes[1].text(0.5, -1.0, "Key finding: diagnostic (b) BP-grad-floor fires only on terminal-LN architectures.\n"
+# Highlight the key finding — place well below the multiline x/y tick labels to avoid overlap
+axes[1].text(0.5, -1.55, "Key finding: diagnostic (b) BP-grad-floor fires only on terminal-LN architectures.\n"
"Across the 5 architecture cases tested, (b) is restricted to the with-terminal-LN family.",
ha="center", fontsize=9, style="italic", transform=axes[1].transAxes)