Python .plot()命令不显示任何内容
我有这个基于这个问题的代码,只是不同的一点 我试图绘制点所在的块,但它什么也不做,它只打印“完成”,但我看不到任何图像Python .plot()命令不显示任何内容,python,plot,osmnx,Python,Plot,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.p
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")
我认为这可能没有帮助,但我使用的是VisualStudio代码
非常感谢既然我的评论回答了你的问题,我将在这里为其他人总结一下: 使用依赖于matplotlib的打印库(如geopandas或seaborn)时,需要导入matplotlib才能显示打印。matplotlib的导入方式取决于您使用的是Jupyter还是简单脚本(.py)文件 对于Jupyter,您需要像这样导入它:
%matplotlib内联
对于简单脚本(.py)文件,您需要按如下方式导入它:
导入matplotlib.pyplot作为plt
然后,当你想展示你的情节时,你只需要做
plt.show()
希望有帮助 如果执行
gpd_plt=gpd.GeoSeries([point]).plot(ax=ax,color='r');gpd_plt.show()
?它会引发属性错误“AxeSubplot对象没有属性”show“如果从交互式Python控制台会话运行代码会发生什么情况?(如果Visual Studio代码没有这样的控制台,可以从Spyder中尝试。)您需要导入matplotlib才能显示绘图。请参见以下问题:谢谢你们的帮助,导入matplotlib解决了我的问题:)