osmnxを使用してgraph_from_pointを作成しています。そのグラフをPNG画像に保存したいのですが、保存されたPNGファイルのPIXEL座標とともにノードの緯度/経度座標を提供する補足ファイルを作成しました。
このチュートリアル: https://matplotlib.org/users/transforms_tutorial.htmlは、「データからディスプレイ座標系に変換」できることを示唆しています (ディスプレイと保存の DPI の問題が発生する可能性があることは承知しています)。必要なものですが、transData を使用しようとすると、以下のエラーが発生します。
G = ox.graph_from_point(map_query, distance=map_distance, network_type=map_network_type, simplify=True)
list(G.nodes.data())
# {'y': 51.5025637, 'x': 0.1111431, 'osmid': 95944704}
print type(G.transData)
AttributeError: 'MultiDiGraph' object has no attribute 'transData'
これは正しいアプローチですが、間違ったオブジェクトを参照していますか? それともこれは有効ではありませんか?networkx と matplotlib の関係がよくわかりません。私の最終的な目標は、次のことです。
{'y': 51.5025637, 'x': 0.1111431, 'osmid': 95944704, 'pixel' : (23, 467)}
ピクセルは、次によって作成された保存済みファイルへの参照です。
ox.plot_graph(G, save=True, file_format='png', filename='example', fig_height=my_fig_height, dpi=my_dpi)