我在库(动画)中遇到了SaveGIF函数的问题。该函数给出了这个错误:
cmd.fun中的错误(sprintf(“%s - version”,convert),intern = TRUE,ignore.stdout =!interactive(),:
未使用的参数(ignore.stdout =!interactive())
我无法使用convert ='convert'找到ImageMagick NULL
警告信息:
在im.convert中(img.files,output = movie.name,convert = convert,:
请先安装ImageMagick或将其bin路径放入系统PATH变量
让我感到困惑的是,我确实在我的系统上进行了转换,因此我希望SaveGIF能够毫无困难地找到它:
me @ my-laptop:〜$ convert --version
版本:ImageMagick 6.5.7-8 2010-12-02 Q16 http://www.imagemagick.org
版权:版权所有(C)1999-2009
如何将convert的bin路径添加到系统PATH变量?
编辑:我使用的是Ubuntu,而不是Windows。
答案 0 :(得分:2)
您可能没有编辑PATH变量。在Windows 7上(但可能适用于早期版本)转到:
开始菜单
右键单击计算机 - >属性
高级系统设置
环境变量
然后在“系统变量”(下部窗格)下找到变量“path”,选择它 然后单击编辑。
您对变量值的内容感兴趣(可能将其复制到文本编辑器以更好地阅读它)。它应包含imagemagick中的链接,由其他变量的分号分隔。对我来说,imagemagick的路径是:
C:\ Program Files \ ImageMagick-6.6.7-Q16
确保只添加它,而不是将任何其他内容更改为路径变量。用分号添加它。
答案 1 :(得分:2)
通常我们不需要在Linux下手动设置PATH变量。我也在使用Ubuntu,但我无法重现你的错误。你的R版本是什么?
> sessionInfo()
R version 2.13.0 (2011-04-13)
Platform: x86_64-pc-linux-gnu (64-bit)
locale:
[1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C
[3] LC_TIME=en_US.UTF-8 LC_COLLATE=en_US.UTF-8
[5] LC_MONETARY=C LC_MESSAGES=en_US.UTF-8
[7] LC_PAPER=en_US.UTF-8 LC_NAME=C
[9] LC_ADDRESS=C LC_TELEPHONE=C
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] animation_2.0-4
据我所知,错误来自函数system()
,而不是找不到convert
。参数ignore.stdout
来自R 2.12.1,因此您必须使用较低版本的R。当前版本是2.13.0,我建议您升级到最新版本。有关如何使用CRAN更新R,请参阅http://cran.r-project.org/bin/linux/ubuntu/。
答案 2 :(得分:1)
您可以使用system("which convert", intern=TRUE)
找到转换函数的位置,然后您(或许可以)使用
Sys.setenv(PATH=...)
答案 3 :(得分:0)
尝试所有这些修补程序以及these和these都没有成功后,我使用了替代软件从使用saveHTML
成功创建的png文件进行转换。描述了几个程序here。我是Windows用户,发现VirtualDub网站中包含的简单说明很快完成了这项任务。