{
  "filename": "capg_vs_gelsolin_domains.png",
  "iteration": 1,
  "description": "Create domain-architecture comparison figure and evidence matrix artifact",
  "timestamp": "2026-07-07 00:44:14",
  "code": "\nimport matplotlib.pyplot as plt\nimport pandas as pd\n\n# Domain architecture comparison (from UniProt P40121 vs P06396)\nfig, axes = plt.subplots(2,1, figsize=(10,3.2), sharex=True)\n\ndef draw(ax, length, repeats, sever_region, title, color):\n    ax.add_patch(plt.Rectangle((0,0.3), length, 0.4, fc='#eeeeee', ec='k'))\n    for name,s,e in repeats:\n        ax.add_patch(plt.Rectangle((s,0.3), e-s, 0.4, fc=color, ec='k'))\n        ax.text((s+e)/2, 0.5, name, ha='center', va='center', fontsize=8)\n    if sever_region:\n        s,e = sever_region\n        ax.add_patch(plt.Rectangle((s,0.72), e-s, 0.12, fc='red', ec='k'))\n        ax.text((s+e)/2, 0.9, 'annotated actin-severing region', ha='center', fontsize=7, color='red')\n    ax.set_xlim(0,800); ax.set_ylim(0,1.1); ax.set_yticks([])\n    ax.set_title(title, fontsize=10, loc='left')\n\ndraw(axes[0], 348, [(\"G1\",27,75),(\"G2\",148,188),(\"G3\",261,307)], None,\n     \"CAPG / CapG (P40121) \u2014 348 aa, 38.5 kDa, 3 gelsolin repeats \u2014 CAPS but does NOT sever\", \"#4c9be8\")\ndraw(axes[1], 782, [(\"G1\",76,158),(\"G2\",198,270),(\"G3\",317,389),(\"G4\",455,536),(\"G5\",576,642),(\"G6\",681,756)],\n     (53,176), \"Gelsolin (P06396) \u2014 782 aa, 85.7 kDa, 6 gelsolin repeats \u2014 caps AND severs\", \"#e8a04c\")\naxes[1].set_xlabel(\"residue\")\nplt.tight_layout()\nplt.savefig(\"capg_vs_gelsolin_domains.png\", dpi=130)\nprint(\"saved figure\")\n\n# Evidence matrix table\nrows = [\n [\"1322908\",\"direct assay (recombinant + native)\",\"refutes\",\"CapG severs filaments\",\"'reversibly blocks the barbed ends of actin filaments but does not sever preformed actin filaments'\",\"human MCP in E.coli + rabbit alveolar macrophage\",\"High; this is the annotation's own cited ref\"],\n [\"7851883\",\"review/structural\",\"refutes\",\"CapG severs filaments\",\"'Unlike all other members of this family, Cap G caps the barbed ends...but does not sever them'; 3 vs 6 repeats\",\"human CAPG gene\",\"High\"],\n [\"2255912\",\"direct assay\",\"refutes\",\"gCap39/CapG severs\",\"'gCap39 does not sever actin filaments'\",\"recombinant + purified protein\",\"High\"],\n [\"UniProt P40121/P06396\",\"structural/evolutionary (computational)\",\"qualifies\",\"domain basis\",\"CapG=3 repeats(G1-G3),38.5kDa; gelsolin=6 repeats,severing region 53-176; CapG lacks G4-G6\",\"sequence features\",\"High\"],\n]\ndf = pd.DataFrame(rows, columns=[\"Citation\",\"EvidenceType\",\"Direction\",\"ClaimTested\",\"KeyFinding\",\"Context\",\"Confidence\"])\ndf.to_csv(\"capg_evidence_matrix.csv\", index=False)\nprint(df.to_string(index=False))\n"
}