Challenge 2Challenge 2

Good job! I think you can now build an informative chart yourself with real data.

Let's just recap the necessary steps:

  1. Load the matplotlib.pyplot library. Preferably with plt alias;
  2. Create Figure and Axes objects using .subplots() function (preferably fig, ax);
  3. Initialize each line with ax.plot() functions with necessary data and customization parameters (label, color, marker, linestyle);
  4. Set axis labels using ax.set_xlabel() and ax.set_ylabel() functions;
  5. Display the plot title, legend using plt.title() and plt.legend() functions (legend requires label parameter within .plot() functions to be set);
  6. Display the plot using function.


You are given the us_cities_weather dataframe containing the weather data for the US cities (average temperature per month from 1961 - 1990 in Fahrenheit). You need to display the monthly average temperature for three cities: San Francisco, Denver, and Miami. Follow the next steps:

  1. Create Figure and Axes objects assigned to fig, ax variables respectively.
  2. Save data for each city in a separate variable (dv for Denver, sf for San Francisco, and mm for Miami).
  3. Set the parameters for three lines (each corresponding to the respective city):
    • Red ('r') dotted ('dotted') line with square ('s') points for San Francisco;
    • Blue ('b') dashed ('dashed') line with triangle ('^') points for Denver;
    • Orange ('darkorange') dashdotted ('dashdot') line with circle ('o') points for Miami;
  4. Set the labels for the plot:
    • 'Month' on the x-axis;
    • 'Average Temperature (Fahrenheit)' on the y-axis;
  5. Add plot title 'Average monthly temperature for the US cities'.
  6. Add a legend and display the plot.

Everything was clear?

Section 1. Chapter 12
toggle bottom row