Bar, line, scatter.
Goal
Run every block.
df = pd.DataFrame({
"city": ["Nairobi", "Mombasa", "Kisumu", "Nakuru", "Eldoret"],
"units": [21, 15, 15, 18, 12],
"shillings": [2100, 1500, 1480, 1750, 1190],
})
df.sort_values("units").plot(x="city", y="units", kind="barh", title="Ranked units")
plt.show()df = pd.DataFrame({
"month": ["Jan", "Feb", "Mar", "Apr"] * 2,
"mm": [48, 55, 92, 150, 22, 18, 40, 80],
"city": ["Nairobi"] * 4 + ["Mombasa"] * 4,
})
df.pivot(index="month", columns="city", values="mm").plot(marker="o", title="Rain")
plt.show()df = pd.DataFrame({
"units": [12, 7, 9, 4, 11, 3, 14, 8],
"shillings": [1260, 1540, 945, 880, 1155, 660, 1470, 1760],
"city": ["Nairobi", "Nairobi", "Mombasa", "Mombasa", "Kisumu", "Kisumu", "Nakuru", "Eldoret"],
})
df.plot(x="units", y="shillings", kind="scatter", title="Relate")
plt.show()print("pandas.plot is a shortcut — seaborn still wins for stats plots.")Pitfall
Always plt.show().