📊 Python Data Workflows – 📈 Simple Dashboard 🐍
Posted on: May 15, 2026
Description:
After cleaning and transforming data, the next step is visualisation.
Data on its own is difficult to interpret. Charts help convert numbers into patterns that are easy to understand. Even simple visualisations can reveal trends, outliers, and relationships.
Why Visualisation Matters
Without charts:
- patterns are hidden in rows
- trends are hard to spot
- comparisons take time
With charts:
- insights become immediate
- decisions become easier
Category-Level Insights
Bar charts are one of the simplest and most effective ways to compare categories.
df.groupby("category")["sales"].sum().plot(kind="bar")
This shows which categories contribute the most to total sales.
Trend Analysis
Time-based data is best visualised using line charts.
df.groupby("order_date")["sales"].sum().plot()
This helps identify growth, drops, or seasonal patterns.
Distribution of Data
Understanding how values are spread is important.
sns.histplot(df["sales"], bins=10)
This reveals whether sales are concentrated or spread out.
Regional Insights
Grouping data by region helps identify geographic performance.
sns.barplot(data=df, x="region", y="sales", estimator=sum)
This gives a quick comparison across regions.
Key Takeaways
- Visualisation is essential for understanding data
- Different charts serve different purposes
- Simple dashboards can provide powerful insights
- Even basic plots can uncover meaningful patterns
Code Snippet:
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
df = pd.read_csv("sample_data.csv")
print("✅ Data Loaded")
df["order_date"] = pd.to_datetime(df["order_date"], errors="coerce")
df["sales"] = pd.to_numeric(df["sales"], errors="coerce")
df = df.dropna(subset=["order_date", "sales"])
plt.figure(figsize=(8, 5))
category_sales = df.groupby("category")["sales"].sum().sort_values()
category_sales.plot(kind="bar")
plt.title("Sales by Category")
plt.xlabel("Category")
plt.ylabel("Total Sales")
plt.tight_layout()
plt.show()
plt.figure(figsize=(8, 5))
daily_sales = df.groupby("order_date")["sales"].sum()
daily_sales.plot()
plt.title("Sales Trend Over Time")
plt.xlabel("Date")
plt.ylabel("Sales")
plt.tight_layout()
plt.show()
plt.figure(figsize=(8, 5))
sns.histplot(df["sales"], bins=10, kde=True)
plt.title("Sales Distribution")
plt.tight_layout()
plt.show()
plt.figure(figsize=(8, 5))
sns.barplot(data=df, x="region", y="sales", estimator=sum)
plt.title("Sales by Region")
plt.tight_layout()
plt.show()
No comments yet. Be the first to comment!