Extracted Code to Execute
import pandas as pd
import matplotlib.pyplot as plt
# Filter data for Q1 of 2024 and 2025
# patched out problematic datetime concatenation line
q1_2024 = df[(df['year'] == 2024) & (df['quarter'] == 1)]
q1_2025 = df[(df['year'] == 2025) & (df['quarter'] == 1)]
# Group by coffee_name and sum price for Q1 sales
sales_2024 = q1_2024.groupby('coffee_name')['price'].sum().reset_index()
sales_2025 = q1_2025.groupby('coffee_name')['price'].sum().reset_index()
# Merge sales data for plotting
merged_sales = pd.merge(sales_2024, sales_2025, on='coffee_name', suffixes=('_2024', '_2025'))
# Plotting
plt.figure(figsize=(10, 6))
plt.bar(merged_sales['coffee_name'], merged_sales['price_2024'], label='2024', alpha=0.7)
plt.bar(merged_sales['coffee_name'], merged_sales['price_2025'], label='2025', alpha=0.7, bottom=merged_sales['price_2024'])
plt.title('Q1 Coffee Sales Comparison: 2024 vs 2025')
plt.xlabel('Coffee Name')
plt.ylabel('Total Sales ($)')
plt.legend()
plt.xticks(rotation=45)
plt.tight_layout()
# Save the figure
plt.savefig('chart_v1.png', dpi=300)
plt.close()