本文整理汇总了Python中igraph.Graph.vs["abundance"]方法的典型用法代码示例。如果您正苦于以下问题:Python Graph.vs["abundance"]方法的具体用法?Python Graph.vs["abundance"]怎么用?Python Graph.vs["abundance"]使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类igraph.Graph
的用法示例。
在下文中一共展示了Graph.vs["abundance"]方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: build_graph
# 需要导入模块: from igraph import Graph [as 别名]
# 或者: from igraph.Graph import vs["abundance"] [as 别名]
def build_graph(amplicons, relations):
"""
Convert pairwise relations into a graph structure.
"""
# Create vertices (= number of unique amplicons)
g = Graph(len(amplicons))
g.add_edges(relations)
amplicon_ids = [amplicon[0] for amplicon in amplicons]
abundances = [int(amplicon[1]) for amplicon in amplicons]
minimum, maximum = min(abundances), max(abundances)
# Determine canvas size
if len(abundances) < 500:
bbox = (1920, 1080)
elif len(abundances) > 4000:
bbox = (5760, 3240)
else:
bbox = (3840, 2160)
# Compute node attributes
node_colors = list()
node_sizes = list()
node_labels = list()
print("Building graph", file=sys.stdout)
for abundance in abundances:
# Color is coded by a 3-tuple of float values (0.0 to 1.0)
# Start from a max color in rgb(red, green, blue)
max_color = (176, 196, 222) # light steel blue
color = [1.0 * (c + (255 - c) / abundance) / 255 for c in max_color]
node_colors.append(color)
node_size = 30 + (abundance * 70 / maximum)
node_sizes.append(node_size)
# Label nodes with an abundance greater than 10
if abundance >= 10 or abundance == maximum:
node_labels.append(str(abundance))
else:
node_labels.append("") # Doesn't work with "None"
g.vs["name"] = amplicon_ids
g.vs["abundance"] = abundances
g.vs["label"] = node_labels
g.vs["color"] = node_colors
g.vs["vertex_size"] = node_sizes
return g, bbox