Plot jumlah perubahan edge sepanjang waktu
Sekarang Anda akan membuat beberapa plot! Semua list yang sudah Anda buat sebelumnya telah dimuat untuk Anda dalam latihan ini juga. Jangan khawatir tentang beberapa kode matplotlib yang tampak rumit di bawah ini: ada komentar untuk membantu Anda memahami apa yang terjadi.
Latihan ini merupakan bagian dari kursus
Analisis Jaringan Menengah di Python
Instruksi latihan
- Plot jumlah edge yang ditambahkan dari waktu ke waktu. Untuk melakukannya:
- Gunakan list comprehension untuk melakukan iterasi atas
addeddan buat list bernamaedges_added. Ekspresi keluaran dari list comprehension adalahlen(g.edges()), dengangsebagai variabel iterator Anda. - Berikan list
edges_addedkeax1.plot().
- Gunakan list comprehension untuk melakukan iterasi atas
- Plot jumlah edge yang dihapus dari waktu ke waktu. Sekali lagi, gunakan list comprehension, kali ini melakukan iterasi atas
removedalih-alihadded. - Plot perubahan fraksional dari waktu ke waktu dengan memberikannya sebagai argumen ke
ax2.plot().
Latihan interaktif langsung praktik
Cobalah latihan ini dengan melengkapi kode contoh ini.
# 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()