我想使用Graph工具edge_gradient
的gt.graph_draw()
属性,以便更好地可视化对于箭头等标记来说过于拥挤的图中连接的方向。你知道吗
从文档中的描述来看,似乎这就是这个属性应该做的。但是,目前它只允许我将边设置为纯色。你知道吗
我是这样使用物业的:
egradient = g.new_edge_property('vector<double>')
g.edge_properties['egradient'] = egradient
e = g.add_edge(v1, v2)
egradient[e] = (0.9, 0.329,0.282,0.478,1)
...
gt.graph_draw(g, ... edge_gradient=g.edge_properties["egradient"])
如果我修改(0.9, 0.329,0.282,0.478,1)
中的第一个值,并且如果我尝试向它传递一个元组列表,那么外观将保持不变,这是从图形工具内部获得的:
TypeError: float() argument must be a string or a number
如何在图形工具中实现所需的功能?如果我不能,那么边缘渐变5元组中的第一个值还有什么用呢?你知道吗
edge_gradient
实际上需要整数列表,而不是元组列表。一开始我也犯了同样的错误。你知道吗示例:如果要从白色变为黑色,则“edge\u gradient”参数应如下所示:
这就是docs的意思,“每组5个元素被解释为
[o, r, g, b, a]
,其中o
是范围[0, 1]
内的偏移量,其余的值指定颜色。你知道吗它变得有点难读,所以我分开我的停止点,并将它们格式化如下:
从白色到黑色再到红色。。。至少在理论上是这样。我很难让
edge_gradient
处理两个以上的渐变停止点。我总是有一些边缘颜色,比如我传递给{{CD1}}属性的列表,其余的都有奇怪的行为,比如中间有最终的颜色。你知道吗相关问题 更多 >
编程相关推荐