LLM output with revised code (V2)
<execute_python>
import pandas as pd
import matplotlib.pyplot as plt
# Filter for Q1 sales in 2024 and 2025
df_q1 = df[(df['quarter'] == 1) & (df['year'].isin([2024, 2025]))]
# Summarize sales by coffee and year
sales_summary = (
df_q1.groupby(['coffee_name', 'year'])['price']
.sum()
.unstack(fill_value=0)
)
# Sort by 2025 sales for ordering
sales_summary = sales_summary.sort_values(by=2025, ascending=False)
# Plot configuration
years = [2024, 2025]
x = range(len(sales_summary))
width = 0.35
fig, ax = plt.subplots(figsize=(12, 6))
# Plot bars for each year
ax.bar([i - width/2 for i in x], sales_summary[2024], width, label='2024', color='#1f77b4')
ax.bar([i + width/2 for i in x], sales_summary[2025], width, label='2025', color='#ff7f0e')
# Labels and title
ax.set_xticks(x)
ax.set_xticklabels(sales_summary.index, rotation=45, ha='right')
ax.set_xlabel('Coffee Name')
ax.set_ylabel('Total Q1 Sales')
ax.set_title('Q1 Coffee Sales Comparison: 2024 vs 2025')
ax.legend(title='Year')
plt.tight_layout()
plt.savefig('drink_sales_v2.png', dpi=300)
plt.close()
</execute_python>