簡體   English   中英

在Python中使用matplotlib.animation制作動畫3D條形圖的示例

[英]Example of animated 3D bar-chart using matplotlib.animation in Python

我已經看到了一些使用matplotlib.animation模塊的好例子,包括這個動畫3D圖示例 我想知道此動畫模塊是否可以與bar3d圖表一起使用。

有人可以生成一個簡單的例子嗎?

注意:我目前正在研究一個不包含matplotlib.animation的其他解決方案(請參閱我的其他文章 ),但這似乎太慢了...

這是一個帶有2x2條形圖的小示例,該條形圖將隨機增長和改變顏色,一次調用update_bars()會出現一個:

import matplotlib.pyplot as plt
import mpl_toolkits.mplot3d.axes3d as p3
import matplotlib.animation as animation
import random

def update_bars(num, bars):
    i = random.randint(0, 3)
    dz[i] += 0.1
    bars[i] = ax.bar3d(xpos[i], ypos[i], zpos[i], dx[i], dy[i], dz[i], color=random.choice(['r', 'g', 'b']))
    return bars

fig = plt.figure()
ax = p3.Axes3D(fig)
xpos = [1, 1, 3, 3]
ypos = [1, 3, 1, 3]
zpos = [0, 0, 0, 0]
dx = [1, 1, 1, 1]
dy = [1, 1, 1, 1]
dz = [3, 2, 6, 5]

# add bars
bars = []
for i in range(4):
    bars.append(ax.bar3d(xpos[i], ypos[i], zpos[i], dx[i], dy[i], dz[i], color=random.choice(['r', 'g', 'b'])))
ax.set_title('3D bars')

line_ani = animation.FuncAnimation(fig, update_bars, 20, fargs=[bars], interval=100, blit=False)
plt.show()

輸出(此處未設置動畫):

情節

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM