Python 2.7 在Jupyter笔记本的matplotlib底图上打印数据点
我能够在Jupyter笔记本中成功地创建美国的基本地图,并在第4单元中完成形状文件、颜色和边框 我试图用单元格8中的以下行将许多数据点绘制到该底图上:Python 2.7 在Jupyter笔记本的matplotlib底图上打印数据点,python-2.7,matplotlib,plot,data-visualization,matplotlib-basemap,Python 2.7,Matplotlib,Plot,Data Visualization,Matplotlib Basemap,我能够在Jupyter笔记本中成功地创建美国的基本地图,并在第4单元中完成形状文件、颜色和边框 我试图用单元格8中的以下行将许多数据点绘制到该底图上: m.plot(x, y, marker='o', markersize=data, color='#444444', alpha=0.8, latlon=True) 数据被打印出来,但我丢失了所有的底图格式和形状。实际上,我希望第8单元覆盖在第4单元上。我怀疑我没有在同一平面上绘制这些形状 另外,plt.show()什么也没有给我。我缺少什么?
m.plot(x, y, marker='o', markersize=data, color='#444444', alpha=0.8, latlon=True)
数据被打印出来,但我丢失了所有的底图格式和形状。实际上,我希望第8单元覆盖在第4单元上。我怀疑我没有在同一平面上绘制这些形状
另外,plt.show()什么也没有给我。我缺少什么?A.使用图形实例
其思想可以是在创建底图时明确指定要打印的轴
单元1:
fig, ax = plt.subplots()
m = Basemap(... , ax=ax)
第二单元:#做其他事情
单元3:
# plot to map:
m.plot(...)
第4单元:
# state figure object to show figure (when inline backend is in use)
fig
示例的屏幕截图: B.不要让pyplot接近数字 另一种选择是让pyplot不关闭图形。这是该答案的第二个选项:
您是否在jupyter笔记本中使用导入语句运行“%matplotlib inline”?是的,我运行过。这些图表显示在我的jupyter笔记本中,但它们是分开的。所以,如果你把整个代码放在一个单元格中,我怀疑一切都会正常工作,对吧?!对于测试,最好有一个可用的。@ImportanceOfBeingErnest True,我可以把这个例子浓缩下来。这个答案(全部放在一个单元格中)和下面的答案(将轴参数传递给basemap)都是很好的解决方案。非常感谢。我想知道为什么一个细胞能工作,而分裂细胞却不能。内存?否原因是在新单元格中打印时没有当前图形,因此创建了新图形。你可以阻止这种情况发生,我在下面的回答中有一个新的部分详细说明了这一点。
%config InlineBackend.close_figures=False