Vykresli počet změn hran v čase
Teď si vytvoříme několik grafů! Všechny listy, které jsi vytvořil/a dříve, jsou v tomto cvičení už načteny. Neměj obavy z části složitějšího kódu pro matplotlib níže — komentáře ti pomůžou pochopit, co se děje.
Toto cvičení je součástí kurzu
Intermediate Network Analysis in Python
Pokyny k cvičení
- Vykresli počet přidaných hran v čase. Postupuj takto:
- Pomocí list comprehension iteruj přes
addeda vytvoř list nazvanýedges_added. Výstupní výraz list comprehension jelen(g.edges()), kdegje tvoje iterační proměnná. - Předej list
edges_addeddoax1.plot().
- Pomocí list comprehension iteruj přes
- Vykresli počet odebraných hran v čase. Opět použij list comprehension, tentokrát s iterací přes
removedmístoadded. - Vykresli zlomkové změny v čase tak, že je předáš jako argument do
ax2.plot().
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# 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()