Skip to content
Graphviz (DOT) templates

Gram Stain Identification Tree

Decision tree separating Gram-positive vs Gram-negative bacteria.

Template previewGraphviz (DOT)
Rendering…

Make it your own.

digraph gram {
  rankdir=TB;
  graph [bgcolor=transparent];
  node [shape=box, style="rounded,filled", fontname=Inter, fontsize=10];

  Stain [label="Gram stain result", fillcolor="#fce7f3"];
  Pos [label="Gram-positive (purple)", fillcolor="#7c3aed", fontcolor="white"];
  Neg [label="Gram-negative (pink)", fillcolor="#dc2626", fontcolor="white"];

  Pcocci [label="Cocci?"];
  Pgroup [label="Cluster vs chain?"];
  Cluster [label="Staphylococcus\n(grape clusters)", fillcolor="#dbeafe"];
  Chain [label="Streptococcus / Enterococcus", fillcolor="#dbeafe"];
  Prods [label="Rods", fillcolor="#dbeafe"];
  Spore [label="Spore-forming?"];
  Bacillus [label="Bacillus / Clostridium", fillcolor="#dbeafe"];
  Listeria [label="Listeria / Corynebacterium", fillcolor="#dbeafe"];

  Ncocci [label="Cocci → Neisseria, Moraxella", fillcolor="#dbeafe"];
  Nrods [label="Rods"];
  Lactose [label="Lactose-fermenting?"];
  Ferm [label="E. coli, Klebsiella, Enterobacter", fillcolor="#dbeafe"];
  Nonferm [label="Pseudomonas, Salmonella, Shigella", fillcolor="#dbeafe"];

  Stain -> Pos; Stain -> Neg;
  Pos -> Pcocci; Pcocci -> Pgroup; Pgroup -> Cluster; Pgroup -> Chain;
  Pos -> Prods; Prods -> Spore; Spore -> Bacillus; Spore -> Listeria;
  Neg -> Ncocci;
  Neg -> Nrods; Nrods -> Lactose; Lactose -> Ferm; Lactose -> Nonferm;
}