Write in brief about growth curve of bacteria using suitable diagram
bacterial growth curve
bacterial growth curve lag log stationary death phases microbiology
Log number of
viable bacteria
^
| _____________
| / \
| / Stationary \
| / phase \
| / \
| / \ Death/
| / Log (exponential) \ decline
|___________/ phase \____
| Lag phase
+----------------------------------------------------> Time
Create a labeled PDF diagram of the bacterial growth curve
~/
bacterial growth curve
bacterial growth curve lag exponential stationary death phase educational diagram
mkdir -p "/tmp/workspace/bacterial-growth-curve/output" && python -c "import matplotlib; print('matplotlib', matplotlib.__version__)"
~/bacterial-growth-curve/create_diagram.py
import numpy as np
import matplotlib.pyplot as plt
from matplotlib.backends.backend_pdf import PdfPages
out = '/tmp/workspace/bacterial-growth-curve/output/bacterial_growth_curve_labeled.pdf'
plt.rcParams.update({'font.family': 'DejaVu Sans'})
fig, ax = plt.subplots(figsize=(11.69, 8.27)) # A4 landscape
fig.patch.set_facecolor('white')
ax.set_facecolor('#fbfdff')
# Idealized batch culture curve with smooth phase transitions
x = np.linspace(0, 10, 700)
y = np.zeros_like(x)
# Lag: slight increase only
m1 = x < 1.8
y[m1] = 1.02 + 0.04 * (x[m1]/1.8)**2
# Exponential: steep rise, smoothly curved to plateau
m2 = (x >= 1.8) & (x < 4.9)
t = (x[m2]-1.8)/(4.9-1.8)
y[m2] = 1.06 + 5.05 * (3*t**2 - 2*t**3)
# Stationary: gentle plateau
m3 = (x >= 4.9) & (x < 7.1)
t = (x[m3]-4.9)/(7.1-4.9)
y[m3] = 6.11 - 0.10*t + 0.025*np.sin(np.pi*t)
# Death: decline
m4 = x >= 7.1
t = (x[m4]-7.1)/(10-7.1)
y[m4] = 6.01 - 3.85*(t**1.23)
ax.plot(x, y, color='#0B5FA5', lw=4.2, solid_capstyle='round', zorder=3)
ax.fill_between(x, 0.7, y, color='#CFE8F7', alpha=0.65, zorder=1)
# Phase bands
phases = [
(0, 1.8, '#EAF4E1', 'LAG PHASE'),
(1.8, 4.9, '#E8F2FC', 'LOG / EXPONENTIAL PHASE'),
(4.9, 7.1, '#FFF4D6', 'STATIONARY PHASE'),
(7.1, 10, '#FCE7E7', 'DEATH / DECLINE PHASE'),
]
for a, b, c, label in phases:
ax.axvspan(a, b, color=c, alpha=0.55, zorder=0)
ax.text((a+b)/2, 0.89, label, ha='center', va='bottom', fontsize=10.3,
fontweight='bold', color='#334155')
if a > 0:
ax.axvline(a, color='#94A3B8', ls='--', lw=1.0, zorder=2)
# Annotations
box = dict(boxstyle='round,pad=0.38', fc='white', ec='#7A96AB', lw=1.1)
ax.annotate('Adaptation to new medium\nNo net increase in cell number', xy=(0.95, 1.05), xytext=(0.35, 2.15),
fontsize=10, ha='left', va='center', bbox=box,
arrowprops=dict(arrowstyle='->', color='#526D82', lw=1.3))
ax.annotate('Rapid binary fission\nConstant maximal growth rate', xy=(3.4, 4.2), xytext=(2.05, 6.9),
fontsize=10, ha='left', va='center', bbox=box,
arrowprops=dict(arrowstyle='->', color='#526D82', lw=1.3))
ax.annotate('Cell division = cell death\nNutrients decrease; wastes accumulate', xy=(5.9, 6.05), xytext=(5.05, 7.35),
fontsize=10, ha='left', va='center', bbox=box,
arrowprops=dict(arrowstyle='->', color='#526D82', lw=1.3))
ax.annotate('Cell death exceeds division\nViable count falls', xy=(8.7, 4.05), xytext=(7.45, 2.45),
fontsize=10, ha='left', va='center', bbox=box,
arrowprops=dict(arrowstyle='->', color='#526D82', lw=1.3))
ax.set_xlim(0, 10)
ax.set_ylim(0.7, 8.1)
ax.set_xticks([])
ax.set_yticks([1,2,3,4,5,6,7])
ax.set_yticklabels(['10¹','10²','10³','10⁴','10⁵','10⁶','10⁷'])
ax.set_xlabel('Time after inoculation', fontsize=13, fontweight='bold', labelpad=15)
ax.set_ylabel('Log viable bacterial count (CFU/mL)', fontsize=13, fontweight='bold', labelpad=15)
for spine in ['top','right']:
ax.spines[spine].set_visible(False)
ax.spines['left'].set_linewidth(1.5)
ax.spines['bottom'].set_linewidth(1.5)
ax.grid(axis='y', color='#CBD5E1', lw=0.7, alpha=0.7)
fig.suptitle('Bacterial Growth Curve in Batch Culture', fontsize=20, fontweight='bold', color='#123B5D', y=0.96)
fig.text(0.5, 0.035, 'An idealized curve plotting the logarithm of viable bacterial cells against time.', ha='center', fontsize=10.5, color='#475569')
fig.text(0.5, 0.015, 'CFU/mL = colony-forming units per millilitre', ha='center', fontsize=9.3, color='#64748B')
plt.subplots_adjust(left=0.12, right=0.97, top=0.87, bottom=0.15)
fig.savefig(out, format='pdf', dpi=300, bbox_inches='tight')
plt.close(fig)
print(out)
python "/tmp/workspace/bacterial-growth-curve/create_diagram.py" && python -c "from pypdf import PdfReader; p='/tmp/workspace/bacterial-growth-curve/output/bacterial_growth_curve_labeled.pdf'; r=PdfReader(p); print('pages:',len(r.pages)); print(r.pages[0].extract_text()[:600])" && ls -lh "/tmp/workspace/bacterial-growth-curve/output/bacterial_growth_curve_labeled.pdf"
bacterial growth curve labeled
PDF Document · PDF
Explain isolation and cultivation of anaerobic bacteria using anaerobic jar.
anaerobic bacteria culture methods
anaerobic jar GasPak principle palladium catalyst anaerobic bacterial culture laboratory