This chart plots monthly inquiry volume on polar coordinates. You can read seasonality around the 360-degree circle.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
| import numpy as np
import matplotlib.pyplot as plt
months = np.arange(12)
angles = months / 12 * 2 * np.pi
volume = np.array([120, 140, 200, 260, 310, 350, 330, 280, 220, 180, 150, 130])
fig, ax = plt.subplots(figsize=(5, 5), subplot_kw=dict(polar=True))
ax.bar(angles, volume, width=2 * np.pi / 12, color="#3b82f6", alpha=0.7, edgecolor="white")
ax.set_xticks(angles)
ax.set_xticklabels([f"Month {m+1}" for m in months])
ax.set_title("Monthly inquiries (polar chart)")
ax.set_yticks([])
fig.tight_layout()
plt.show()
|

Reading tips
#
- Longer radius means larger values, so you can compare seasonal peaks quickly.
- Keep bar widths uniform to make month-to-month comparison easier.
- When overlaying multiple years, change alpha or use lines for readability.
- Radar Chart — Compare balance of multiple KPIs by area
- Donut Chart — Visually represent proportions with a circle