{
  "filename": "plot_1.png",
  "iteration": 2,
  "description": "Visualization of AlphaFold pLDDT confidence scores for C6T1A2, highlighting zinc finger and EAR domains",
  "timestamp": "2026-06-22 05:08:18",
  "code": "\nimport requests\nimport numpy as np\nimport matplotlib.pyplot as plt\nimport matplotlib.patches as mpatches\n\n# Re-download and parse AlphaFold PDB for pLDDT\npdb_url = \"https://alphafold.ebi.ac.uk/files/AF-C6T1A2-F1-model_v6.pdb\"\nresponse = requests.get(pdb_url)\npdb_text = response.text\n\nresidue_plddt = {}\nfor line in pdb_text.split('\\n'):\n    if line.startswith('ATOM') and line[12:16].strip() == 'CA':\n        resnum = int(line[22:26].strip())\n        bfactor = float(line[60:66].strip())\n        residue_plddt[resnum] = bfactor\n\npositions = sorted(residue_plddt.keys())\nplddt_values = [residue_plddt[p] for p in positions]\n\nseq = \"MTFIREDDDDQVDDDHDHDHVDGGGSQNSASNITEIVTTPEGENLGEWLSLGLKGDINMPAEEQNSSSRPLHSNNNKVFSCNFCMRKFYSSQALGGHQNAHKREREAARSYHQSHHHRIGFSYTTSLATRSLGIKPHSLVHRPNRERSAMVARFSSSDAINVGVGSVASSWTPFMLEQAVDFYWPGSFRGDLLPKQESSDVKKIDLDLRL\"\n\nfig, ax = plt.subplots(figsize=(14, 5))\n\n# Color by confidence\ncolors = []\nfor v in plddt_values:\n    if v > 90:\n        colors.append('#0053D6')   # Very high - dark blue\n    elif v >= 70:\n        colors.append('#65CBF3')   # High - light blue\n    elif v >= 50:\n        colors.append('#FFDB13')   # Low - yellow\n    else:\n        colors.append('#FF7D45')   # Very low - orange\n\nax.bar(positions, plddt_values, color=colors, width=1.0, edgecolor='none')\n\n# Annotate domains\nax.axvspan(79, 106, alpha=0.15, color='green', label='C2H2 ZF domain (79-106)')\nax.axvspan(92, 97, alpha=0.25, color='red', label='QALGGH motif (92-97)')\nax.axvspan(206, 210, alpha=0.2, color='purple', label='EAR motif LDLRL (206-210)')\nax.axvspan(1, 31, alpha=0.1, color='gray', label='Disordered N-term (1-31)')\n\n# Add threshold lines\nax.axhline(y=90, color='#0053D6', linestyle='--', linewidth=0.8, alpha=0.5)\nax.axhline(y=70, color='#65CBF3', linestyle='--', linewidth=0.8, alpha=0.5)\nax.axhline(y=50, color='#FFDB13', linestyle='--', linewidth=0.8, alpha=0.5)\n\nax.set_xlabel('Residue Position', fontsize=12)\nax.set_ylabel('AlphaFold pLDDT Score', fontsize=12)\nax.set_title('C6T1A2 AlphaFold Confidence (pLDDT) \u2014 Zinc Finger Domain Is Highly Confident', fontsize=13)\nax.set_xlim(0, 211)\nax.set_ylim(0, 100)\n\n# Custom legend\nlegend_elements = [\n    mpatches.Patch(facecolor='#0053D6', label='Very high (>90)'),\n    mpatches.Patch(facecolor='#65CBF3', label='High (70-90)'),\n    mpatches.Patch(facecolor='#FFDB13', label='Low (50-70)'),\n    mpatches.Patch(facecolor='#FF7D45', label='Very low (<50)'),\n    mpatches.Patch(facecolor='green', alpha=0.3, label='C2H2 ZF domain'),\n    mpatches.Patch(facecolor='red', alpha=0.4, label='QALGGH motif'),\n    mpatches.Patch(facecolor='purple', alpha=0.3, label='EAR motif'),\n]\nax.legend(handles=legend_elements, loc='lower left', fontsize=8, ncol=2)\n\n# Add text annotations\nax.annotate('C2H2 Zinc Finger\\n(pLDDT 91.5)', xy=(92, 96), fontsize=9, ha='center',\n           fontweight='bold', color='darkgreen')\nax.annotate('QALGGH\\n95.8', xy=(95, 88), fontsize=8, ha='center', color='darkred')\n\nplt.tight_layout()\nplt.savefig('c6t1a2_alphafold_plddt.png', dpi=150, bbox_inches='tight')\nplt.show()\nprint(\"Plot saved successfully\")\n",
  "plot_number": 1
}