我有以下代码使用属性贴图注释图形:
Snackbar snackbar = Snackbar.make(fab, Html.fromHtml("<font color=\"#ffffff\">Deleted</font>"), Snackbar.LENGTH_LONG);
当我运行此命令时,我收到以下错误消息:
from graph_tool.all import *
# define graph
g = Graph()
g.set_directed(True)
species = g.new_vertex_property("string")
species_dict = {}
reaction_dict = {}
#add species and reactions
s1 = g.add_vertex()
species[s1] = 'limonene'
species_dict[g.vertex_index[s1]] = 'limonene'
g.vertex_properties["species"] = species
g.vp.species[s1]
这是为什么?如果我在我的IPython控制台中键入File "/home/pmj27/projects/NOC/exergy/make_graph.py", line 45, in <module>
g.vp.species[s1]
AttributeError: 'PropertyDict' object has no attribute 'species'
,我会得到g.vp
作为答案,所以显然有一个属性映射。
答案 0 :(得分:1)
通过属性访问属性地图(在您的示例中为g.vp.species[s1]
)仅适用于最新版本的图表工具(目前为2.11,截至2015年11月)。在您使用的版本(2.2.42)中,您必须使用字典界面:g.vp["species"][s1]
。