Иногда read_dot добавляет дополнительную вершину с меткой «\n». Я заметил, что это как-то связано с наличием ";" в конце последней строки. Например, рассмотрим простой код ниже в файле с именем t.
Код: Выделить всё
import sys
import networkx as nx
g = nx.Graph(nx.nx_pydot.read_dot(sys.stdin))
print(g,file=sys.stderr)
nx.nx_pydot.write_dot(g,sys.stdout)`
Код: Выделить всё
graph {
1 -- 2;
}
`$ t < test1.dot
дает результат, показанный ниже.
Код: Выделить всё
Graph named 'G' with 3 nodes and 1 edges
strict graph "G" {
"\n";
1;
2;
1 -- 2;
}
Если мы удалим ";" из входного файла вывод правильный.
Код: Выделить всё
Graph named 'G' with 2 nodes and 1 edges
strict graph "G" {
1;
2;
1 -- 2;
}
Подробнее здесь: https://stackoverflow.com/questions/790 ... tra-vertex