You're doing great! Now, please implement the final optimized script based on the above design ideas combined with the original code.  
  
Remember:   
1. Avoid visual elements that obscure each other, e.g., legends, labels. Automatically adjust the image layout before plt.show() via tight_layout() if necessary.  
2. If the text in the chart is too long, find a way to make all the text show up instead of overlapping. If the title is too long, you can break it into multiple lines.  
3. Be as imaginative and creative as possible in creating details of the chart, but don't make the chart redundant just to cope, but specific data values cannot appear inside the chart .  
4. If you are adding a new plot, take care that the chart is complete with all the elements, such as labels, axes, legends, and colors，but specific data values cannot appear inside the chart , unless it is intended to be shared with the original chart.  
5. If you are adding a new plot, carefully construct meaningful data and consider whether to give the new sub-plot a sub-title.  
6. You must not use `random()` to construct the data, as it needs to be explicitly constructed regardless of your chart type and topic.  
7. Above all, double-check to make sure the code works. Reduce unnecessary comments and focus on functionality.  
  
Now, generate your optimized plotting script in a single python code block.  
