我有这个基于这个问题的代码,只是Extract constrained polygon using OSMnx
我正在尝试绘制该点所在的块,但它什么也没做,只是打印“完成”,但看不到任何图像
import osmnx as ox
import geopandas as gpd
import shapely
point = (50.090464, 14.400070)
streets_graph = ox.graph_from_point(point, distance=500, network_type='drive')
streets_graph = ox.project_graph(streets_graph)
streets = ox.save_load.graph_to_gdfs(streets_graph, nodes=False, edges=True,
node_geometry=False, fill_edge_geometry=True)
point = streets.unary_union.centroid
polygons = shapely.ops.polygonize(streets.geometry)
polygons = gpd.GeoSeries(polygons)
target = polygons.loc[polygons.contains(point)]
target_streets = streets.loc[streets.intersection(target.iloc[0]).type == 'MultiLineString']
ax = target_streets.plot()
gpd.GeoSeries([point]).plot(ax=ax, color='r')
print("Done")
我认为这可能无济于事,但我正在使用Visual Studio代码
非常感谢您
答案 0 :(得分:1)
由于我的评论回答了您的问题,因此我在这里为其他人总结一下:
在使用依赖于matplotlib的绘图库时,例如geopandas或seaborn,您将需要导入matplotlib才能显示该图。 matplotlib的导入方式取决于您使用的是Jupyter还是简单的脚本(.py)文件。
对于Jupyter,您需要这样导入它:
%matplotlib inline
对于简单的脚本(.py)文件,您需要这样导入:
import matplotlib.pyplot as plt
然后,当您想显示自己的情节时,只需执行
plt.show()
希望有帮助!