agent: |
yL3S7RVMgqHLjI2r0KezPlot Savings based on AWS EC2 Rightsizing Recommendations
Plot Savings based on AWS EC2 Rightsizing Recommendations
There was a problem that the LLM was not able to address. Please rephrase your prompt and try again.
This task generates a bar chart visualizing AWS EC2 rightsizing savings, with instance names on the X-axis and different recommendations distinguished by instance ID and rank in the legend.
inputs
outputs
# print(json.dumps(data_for_plotting,indent=4))
# Aggregate savings values for each instance, keeping track of both instance ID and name
savings_by_instance = {}
for entry in data_for_plotting:
instance_id = entry["instance_id"]
instance_name = entry["instance_name"] # Keep instance name for labeling purposes
savings_value = entry["estimated_monthly_savings_value"]
# Check if the instance ID is already a key in the dictionary
if instance_id not in savings_by_instance:
savings_by_instance[instance_id] = {'name': instance_name, 'savings': [savings_value]}
else:
savings_by_instance[instance_id]['savings'].append(savings_value)
# Plotting
context.plot.xlabel = "Instance Name"
context.plot.ylabel = "Estimated Monthly Savings ($)"
context.plot.title = "Estimated Monthly Savings by Instance"
# Add a trace for each instance's savings values
for instance_id, info in savings_by_instance.items():
instance_name = info['name'] # Retrieve instance name for labeling
savings_values = info['savings']
for i, savings_value in enumerate(savings_values):
trace_name = f"({instance_id})-Rec{i+1}"
context.plot.add_trace(name=trace_name, xpts=[instance_name], ypts=[savings_value], tracetype='bar')
copied