support graph.data()