def temporal_sort(self):
    'Get nodes sorted in temporal order\n\n        Remark\n        ------\n        This relies on a combination of temporal ordering of anchored times\n        and topological ordering for drifting times.\n        To be 100% sure that one drifting time happens before another time,\n        check the ordering graph (method .ordering_graph()).\n        '
    g = nx.DiGraph()
    for t in self.nodes_iter():
        g.add_node(t)
    for (t1, t2) in self.edges_iter():
        g.add_edge(t1, t2)
    anchored = sorted(self.anchored())
    for (t1, t2) in pairwise(anchored):
        g.add_edge(t1, t2)
    return nx.topological_sort(g)
Get nodes sorted in temporal order

Remark
------
This relies on a combination of temporal ordering of anchored times
and topological ordering for drifting times.
To be 100% sure that one drifting time happens before another time,
check the ordering graph (method .ordering_graph()).
def temporal_sort(self):
    'Get nodes sorted in temporal order\n\n        Remark\n        ------\n        This relies on a combination of temporal ordering of anchored times\n        and topological ordering for drifting times.\n        To be 100% sure that one drifting time happens before another time,\n        check the ordering graph (method .ordering_graph()).\n        '
    g = nx.DiGraph()
    for t in self.nodes_iter():
        g.add_node(t)
    for (t1, t2) in self.edges_iter():
        g.add_edge(t1, t2)
    anchored = sorted(self.anchored())
    for (t1, t2) in pairwise(anchored):
        g.add_edge(t1, t2)
    return nx.topological_sort(g)