ComenzarEmpieza gratis

Representa el número de cambios de aristas a lo largo del tiempo

¡Ahora vas a crear unas gráficas! Todas las listas que generaste antes también se han cargado para este ejercicio. No te preocupes por parte del código más avanzado de matplotlib que aparece abajo: hay comentarios para ayudarte a entender qué está pasando.

Este ejercicio forma parte del curso

Análisis de redes intermedio en Python

Ver curso

Instrucciones del ejercicio

  • Grafica el número de aristas añadidas a lo largo del tiempo. Para ello:
    • Usa una comprensión de lista para iterar sobre added y crea una lista llamada edges_added. La expresión de salida de la comprensión es len(g.edges()), donde g es tu variable iteradora.
    • Pasa la lista edges_added a ax1.plot().
  • Grafica el número de aristas eliminadas a lo largo del tiempo. De nuevo, usa una comprensión de lista, esta vez iterando sobre removed en lugar de added.
  • Grafica los cambios fraccionarios a lo largo del tiempo pasándolos como argumento a ax2.plot().

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

# Import matplotlib
import matplotlib.pyplot as plt

fig = plt.figure()
ax1 = fig.add_subplot(111)

# Plot the number of edges added over time
edges_added = [____(____) for ____ in ____]
plot1 = ax1.plot(____, label='added', color='orange')

# Plot the number of edges removed over time
edges_removed = [____(____) for ____ in ____]
plot2 = ax1.plot(____, label='removed', color='purple')

# Set yscale to logarithmic scale
ax1.set_yscale('log')  
ax1.legend()

# 2nd axes shares x-axis with 1st axes object
ax2 = ax1.twinx()

# Plot the fractional changes over time
plot3 = ax2.plot(____, label='fractional change', color='green')

# Here, we create a single legend for both plots
lines1, labels1 = ax1.get_legend_handles_labels()
lines2, labels2 = ax2.get_legend_handles_labels()
ax2.legend(lines1 + lines2, labels1 + labels2, loc=0)
plt.axhline(0, color='green', linestyle='--')
plt.show()
Editar y ejecutar código