可视化

可视化工具。

图形

sknetwork.visualization.graphs.visualize_graph(adjacency: csr_matrix | None = None, position: ndarray | None = None, names: ndarray | None = None, labels: Iterable | None = None, name_position: str = 'right', scores: Iterable | None = None, probs: ndarray | csr_matrix | None = None, seeds: list | dict | None = None, width: float | None = 400, height: float | None = 300, margin: float = 20, margin_text: float = 3, scale: float = 1, node_order: ndarray | None = None, node_size: float = 7, node_size_min: float = 1, node_size_max: float = 20, display_node_weight: bool | None = None, node_weights: ndarray | None = None, node_width: float = 1, node_width_max: float = 3, node_color: str = 'gray', display_edges: bool = True, edge_labels: list | None = None, edge_width: float = 1, edge_width_min: float = 0.5, edge_width_max: float = 20, display_edge_weight: bool = False, edge_color: str | None = None, label_colors: Iterable | None = None, font_size: int = 12, directed: bool | None = None, filename: str | None = None) str[source]

以 SVG 格式返回图形的图像。

参数:
  • adjacency – 图的邻接矩阵。

  • position – 节点的坐标。

  • names – 节点的名称。

  • labels – 节点的标签(负值表示没有标签)。

  • name_position – 名称的位置(left、right、above、below)

  • scores – 节点的分数(重要性的度量)。

  • probs – 标签上的概率分布。

  • seeds – 要突出显示的节点(如果为字典,则仅考虑键)。

  • width – 图像的宽度。

  • height – 图像的高度。

  • margin – 图像的边距。

  • margin_text – 节点和文本之间的边距。

  • scale – 图像尺寸的乘法因子。

  • node_order – 节点显示顺序。

  • node_size – 节点大小。

  • node_size_min – 节点最小尺寸。

  • node_size_max – 节点最大尺寸。

  • node_width – 节点圆形宽度。

  • node_width_max – 节点圆形最大宽度。

  • node_color – 节点默认颜色(svg 颜色)。

  • display_node_weight – 如果 True,通过节点大小显示节点权重。

  • node_weights – 节点权重。

  • display_edges – 如果 True,显示边。

  • edge_labels – 边的标签,作为元组列表(源,目标,标签)。

  • edge_width – 边的宽度。

  • edge_width_min – 边的最小宽度。

  • edge_width_max – 边的最大宽度。

  • display_edge_weight – 如果 True,通过边宽度显示边权重。

  • edge_color – 边的默认颜色(svg 颜色)。

  • label_colors – 标签的颜色(svg 颜色)。

  • font_size – 字号。

  • directed – 如果 True,将图视为有向图。

  • filename – 保存图像的文件名(可选)。

返回值:

image – SVG 图像。

返回值类型:

str

示例

>>> from sknetwork.data import karate_club
>>> graph = karate_club(True)
>>> adjacency = graph.adjacency
>>> position = graph.position
>>> from sknetwork.visualization import visualize_graph
>>> image = visualize_graph(adjacency, position)
>>> image[1:4]
'svg'
sknetwork.visualization.graphs.visualize_bigraph(biadjacency: csr_matrix, names_row: ndarray | None = None, names_col: ndarray | None = None, labels_row: dict | ndarray | None = None, labels_col: dict | ndarray | None = None, scores_row: dict | ndarray | None = None, scores_col: dict | ndarray | None = None, probs_row: ndarray | csr_matrix | None = None, probs_col: ndarray | csr_matrix | None = None, seeds_row: list | dict | None = None, seeds_col: list | dict | None = None, position_row: ndarray | None = None, position_col: ndarray | None = None, reorder: bool = True, width: float | None = 400, height: float | None = 300, margin: float = 20, margin_text: float = 3, scale: float = 1, node_size: float = 7, node_size_min: float = 1, node_size_max: float = 20, display_node_weight: bool = False, node_weights_row: ndarray | None = None, node_weights_col: ndarray | None = None, node_width: float = 1, node_width_max: float = 3, color_row: str = 'gray', color_col: str = 'gray', label_colors: Iterable | None = None, display_edges: bool = True, edge_labels: list | None = None, edge_width: float = 1, edge_width_min: float = 0.5, edge_width_max: float = 10, edge_color: str = 'black', display_edge_weight: bool = True, font_size: int = 12, filename: str | None = None) str[source]

