Ramachandran graph plotting tool- Ramachandran Plot Generator
Overview The Ramachandran Plot Generator is a graphical tool for analyzing the backbone dihedral angles (Φ, Ψ) of a protein structure from a PDB file. It generates a high-resolution Ramachandran plot with a density heatmap and scatter points, visually distinguishing most favorable, favorable, allowed, and disallowed regions with percentage calculations.
The tool features a colorful GUI for ease of use and produces a comprehensive report file detailing the classifications of dihedral angles.
Features
- Upload PDB Files: Easily select and analyze protein structure files.
- Ramachandran Plot Visualization:
- Uses Seaborn to generate a cool-warm gradient heatmap.
- Scatter points for individual residues.
- Displays percentages for each region (Most Favorable, Favorable, Allowed, Disallowed).
- Phi (Φ) and Psi (Ψ) labels are clearly represented.
- Report Generation:
- Saves a CSV file listing each residue's dihedral angles and classification.
- Summary file with region percentages.
- Professional GUI:
- Colorful fonts and stylish buttons.
- Easy-to-use interface with PDB file upload functionality.
Installation Prerequisites Ensure you have Python 3.x installed along with the following dependencies:
pip install numpy matplotlib seaborn pandas biopython tkinterUsage Running the Tool To launch the graphical interface, execute the script:
python ramachandran_plot.pySteps to Use:
- Click "Upload PDB File".
- Select a .pdb file from your computer.
- The tool processes the file and generates:
- A Ramachandran plot (saved as
ramachandran_plot.png). - A detailed CSV report (
ramachandran_report.csv). - A summary CSV file (
ramachandran_summary.csv) with region percentages.
- A Ramachandran plot (saved as
- The visual representation of the plot is displayed with distinct colors for each region.
Output Files
- ramachandran_plot.png – The high-resolution Ramachandran plot.
- ramachandran_report.csv – Detailed report of dihedral angles and classifications.
- ramachandran_summary.csv – Summary with region percentages.
Example Output Ramachandran Plot The generated Ramachandran plot will include:
- Heatmap background (cool-warm gradient).
- Scatter points categorized into:
- Most Favorable (Lime)
- Favorable (Gold)
- Allowed (Dodgerblue)
- Disallowed (Red)
- Region percentages displayed outside the plot area.
License This project is open-source and available under the MIT License.
For suggestions or bug reports, feel free to open an issue on GitHub!
Contact For any queries, contact Mukesh Nitin at drmukeshnitin@gmail.com or raise an issue on GitHub.

