【1】引言
前序学习了极坐标下的散点图输出,可通过下述链接直达:
西猫雷婶-CSDN博客
受此启发,我们继续自主探索极坐标下的柱状图输出。
【2】代码探索
其实柱状图和散点图画图的主要区别,可以理解为调用函数不同。
柱状图调用ax.bar()函数;散点图调用ax.scatter()函数。
因此从调用函数入手,直接修改代码。
首先定义初始柱状图:
bars = ax.bar(0, 2, 5) # 定义初始散点
x = np.linspace(0, 6.28, 100) # 定义自变量
然后将动画函数中的画图模块改为柱状图函数:
def animate(i): # 自定义动画函数
ax.bar(x[i], 2*np.cos(x[i]),0.06) # 弦长输出余弦
return bars,
运行代码,获得的输出图像为:
图1
对应的完整代码为:
import matplotlib.pyplot as plt # 引入画图模块
import numpy as np # 引入计算模块
import matplotlib.animation as animation # 引入动画模块
fig = plt.figure() # 定义要画图
ax = fig.add_subplot(projection='polar') # 定义要画极坐标图
bars = ax.bar(0, 2, 5) # 定义初始散点
x = np.linspace(0, 6.28, 100) # 定义自变量
def animate(i): # 自定义动画函数
ax.bar(x[i], 2*np.cos(x[i]),0.06) # 弦长输出余弦
return bars,
ani = animation.FuncAnimation(fig, animate) # 输出动画
ax.set_title('polar-bar-aixmls')
ani.save('polar-bar-aixmls.gif') # 保存动画
plt.show() # 输出图形
【3】总结
经过自主探索,实现了极坐标下的柱状图动态输出。