是否可以调整 Python 的 igraph 中边缘标签的字体大小?
Is it possible to adjust the font size of an edge label in Python's igraph?
我正在尝试调整 Python 的 igraph 包中边缘标签的字体大小,但是一旦我尝试添加标签大小属性,之前存在的标签就会消失。我在 igraph 文档中找不到任何关于边缘标签大小的信息,我想知道是否不可能做我想做的事情。这里有一些不可复制的伪代码来说明:
G = ig.Graph(directed=True)
outgoing = G.es.select(..., ...)
incoming = G.es.select(..., ...)
outgoing["label"] = ...
incoming["label"] = ...
# once I add these lines... **, the labels disappear
outgoing["label_size"] = 2
incoming["label_size"] = 3
visual_style["edge_label"] = G.es["label"]
visual_style["edge_label_size"] = G.es["label_size"]
ig.plot(G, **visual_style)
对此有任何想法,如果有人知道我可以在文档中的什么地方找到它,我将不胜感激
您做得对,但分配的尺寸非常小。
我们先画一个默认属性的图,点大小为12
import igraph
g = igraph.Graph([(0, 1), (0, 2), (1, 2)])
g.vs["label"] = [1, 2, 3]
g.es["label"] = "edge"
layout = g.layout("fr")
igraph.plot(g, "graph_default.png", layout = layout, bbox=(200, 200))
生成下图。
更改边缘标签尺寸后
g.es[0]["label_size"] = 2
g.es[2]["label_size"] = 24
layout = g.layout("fr")
igraph.plot(g, "graph_scaled.png", layout = layout, bbox=(200, 200))
这变成:
其中一条边几乎消失了。
我正在尝试调整 Python 的 igraph 包中边缘标签的字体大小,但是一旦我尝试添加标签大小属性,之前存在的标签就会消失。我在 igraph 文档中找不到任何关于边缘标签大小的信息,我想知道是否不可能做我想做的事情。这里有一些不可复制的伪代码来说明:
G = ig.Graph(directed=True)
outgoing = G.es.select(..., ...)
incoming = G.es.select(..., ...)
outgoing["label"] = ...
incoming["label"] = ...
# once I add these lines... **, the labels disappear
outgoing["label_size"] = 2
incoming["label_size"] = 3
visual_style["edge_label"] = G.es["label"]
visual_style["edge_label_size"] = G.es["label_size"]
ig.plot(G, **visual_style)
对此有任何想法,如果有人知道我可以在文档中的什么地方找到它,我将不胜感激
您做得对,但分配的尺寸非常小。
我们先画一个默认属性的图,点大小为12
import igraph
g = igraph.Graph([(0, 1), (0, 2), (1, 2)])
g.vs["label"] = [1, 2, 3]
g.es["label"] = "edge"
layout = g.layout("fr")
igraph.plot(g, "graph_default.png", layout = layout, bbox=(200, 200))
生成下图。
更改边缘标签尺寸后
g.es[0]["label_size"] = 2
g.es[2]["label_size"] = 24
layout = g.layout("fr")
igraph.plot(g, "graph_scaled.png", layout = layout, bbox=(200, 200))
这变成:
其中一条边几乎消失了。