🚀📈💻 Convert your 3D plot animation into a mind-blowing video 🎥 with Python and Imageio 🐍🎞️
!pip install imageio
!pip install pyvirtualdisplay
!apt-get install -y xvfb python-opengl ffmpeg
!pip install google-auth google-auth-oauthlib google-auth-httplib2
from google.colab import drive
drive.mount('/content/drive')
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
import imageio
from pyvirtualdisplay import Display
Inicializar display virtual para visualización en Colab
display = Display(visible=0, size=(1024, 768))
display.start()
Crear datos para animación
t = np.linspace(0, 20*np.pi, 1000)
x = np.sin(t)
y = np.cos(t)
z = t
Inicializar figura y eje 3D
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
Crear animación
images = []
for i in range(300):
ax.clear()
ax.plot(x[:i], y[:i], z[:i])
ax.set_xlim(-1, 1)
ax.set_ylim(-1, 1)
ax.set_zlim(0, 30)
ax.view_init(elev=30, azim=i*4)
fig.canvas.draw()
image = np.frombuffer(fig.canvas.tostring_rgb(), dtype='uint8')
image = image.reshape(fig.canvas.get_width_height()[::-1] + (3,))
images.append(image)
Guardar animación como GIF
imageio.mimsave('/content/animacion.gif', images, fps=20)
Set input and output file paths
input_file = '/content/animacion.gif'
output_file = '/content/video_animation.mp4'
Read GIF animation using imageio
gif = imageio.mimread(input_file)
Write MP4 video using imageio
imageio.mimsave(output_file, gif, fps=30)
print('Video saved to Google Drive.')