首先第一步的话我们需要安装相关的模块,通过 pip 命令来安装pip install gifgif matplotlib plotly altair pip install "gif[altair]"pip install "gif[matplotlib]"pip install "gif[plotly]"gif 和 matplotlib 的结合我们先来看 gif 和matplotlib 模块的结合,我们先来看一个简单的例子,代码如下import randomfrom ...
1. 创建GIF动图 下面的代码示例生成一个简单的动态图,展示正弦波的变化,并将其保存为GIF格式。 importnumpyasnpimportmatplotlib.pyplotaspltfrommatplotlib.animationimportPillowWriter# 设置图形数据x=np.linspace(0,2*np.pi,100)fig,ax=plt.subplots()line,=ax.plot(x,np.sin(x))ax.set_ylim(-1.5,1.5)ax...
我们先来看gif和matplotlib模块的结合,我们先来看一个简单的例子,代码如下 代码语言:javascript 复制 importrandom from matplotlibimportpyplotaspltimportgif x=[random.randint(0,100)for_inrange(100)]y=[random.randint(0,100)for_inrange(100)]gif.options.matplotlib["dpi"]=300@gif.frame defplot(i):xi...
ax=plt.subplots()# 数据x=np.linspace(0,2*np.pi,100)# 绘制动图的每一帧defanimate(i):ax.clear()ax.plot(x[:i],np.sin(x[:i]))plt.title("Sine Wave Animation")# 使用FuncAnimation创建动画ani=FuncAnimation(fig,animate,frames=100,interval=200)# 保存动画为GIF文件ani.save('sine_wave.gif'...
iflen(sys.argv) >1andsys.argv[1] =='save': anim.save('line.gif', dpi=80, writer='imagemagick') else: # plt.show() 会一直循环播放动画plt.show() 如果你想换一个更精美的主题,安装 seaborn 库之后添加一行: importseaborn 然后你就会得到这个图: ...
plot(x, x - 5, 'r-', linewidth=2) def update(i): label = 'timestep {0}'.format(i) print(label) # 更新直线和轴(用一个新X轴标签) # 以元组形式返回这一帧需要重新绘制的物体 line.set_ydata(x - 5 + i) ax.set_xlabel(label) return line, ax if __name__ == '__main__':...
line,=plt.plot(X,X-0.5,'r-',linewidth=2) plt.title('Interesting Graph',fontsize='large',fontweight='bold',verticalalignment='center')#设置标题位置不起作用 def update(i): label='timestep{0}'.format(i) print(label) #更新直线和X轴,使用一个新的X轴的标签 ...
if len(sys.argv) > 1 and sys.argv[1] == 'save': anim.save('line.gif', dpi=80, writer='imagemagick') else: # Plt.show()会一直循环动画 plt.show() 如果你想换个再酷炫点的主题,可以用seaborn库,只需添加: import seaborn 那么就会得到下面这张GIF图: ...
我们可以先绘制若干张静态的图表,然后将这几张图表合成一张gif格式的动图即可,代码如下 代码语言:javascript 复制 importseabornassnsimportmatplotlib.pyplotaspltimportmatplotlib.patheffectsasfx # 绘制图表的函数 defmake_plot(year):# 根据年份来筛选出数据 ...
# 在这里设置一个10帧的动画,每帧之间间隔200毫秒anim=FuncAnimation(fig,update,frames=np.arange(0,10),interval=200)iflen(sys.argv)>1andsys.argv[1]=='save':anim.save('line.gif',dpi=80,writer='imagemagick')else:# plt.show() 会一直循环播放动画plt.show()...