Practice: rainfall + bars

Line and bar.

Rainfall line and kiosk bars.

Goal

Run every block and confirm the chart is visible.

df = pd.DataFrame({
    "city": ["Nairobi", "Mombasa", "Kisumu", "Nakuru", "Eldoret"],
    "units": [21, 15, 15, 18, 12],
    "shillings": [2100, 1500, 1480, 1750, 1190],
})
fig = px.bar(df.sort_values("units"), x="units", y="city", orientation="h", title="Ranked units")
fig.show()
print("ranked")
df = pd.DataFrame({
    "month": ["Jan", "Feb", "Mar", "Apr"] * 2,
    "mm": [48, 55, 92, 150, 22, 18, 40, 80],
    "city": ["Nairobi"] * 4 + ["Mombasa"] * 4,
})
fig = px.line(df, x="month", y="mm", color="city", markers=True, title="Rain")
fig.show()
print("rain")
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"],
})
fig = px.scatter(df, x="units", y="shillings", color="city", title="Relate")
fig.show()
print("scatter")
print("Nairobi leads units; rain peaks in April.")