1

如何设置顶点的背景颜色?

我知道应该有一个属性字典或其他东西,但我找不到一个例子。

我需要它在二分图中为不同类型的顶点着色:

gtdraw.graph_draw(g, pos=pos, 
                  vertex_fill_color=part, 
                  vertex_font_size=6, 
                  output_size=(5000, 5000), 
                  output="img/pic.png")
4

3 回答 3

2

通过顶点的背景颜色,我假设您的意思是 vertex_fill_color 属性。

以下代码取自这里

# Normalised RGB color.
# 0->Red, 1->Blue
red_blue_map = {0:(1,0,0,1),1:(0,0,1,1)}
# Create new vertex property
plot_color = g.new_vertex_property('vector<double>')
# add that property to graph
g.vertex_properties['plot_color'] = plot_color
# assign a value to that property for each node of that graph
for v in g.vertices():
    plot_color[v] = red_blue_map[g.vertex_properties['value'][v]]

gt.graph_draw(g,
              vertex_fill_color=g.vertex_properties['plot_color'])

该代码是不言自明的。

于 2020-02-29T05:45:45.027 回答
2

可以在此处找到完整的顶点属性列表。我不确定您所说的“背景颜色”是什么意思。如果要在顶点上添加光晕效果,可以设置vertex_haloTrue并使用vertex_halo_colorandvertex_halo_size来控制效果。如果你只是想改变顶点或轮廓的颜色,你可以vertex_color像现在一样使用vertex_fill_color

于 2015-11-08T18:07:29.110 回答
1

您可以使用关键字参数设置背景颜色vertex_fill_color,就像您这样做一样。只需检查part存储与二分信息相关的顶点属性(即哪个部分)。

对于一个简单的示例,您可以查看示例的结尾:构建价格网络,它展示了如何绘制一个网络,其中顶点颜色代表顶点的年龄,从较旧的(红色)到较新的(黑色)。这是取自此图形工具示例的插图:

在此处输入图像描述

我希望这能帮到您。

于 2015-11-08T17:45:47.610 回答