Mục lục
2. Quan hệ võng lạc khả thị hóa
1. Pyvis giới thiệu
Pyvis thị nhất cá Python khố, dụng vu sang kiến hòa khả thị hóa võng lạc đồ. Tha cơ vu Vis.js khố, khả dĩ sinh thành giao hỗ thức đích HTML văn kiện, nhượng dụng hộ tại võng hiệt thượng trực quan địa tra khán hòa thao tác võng lạc đồ. Dĩ hạ thị Pyvis đích chủ yếu công năng hòa đặc điểm:
1. Sang kiến hòa khả thị hóa võng lạc đồ:
Pyvis duẫn hứa dụng hộ sang kiến tiết điểm hòa biên, tịnh tương kỳ khả thị hóa. Võng lạc đồ khả dĩ thị hữu hướng đồ hoặc vô hướng đồ.
2. Tập thành NetworkX:
Pyvis dữ NetworkX tập thành, khả dĩ trực tiếp tòng NetworkX đồ đối tượng sinh thành Pyvis đồ đối tượng, phương tiện dụng hộ tương dĩ hữu đích NetworkX đồ chuyển hoán vi giao hỗ thức đích khả thị hóa đồ.
3. Giao hỗ thức công năng:
Sinh thành đích đồ hình thị giao hỗ thức đích, dụng hộ khả dĩ tha động tiết điểm, súc phóng đồ hình, tra khán tiết điểm hòa biên đích tường tế tín tức ( như quyền trọng, tiêu thiêm đẳng ).
4. Định chế hóa tuyển hạng:
Pyvis đề cung đa chủng phối trí tuyển hạng, duẫn hứa dụng hộ định chế đồ hình đích ngoại quan hòa hành vi. Lệ như, khả dĩ thiết trí tiết điểm hòa biên đích nhan sắc, hình trạng, đại tiểu, tiêu thiêm, vật lý dẫn kình đẳng.
5. HTML thâu xuất:
Sinh thành đích võng lạc đồ khả dĩ bảo tồn vi HTML văn kiện, tiện vu phân hưởng hòa triển kỳ. Dụng hộ chỉ nhu tại lưu lãm khí trung đả khai HTML văn kiện tức khả tra khán đồ hình.
6. Khoái tốc nguyên hình hòa điều thí:
Pyvis đề cung đích giản đan API hòa trực quan đích phối trí tuyển hạng, sử kỳ thích hợp khoái tốc nguyên hình thiết kế hòa điều thí võng lạc đồ.
Pyvis thị nhất cá phi thường thích hợp dụng lai triển kỳ hòa phân tích phục tạp võng lạc kết cấu đích công cụ, đặc biệt thị tại nhu yếu giao hỗ thức khả thị hóa đích tràng cảnh hạ, như xã giao võng lạc phân tích, võng lạc thác phác nghiên cứu đẳng.
2. Quan hệ võng lạc khả thị hóa
import random
import string
import networkx as nx
from pyvis.network import Network
# sang kiến hữu hướng đồ
G = nx.DiGraph()
# thiêm gia tiết điểm hòa biên
node_list = [ "".join(random.choices(string.ascii_letters, k=5)) for _ in range(20)]
for _ in range(100):
start = random.choices(node_list)[0]
end = random.choices(node_list)[0]
w = random.choices(range(5), weights=[100, 1, 1, 1, 1])[0]
G.add_edge(start, end, weight=w)
# sang kiến Pyvis võng lạc
net = Network(height='750px',
width='100%',
bgcolor= "#222222",
font_color= "white",
select_menu=True,
filter_menu=True,
notebook=True)
# tương NetworkX đồ hình thiêm gia đáo Pyvis võng lạc
net.from_nx(G)
# phối trí biên đích ngoại quan
for edge in net.edges:
edge['title'] = f "Weight: {edge['width']}"
edge['value'] = edge['width']
# net.toggle_physics(True)
# hiển kỳ đồ hình
net.show( "graph.html" )
Giá đoạn đại mã thủ tiên sang kiến liễu nhất cá hữu hướng đồ, tịnh tùy cơ sinh thành liễu 20 cá tiết điểm, mỗi cá tiết điểm do 5 cá tùy cơ tự mẫu tổ thành. Tiếp trứ, tùy cơ tại giá ta tiết điểm chi gian thiêm gia liễu 100 điều biên, mỗi điều biên đô hữu nhất cá quyền trọng, kỳ trung quyền trọng vi 0 đích khái suất tối đại, kỳ tha quyền trọng ( 1 đáo 4 ) đích khái suất giác tiểu. Nhiên hậu, đại mã sử dụng Pyvis khố lai khả thị hóa giá cá đồ, tương NetworkX sang kiến đích hữu hướng đồ chuyển hoán vi Pyvis đích võng lạc đối tượng. Vi mỗi điều biên thiết trí liễu tiêu đề hòa trị, tiêu đề hiển kỳ biên đích quyền trọng, trị dụng vu khống chế biên đích khả thị hóa hiệu quả. Tối hậu, đại mã sinh thành nhất cá danh vi "graph.html" đích HTML văn kiện, dụng vu triển kỳ đồ hình.
Quan hệ si tuyển