提交 6cdbe8d7 authored 作者: Frederic Bastien's avatar Frederic Bastien

Fix pydotprint max_labal_size option.

上级 9ad495f1
...@@ -505,8 +505,10 @@ def pydotprint(fct, outfile=None, ...@@ -505,8 +505,10 @@ def pydotprint(fct, outfile=None,
#a var id is needed as otherwise var with the same type will be merged in the graph. #a var id is needed as otherwise var with the same type will be merged in the graph.
varstr = str(var.type) varstr = str(var.type)
if (varstr in all_strings) or with_ids: if (varstr in all_strings) or with_ids:
varstr += ' id=' + str(len(var_str)) idx = ' id=' + str(len(var_str))
if len(varstr) > max_label_size: if len(varstr)+len(idx) > max_label_size:
varstr = varstr[:max_label_size-3-len(idx)]+idx+'...'
elif len(varstr) > max_label_size:
varstr = varstr[:max_label_size-3]+'...' varstr = varstr[:max_label_size-3]+'...'
var_str[var]=varstr var_str[var]=varstr
all_strings.add(varstr) all_strings.add(varstr)
...@@ -529,11 +531,14 @@ def pydotprint(fct, outfile=None, ...@@ -529,11 +531,14 @@ def pydotprint(fct, outfile=None,
else: pf = time*100/mode.fct_call_time[fct] else: pf = time*100/mode.fct_call_time[fct]
prof_str=' (%.3fs,%.3f%%,%.3f%%)'%(time,pt,pf) prof_str=' (%.3fs,%.3f%%,%.3f%%)'%(time,pt,pf)
applystr = str(node.op).replace(':','_') applystr = str(node.op).replace(':','_')
if len(applystr)>max_label_size:
applystr = applystr[:max_label_size-3]+'...'
if (applystr in all_strings) or with_ids:
applystr = applystr+' id='+str(topo.index(node))
applystr += prof_str applystr += prof_str
if (applystr in all_strings) or with_ids:
idx = ' id='+str(topo.index(node))
if len(applystr)+len(idx) > max_label_size:
applystr = applystr[:max_label_size-3-len(idx)]+idx+'...'
elif len(applystr) > max_label_size:
applystr = applystr[:max_label_size-3]+'...'
all_strings.add(applystr) all_strings.add(applystr)
apply_name_cache[node] = applystr apply_name_cache[node] = applystr
return applystr return applystr
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论