EGFR Kinase Inhibitors - SAR Navigation
10,466 compoundschemistrydrug-discoverySAR
A TMAP of 10,466 EGFR kinase inhibitors from ChEMBL (target CHEMBL203), built from Morgan fingerprint similarity (Jaccard metric). The tree structure reveals structure-activity relationships: 53.6% of edges are smooth (delta pIC50 < 0.5), while 677 edges are activity cliffs (delta pIC50 >= 2.0). Scaffold analysis identifies 3,841 unique Murcko scaffolds with 46.1% of tree edges crossing scaffold boundaries. The SAR path from the weakest (pIC50 4.0) to the most potent (pIC50 11.0) compound spans 85 hops. Color indicates pIC50 potency.
EGFR Kinase Inhibitors - SAR NavigationOpen full page
Loading interactive demo…
How it was made
generate.pypython
from tmap import TMAP, fingerprints_from_smiles, murcko_scaffolds
from tmap.graph.analysis import boundary_edges, edge_delta, path_properties
fps = fingerprints_from_smiles(smiles, fp_type="morgan", radius=2, n_bits=2048)
model = TMAP(metric="jaccard", n_neighbors=20, seed=42).fit(fps)
# Activity cliffs: edges with large pIC50 jumps
cliffs = edge_delta(model.tree_, pic50)
print(f"Activity cliffs (delta >= 2.0): {(cliffs >= 2.0).sum()}")
# SAR path from weakest to most potent
path = model.path(weakest_idx, potent_idx)
path_values = path_properties(model.tree_, weakest_idx, potent_idx, pic50)
# Scaffold boundary analysis
scaffolds = murcko_scaffolds(smiles)
boundaries = boundary_edges(model.tree_, scaffolds)
print(f"Scaffold boundaries: {len(boundaries)} / {len(model.tree_.edges)}")