Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Create a Complete Line Chart | Basics: Line Charts
Visualization in Python with matplotlib

book
Create a Complete Line Chart

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 plt.show() function.
Tarefa

Swipe to start coding

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.

Solução

# Import the libraries
import pandas as pd
import matplotlib.pyplot as plt

# Load the data
us_cities_weather = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/ed80401e-2684-4bc4-a077-99d13a386ac7/US+cities+weather+data.csv', index_col = 0)

# Create Figure and Axes objects
fig, ax = plt.subplots()

# Save data for three cities
sf = us_cities_weather.loc['San Francisco']
dv = us_cities_weather.loc['Denver']
mm = us_cities_weather.loc['Miami']

# Initialize the plot
ax.plot(sf['Month'], sf['Temperature'], label = 'San Francisco', color = 'r',
linestyle = 'dotted', marker = 's')
ax.plot(dv['Month'], dv['Temperature'], label = 'Denver', color = 'b',
linestyle = 'dashed', marker = '^')
ax.plot(mm['Month'], mm['Temperature'], label = 'Miami', color = 'darkorange',
linestyle = 'dashdot', marker = 'o')

# Set custom labels on axis
ax.set_xlabel('Month')
ax.set_ylabel('Average temperature (Fahrenheit)')

# Add plot title and display the plot
plt.title('Average monthly temperature for the US cities')
plt.legend()
plt.show()

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 1. Capítulo 12
# Import the libraries
import pandas as pd
import matplotlib.pyplot as plt

# Load the data
us_cities_weather = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/ed80401e-2684-4bc4-a077-99d13a386ac7/US+cities+weather+data.csv', index_col = 0)

# Create Figure and Axes objects
fig, ax = plt.___()

# Save data for three cities
sf = us_cities_weather.loc['___']
dv = us_cities_weather.loc['___']
mm = us_cities_weather.loc['___']

# Initialize the plot
___(sf['Month'], sf['Temperature'], label = 'San Francisco', color = '___',
linestyle = '___', marker = '___')
___(dv['Month'], dv['Temperature'], label = 'Denver', color = '___',
linestyle = '___', marker = '___')
___(mm['Month'], mm['Temperature'], label = 'Miami', color = '___',
linestyle = '___', marker = '___')

# Set custom labels on axis
___('___')
___('___')

# Add plot title and display the plot
plt.title('___')
___
___
toggle bottom row
some-alt