Mục lục
2. Mạng lưới quan hệ khả thị hóa
1. Pyvis giới thiệu
Pyvis là một cái Python kho, dùng cho sáng tạo cùng khả thị hóa internet đồ. Nó căn cứ vào Vis.js kho, có thể sinh thành lẫn nhau thức HTML văn kiện, làm người dùng ở trang web thượng trực quan mà xem xét cùng thao tác internet đồ. Dưới là Pyvis chủ yếu công năng cùng đặc điểm:
1. Sáng tạo cùng khả thị hóa internet đồ:
Pyvis cho phép người dùng sáng tạo tiết điểm cùng biên, cũng đem này khả thị hóa. Internet đồ có thể là có hướng đồ hoặc vô hướng đồ.
2. Tổng thể NetworkX:
Pyvis cùng NetworkX tổng thể, có thể trực tiếp từ NetworkX đồ đối tượng sinh thành Pyvis đồ đối tượng, phương tiện người dùng đem đã có NetworkX đồ thay đổi vì lẫn nhau thức khả thị hóa đồ.
3. Lẫn nhau thức công năng:
Sinh thành đồ hình là lẫn nhau thức, người dùng có thể kéo động tiết điểm, súc phóng đồ hình, xem xét tiết điểm cùng biên kỹ càng tỉ mỉ tin tức ( như quyền trọng, nhãn chờ ).
4. Định chế hóa lựa chọn:
Pyvis cung cấp nhiều loại phối trí lựa chọn, cho phép người dùng định vẽ bản đồ hình vẻ ngoài cùng hành vi. Tỷ như, có thể thiết trí tiết điểm cùng biên nhan sắc, hình dạng, lớn nhỏ, nhãn, vật lý động cơ chờ.
5. HTML phát ra:
Sinh thành internet đồ có thể bảo tồn vì HTML văn kiện, dễ bề chia sẻ cùng triển lãm. Người dùng chỉ cần ở trình duyệt trung mở ra HTML văn kiện có thể xem xét đồ hình.
6. Nhanh chóng nguyên hình cùng điều chỉnh thử:
Pyvis cung cấp đơn giản API cùng trực quan phối trí lựa chọn, làm này thích hợp nhanh chóng nguyên hình thiết kế cùng điều chỉnh thử internet đồ.
Pyvis là một cái phi thường thích hợp dùng để triển lãm cùng phân tích phức tạp internet kết cấu công cụ, đặc biệt là ở yêu cầu lẫn nhau thức khả thị hóa cảnh tượng hạ, như xã giao internet phân tích, internet Topology nghiên cứu chờ.
2. Mạng lưới quan hệ khả thị hóa
import random
import string
import networkx as nx
from pyvis.network import Network
# sáng tạo có hướng đồ
G = nx.DiGraph()
# tăng thêm tiết điểm cùng 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)
# sáng tạo Pyvis internet
net = Network(height='750px',
width='100%',
bgcolor= "#222222",
font_color= "white",
select_menu=True,
filter_menu=True,
notebook=True)
# đem NetworkX đồ hình tăng thêm đến Pyvis internet
net.from_nx(G)
# phối trí biên vẻ ngoài
for edge in net.edges:
edge['title'] = f "Weight: {edge['width']}"
edge['value'] = edge['width']
# net.toggle_physics(True)
# biểu hiện đồ hình
net.show( "graph.html" )
Này đoạn số hiệu đầu tiên sáng lập một cái có hướng đồ, cũng tùy cơ sinh thành 20 cái tiết điểm, mỗi cái tiết điểm từ 5 cái tùy cơ chữ cái tạo thành. Tiếp theo, tùy cơ ở này đó tiết điểm chi gian tăng thêm 100 điều biên, mỗi điều biên đều có một cái quyền trọng, trong đó quyền trọng vì 0 xác suất lớn nhất, mặt khác quyền trọng ( 1 đến 4 ) xác suất nhỏ lại. Sau đó, số hiệu sử dụng Pyvis kho tới khả thị hóa cái này đồ, đem NetworkX sáng tạo có hướng đồ thay đổi vì Pyvis internet đối tượng. Vì mỗi điều biên thiết trí tiêu đề cùng giá trị, tiêu đề biểu hiện biên quyền trọng, giá trị dùng cho khống chế biên khả thị hóa hiệu quả. Cuối cùng, số hiệu sinh thành một cái tên là "graph.html" HTML văn kiện, dùng cho triển lãm đồ hình.
Quan hệ sàng chọn