以 SVG 格式返回二部图的图像。

参数:
  • biadjacency – 图的二部邻接矩阵。

  • names_row – 行的名称。

  • names_col – 列的名称。

  • labels_row – 行的标签(负值表示没有标签)。

  • labels_col – 列的标签(负值表示没有标签)。

  • scores_row – 行的分数(重要性度量)。

  • scores_col – 列的分数(重要性度量)。

  • probs_row – 行的标签概率分布。

  • probs_col – 列的标签概率分布。

  • seeds_row – 要突出显示的行(如果为字典,则仅考虑键)。

  • seeds_col – 要突出显示的列(如果为字典,则仅考虑键)。

  • position_row – 行的位置。

  • position_col – 列的位置。

  • reorder – 使用聚类对节点进行排序。

  • width – 图像的宽度。

  • height – 图像的高度。

  • margin – 图像的边距。

  • margin_text – 节点和文本之间的边距。

  • scale – 图像尺寸的乘法因子。

  • node_size – 节点大小。

  • node_size_min – 节点最小尺寸。

  • node_size_max – 节点最大尺寸。

  • display_node_weight – 如果 True,通过节点大小显示节点权重。

  • node_weights_row – 行的权重(仅在 display_node_weightTrue 时使用)。

  • node_weights_col – 列的权重(仅在 display_node_weightTrue 时使用)。

  • node_width – 节点圆形宽度。

  • node_width_max – 节点圆形最大宽度。

  • color_row – 行的默认颜色(svg 颜色)。

  • color_col – 列的默认颜色(svg 颜色)。

  • label_colors – 标签的颜色(svg 颜色)。

  • display_edges – 如果 True,显示边。

  • edge_labels – 边的标签,作为元组列表(源,目标,标签)。

  • edge_width – 边的宽度。

  • edge_width_min – 边的最小宽度。

  • edge_width_max – 边的最大宽度。

  • display_edge_weight – 如果 True,通过边宽度显示边权重。

  • edge_color – 边的默认颜色(svg 颜色)。

  • font_size – 字号。

  • filename – 保存图像的文件名(可选)。

返回值:

image – SVG 图像。

返回值类型:

str

示例

>>> from sknetwork.data import movie_actor
>>> biadjacency = movie_actor()
>>> from sknetwork.visualization import visualize_bigraph
>>> image = visualize_bigraph(biadjacency)
>>> image[1:4]
'svg'

树状图

sknetwork.visualization.dendrograms.visualize_dendrogram(dendrogram: ndarray, names: ndarray | None = None, rotate: bool = False, width: float = 400, height: float = 300, margin: float = 10, margin_text: float = 5, scale: float = 1, line_width: float = 2, n_clusters: int = 2, color: str = 'black', colors: Iterable | None = None, font_size: int = 12, reorder: bool = False, rotate_names: bool = True, filename: str | None = None)[source]

以 SVG 格式返回树状图的图像。

参数:
  • dendrogram – 要显示的树状图。

  • names – 叶子的名称。

  • rotate – 如果 True,旋转树,使根节点位于左侧。

  • width – 图像宽度(不包括边距)。

  • height – 图像高度(不包括边距)。

  • margin – 边距。

  • margin_text – 叶节点与其名称之间的边距(如果有)。

  • scale – 缩放比例。

  • line_width – 线宽。

  • n_clusters – 要显示的彩色聚类数量。

  • color – 树状图的默认 SVG 颜色。

  • colors – 树状图的聚类 SVG 颜色(可选)。

  • font_size – 字号。

  • reorder – 如果 True,重新排序叶子,使左子树的叶子数量多于右子树。

  • rotate_names – 如果 True,旋转叶子节点的名称(仅在 rotateFalse 时有效)。

  • filename – 保存图像的文件名(可选)。

示例

>>> dendrogram = np.array([[0, 1, 1, 2], [2, 3, 2, 3]])
>>> from sknetwork.visualization import svg_dendrogram
>>> image = svg_dendrogram(dendrogram)
>>> image[1:4]
'svg'