import numpy as npimport matplotlib.pyplot as pltimport matplotlib.animation as animationfrom mpl_toolkits.basemap import Basemap#dummy temperature data with 10 time-stepsy=np.random.randn(10,60,100) fig = plt.figure()m = Basemap(projection='kav7',lon_0=0)lats=np.linspace(90,-90,y.shape[1])lons=np.linspace(-180,180,y.shape[2])lons,lats = np.meshgrID(lons,lats)m.drawparallels(np.arange(-90.,99.,30.),labels=[1,0])m.drawmerIDians(np.arange(-180.,180.,60.),labels=[0,1])m.drawcoastlines(linewidth=0.25)m.pcolormesh(lons,lats,y[0],cmap=plt.cm.bwr,shading='flat',latlon=True)def init(): m def animate(i): m.pcolormesh(lons,y[i],latlon=True) return manim = animation.FuncAnimation(fig,animate,init_func=init,frames=10,interval=100) #interval = number of milliseconds between frames anim.save('movIE.mp4')
我已经查看了子剧情动画的大量示例(1,2,3),但仍然不知道如何使用Basemap.
解决方法 您的动画功能需要在图中的四个不同轴上更新四个不同的地图.>创建四个面板:
fig,ax = plt.subplots(2,2)
轴被索引.我建议将它们放置在2×2布局中,它们被索引为2-d数组,因此将轴引用为ax [0] [0],ax [0] [1],ax [1] [0],和ax [1] [1]创建地图时.
>创建四个Basemap实例时,使用.将每个贴图指定给不同的轴
ax参数(docs).
>在动画功能中,更改每个轴的颜色.根据数据来分配颜色以映射m_i,如m_i.pcolormesh (docs)所示,如您的问题所示.
以上是内存溢出为你收集整理的python – 带底图的Matplotlib子图动画全部内容,希望文章能够帮你解决python – 带底图的Matplotlib子图动画所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)