3

我正在尝试通过ffmpegUbuntu 12.04 LTS(32 位桌面)将 matplotlib 动画保存到电影中。在 matplotlib示例之后,它无法加载动画编写器:(AttributeError: 'module' object has no attribute 'writers'示例的第 15 行):

import numpy as np
import matplotlib
matplotlib.use("Agg")
import matplotlib.pyplot as plt
import matplotlib.animation as animation

def update_line(num, data, line):
    line.set_data(data[...,:num])
    return line,

# Set up formatting for the movie files
Writer = animation.writers['ffmpeg']

通过apt-get,我尝试安装 ffmpeg,每个可以想象的编解码器,甚至尝试从源代码编译 ffmpeg。没有任何效果。

我如何matplotlib在 Ubuntu 上与 ffmpeg 交谈?

4

1 回答 1

4

如果您使用的是它的unbuntu打包版本,matplotlib则为1.1.1rc1. 该属性writers是在该标签后大约 3 个月添加的,并且在版本1.2及更高版本中。

您可以matplotlib从源代码安装(这就是我所做的,还不错)或使用每日 ppa

我对从源代码编译的建议是尽可能多地使用打包系统并matplotlib手动安装(如果您确实想使用 pip,请参阅此答案

git clone git://github.com/matplotlib/matplotlib.git
cd matplotlib
git checkout -b v1.2.0
python setup.py install --prefix=/home/username/local_installs/

(这将为您提供最新的稳定版本)然后确保安装它的路径在您的路径中,$PYTHONPATH这可以通过包含该行来完成

export PYTHONPATH=/home/username/local_installs/lib/python2.7/site-packages/:$PYTHONPATH

在你的~/.bashrc文件中。根据您使用的 python 版本,您可能需要稍微改变该行。您可能需要这样做(并确保文件夹存在)setup.py才会满意。

于 2013-02-11T05:45:39.947 回答