Пакет анимации не может найти ImageMagick с convert = "convert" - программирование
Подтвердить что ты не робот

Пакет анимации не может найти ImageMagick с convert = "convert"

Я запускал анимацию в прошлом до 2 недель назад в Windows 7, R 3.0.1. Сегодня я загрузил R 3.0.2 и вам нужно было загрузить пакет анимации для запуска анимации. После этого, когда я пытаюсь запустить анимацию (вот script), я получаю следующую ошибку:

> saveGIF(FUN2(), interval = 0.1, outdir = "images/animate")
I cannot find ImageMagick with convert = "convert"
NULL
Warning messages:
1: running command 'convert --version' had status 4 
2: In im.convert(img.files, output = movie.name, convert = convert,  :
  ImageMagick not installed yet!

У меня установлен ImageMagick и на пути, как показано на видео, которое я сделал из проблемы: http://www.youtube.com/watch?v=gvpawqLyCZY&feature=youtu.be

Я могу запустить convert --version в командной строке Windows и получить следующее:

C:\Users\trinker>convert --version
Version: ImageMagick 6.8.6-8 2013-08-04 Q16 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2013 ImageMagick Studio LLC
Features: DPC OpenMP
Delegates: bzlib djvu fftw fontconfig freetype jng jp2 jpeg lcms lzma openexr pa
ngo png ps tiff webp x xml zlib

Однако запуск system("convert --version") в R дает:

Invalid drive specification.
Warning message:
running command 'convert --version' had status 4 

Что я делаю неправильно или могу изменить, чтобы пакет анимации (и R) отображался в ImageMagick?

Вот дополнительная информация о проблеме (в командной строке R, которую я получаю):

> system("convert -version")
Invalid drive specification.
Warning message:
running command 'convert -version' had status 4 

> shell("convert --version")
Version: ImageMagick 6.8.7-9 Q16 x64 2013-11-28 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2014 ImageMagick Studio LLC
Features: DPC Modules OpenMP
Delegates: bzlib freetype jbig jng jp2 jpeg lcms lqr pangocairo png ps tiff webp xml zlib
4b9b3361

Ответ 1

У меня была аналогичная проблема с функцией {rgl} movie3d(). В этом случае вы можете явно передать строку преобразования, которая будет выполнена, и поэтому может "сказать" R, где найти правильный convert.exe:

imconvertstring<-"\"c:\\Program Files\\ImageMagick-6.9.0-Q16\\convert.exe\" -delay 1x%d %s*.png %s.%s"

movie3d(spin3d(),duration=10,convert=imconvertstring)

Вы можете сделать то же самое с пакетом {animation}, используя ani.options(), чтобы указать точное местоположение для convert.exe. См. Раздел справки для im.convert() в пакете {animation}.

Ответ 2

Я не знаю, сколько людей это знают.

Существует уже программа, называемая convert в более новых версиях окон, которая что-то делает с файловыми системами. После установки Imagemagick я переименовал IM-конвертер и использовал его для выполнения системных вызовов. Я еще не использовал пакет анимации, поэтому я не могу говорить с лучшим способом решить эту конкретную проблему.