fig, axes = plt.subplots(1, 3, figsize=(16, 5))
ax1 = axes[0]
ax1.plot(asr_sex_cols['year'], asr_sex_cols['asr_male'], marker='o', linewidth=2, markersize=7,
label='Males', color='steelblue')
ax1.plot(asr_sex_cols['year'], asr_sex_cols['asr_female'], marker='s', linewidth=2, markersize=7,
label='Females', color='coral')
ax1.plot(asr_sex_cols['year'], asr_sex_cols['asr_total'], marker='^', linewidth=2, markersize=7,
label='Total', color='forestgreen', linestyle='--')
ax1.set_xlabel('Year')
ax1.set_ylabel('ASR (per 100,000)')
ax1.set_title('Age-Standardized Rate', fontweight='bold')
ax1.legend()
ax1.grid(True, alpha=0.3)
ax2 = axes[1]
ax2.plot(asr_sex_cols['year'], asr_sex_cols['crude_rate_male'], marker='o', linewidth=2, markersize=7,
label='Males', color='steelblue')
ax2.plot(asr_sex_cols['year'], asr_sex_cols['crude_rate_female'], marker='s', linewidth=2, markersize=7,
label='Females', color='coral')
ax2.plot(asr_sex_cols['year'], asr_sex_cols['crude_rate_total'], marker='^', linewidth=2, markersize=7,
label='Total', color='forestgreen', linestyle='--')
ax2.set_xlabel('Year')
ax2.set_ylabel('Crude rate (per 100,000)')
ax2.set_title('Crude Rate', fontweight='bold')
ax2.legend()
ax2.grid(True, alpha=0.3)
ax3 = axes[2]
ax3.plot(asr_sex_cols['year'], asr_sex_cols['hosp_male'], marker='o', linewidth=2, markersize=7,
label='Males', color='steelblue')
ax3.plot(asr_sex_cols['year'], asr_sex_cols['hosp_female'], marker='s', linewidth=2, markersize=7,
label='Females', color='coral')
ax3.plot(asr_sex_cols['year'], asr_sex_cols['hosp_total'], marker='^', linewidth=2, markersize=7,
label='Total', color='forestgreen', linestyle='--')
ax3.set_xlabel('Year')
ax3.set_ylabel('Hospitalizations (N)')
ax3.set_title('Total Hospitalizations', fontweight='bold')
ax3.legend()
ax3.grid(True, alpha=0.3)
plt.tight_layout()
save_figure(fig, 'asr_time_series_head_neck.png')
plt.savefig(_FIG / "fig-asr-time-series.png", dpi=300, bbox_inches="tight")
plt.show()