9I3S Shape#

../_static/Gallery/9I3S_Shape_Size_plot.png

9i3s.pdb File is required for the code below, you can obtain the protein structure from RCSB Via Link

Code To Produce Above Plot#
import ProteoTwirl.ProteinRotation as pt
from matplotlib.ticker import FuncFormatter
import matplotlib.pyplot as plt
import cartopy.crs as ccrs


protein_structure = pt.ProteinRotation(
    protein                 = "9i3s.pdb",
    selection               = "protein and not element H",
    base_rotation           = "principle",
    center_selection        = True,
    atom_radii              = "vdw",
    default_rotation_res    = 32,
    )


protein_structure.add_property(
    property        = "Alphashape",
    alpha           = 0.25,
    hole_fill       = 0.01,
    workers         = 1

)
protein_structure.add_property(
    property="shape.area",
)

fig, ax = protein_structure.plot_shape(
    shape_size          =50,
    figsize             =(10,6),
    color_property      ="Alpha_Shape_25_HF1_area",
    shape_color         ="#222244aa",
    contour_color       ="plasma",
    gridlines           = {
                            "linewidth"     :1,
                            "colors"        :"#ffffff",
                            "edgecolor"     :"#999999",
                            "dms"           :True
                        },
    contour_lines       = {
                            "linewidths"    : 0.5,
                            "colors"        :"#dddddd"
                        },
    contour_labels      = {
                            "colors"        : "#ffffff",
                            "fmt"           : FuncFormatter(lambda value, pos: r"{:.0f} $\cdot 10^3$".format(value / 1000))
                        },
    projection          = ccrs.EckertII(),
    )

plt.tight_layout()

fig.patch.set_alpha(0)
ax.patch.set_alpha(0)