Daftar Isi:
Video: Software Testing Tutorials for Beginners 2024
Grafik berguna bagi ilmuwan data. Grafik adalah penggambaran data yang menunjukkan hubungan antara titik data dengan menggunakan jalur di Pythopn. Tujuannya adalah untuk menunjukkan bahwa beberapa titik data berhubungan dengan titik data lainnya, namun tidak semua titik data yang muncul pada grafik.
Pikirkan peta sistem kereta bawah tanah. Masing-masing stasiun terhubung ke stasiun lain, namun tidak ada stasiun tunggal yang terhubung ke semua stasiun dalam sistem kereta bawah tanah. Grafik adalah topik sains data yang populer karena penggunaannya dalam analisis media sosial. Saat melakukan analisis media sosial, Anda menggambarkan dan menganalisis jaringan hubungan, seperti teman atau koneksi bisnis, dari hub sosial seperti Facebook, Google+, Twitter, atau LinkedIn.
Dua penggambaran grafik yang umum adalah terdistorsi , di mana grafik tersebut hanya menunjukkan garis antara elemen data, dan diarahkan , di mana panah ditambahkan ke tampilan garis data mengalir ke arah tertentu. Misalnya, pertimbangkan penggambaran sistem air. Air hanya akan mengalir dalam satu arah dalam banyak kasus, jadi Anda bisa menggunakan grafik terarah untuk menggambarkan tidak hanya hubungan antara sumber dan target air tetapi juga untuk menunjukkan arah air dengan menggunakan panah.
Mengembangkan grafik yang tidak diarahkan
Grafik yang tidak diarahkan hanya menunjukkan hubungan antara node. Outputnya tidak memberikan arahan dari satu simpul ke node berikutnya. Misalnya, ketika membangun konektivitas antara halaman web, tidak ada arah yang tersirat. Contoh berikut menunjukkan bagaimana membuat grafik yang tidak diarahkan.
import networkx sebagai nx import matplotlib. pyplot sebagai plt G = nx. Grafik () H = nx. G. add_nodes_from (range (4, 7)) H. add_node (7) G. add_nodes_from (H) G. add_edge (1, 2) G. add_node (1) G. add_nodes_from ([2, 3]) G. add_nodes_from (kisaran (4, 7)) H. add_node G. add_edge (1, 1) G. add_edges_from ([(2, 3), (3, 6), (4, 6), (5, 6)]) H. add_edges_from ([(4, 7), (5, 7), (6, 7)]) G. add_edges_from (H. Tepi ()) nx. draw_networkx (G) plt. show ()
Contoh ini membangun grafik dengan menggunakan sejumlah teknik yang berbeda. Ini dimulai dengan mengimpor paket Networkx. Untuk membuat grafik baru yang tidak diarahkan, kode tersebut memanggil konstruktor Graph (), yang dapat mengambil sejumlah argumen masukan untuk digunakan sebagai atribut. Namun, Anda dapat membuat grafik yang sangat berguna tanpa menggunakan atribut, yang merupakan contoh contoh ini.
Cara termudah untuk menambahkan simpul adalah dengan memanggil add_node () dengan nomor simpul. Anda juga dapat menambahkan daftar, kamus, atau jangkauan () simpul menggunakan add_nodes_from (). Sebenarnya, Anda bisa mengimpor node dari grafik lain jika Anda mau.
Meskipun simpul yang digunakan dalam contoh bergantung pada angka, Anda tidak perlu menggunakan angka untuk nodus Anda. Sebuah simpul dapat menggunakan satu huruf, string, atau bahkan sebuah tanggal. Node memang memiliki beberapa batasan. Misalnya, Anda tidak dapat membuat simpul menggunakan nilai Boolean.
Simpul tidak memiliki konektivitas sejak awal. Anda harus mendefinisikan koneksi (tepi) di antara keduanya. Untuk menambahkan satu sisi, Anda memanggil add_edge () dengan jumlah simpul yang ingin Anda tambahkan. Seperti halnya node, Anda dapat menggunakan add_edges_from () untuk membuat lebih dari satu tepi menggunakan daftar, kamus, atau grafik lain sebagai masukan. Inilah output dari contoh ini (output Anda mungkin sedikit berbeda tetapi harus memiliki koneksi yang sama).
Grafik yang tidak terhubung menghubungkan node bersama-sama untuk membentuk pola.Mengembangkan grafik terarah
Anda menggunakan grafik terarah saat Anda perlu menunjukkan arah, katakan dari titik awal sampai titik akhir. Bila Anda mendapatkan peta yang menunjukkan cara mendapatkan dari satu titik tertentu ke titik lainnya, simpul awal dan simpul akhir ditandai seperti itu dan garis antara nodus ini (dan semua nodus perantara), tunjukkan arahnya.
Grafik Anda tidak perlu membosankan. Anda dapat mendandaninya dengan berbagai cara sehingga pemirsa memperoleh informasi tambahan dengan cara yang berbeda. Misalnya, Anda dapat membuat label khusus, menggunakan warna khusus untuk nodus tertentu, atau bergantung pada warna untuk membantu orang melihat maknanya di balik grafik Anda.
Anda juga dapat mengubah berat garis tepi dan menggunakan teknik lain untuk menandai jalur tertentu di antara nodus sebagai yang lebih baik untuk dipilih. Contoh berikut menunjukkan banyak (tapi tidak hampir semua) cara Anda dapat mendandani grafik yang diarahkan dan membuatnya lebih menarik:
import networkx sebagai nx import matplotlib. pyplot sebagai plt G = nx. Digraf () G. add_node (1) G. add_nodes_from ([2, 3]) G. add_nodes_from (kisaran (4, 6)) G. add_path ([6, 7, 8]) G. add_edge (1, 2) G. add_edges_from ([(1, 4), (4, 5), (2, 3), (3, 6), (5, 6)]) warna = ['r', 'g', 'g', 'g', 'g', 'm', 'm', 'r'] labels = {1: 'Mulai', 2: '2', 3: '3', 4: '4', 5: '5', 6: '6', 7: '7', 8: 'Akhir'} ukuran = [800, 300, 300, 300, 300, 600, 300, 800] nx. draw_networkx (G, node_color = warna, simpul_shape = "D", with_labels = Benar, label = label, simpul_size = ukuran) plt. show ()
Contohnya dimulai dengan membuat grafik arah dengan menggunakan DiGraph () constructor. Anda harus mencatat bahwa paket NetworkX juga mendukung tipe grafik MultiGraph () dan MultiDiGraph (). Lihat daftar semua jenis grafik ini.
Menambahkan node sama seperti bekerja dengan grafik yang tidak diarahkan. Anda dapat menambahkan node tunggal menggunakan add_node () dan beberapa node menggunakan add_nodes_from (). Panggilan add_path () memungkinkan Anda membuat node dan tepi secara bersamaan. Urutan simpul dalam panggilan itu penting. Aliran dari satu simpul ke node lainnya dari kiri ke kanan dalam daftar yang dipasok ke panggilan.
Menambahkan tepi sama seperti bekerja dengan grafik yang tidak diarahkan juga. Anda dapat menggunakan add_edge () untuk menambahkan satu tepi atau add_edges_from () untuk menambahkan beberapa tepi pada satu waktu. Namun, urutan nomor simpul itu penting.Aliran mengalir dari simpul kiri ke simpul kanan pada masing-masing pasangan.
Contoh ini menambahkan warna simpul khusus, label, bentuk (hanya satu bentuk yang digunakan), dan ukuran ke output. Anda tetap memanggil draw_networkx () untuk melakukan tugas. Namun, menambahkan parameter yang ditunjukkan akan mengubah tampilan grafik. Perhatikan bahwa Anda harus menyetel with_labels ke True untuk melihat label yang diberikan oleh parameter label. Berikut adalah output dari contoh ini.
Gunakan grafik terarah untuk menunjukkan arah antara node.