2013-12-09 13 views
10

Ho eseguito animazioni in passato fino a 2 settimane fa su Windows 7, R 3.0.1. Oggi ho caricato R 3.0.2 e avevo bisogno di scaricare il pacchetto di animazioni per far girare un'animazione. Dopo aver fatto in modo che quando si tenta di eseguire l'animazione (here is a script) ottengo il seguente errore:pacchetto di animazione non riesce a trovare ImageMagick con convert = "convert"

> 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! 

ho ImageMagick installato e sul percorso, come dimostrato nel video che ho fatto del problema: http://www.youtube.com/watch?v=gvpawqLyCZY&feature=youtu.be

posso correre convert --version nella riga di comando di Windows e di ottenere il seguente:

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 

Eppure esecuzione system("convert --version") rendimenti R:

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

Cosa sto facendo male o posso modificare per rendere il pacchetto di animazione (e R) vedere ImageMagick?

Ecco ulteriori informazioni per il problema (nella riga di comando R ottengo):

> 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 
+0

Penso che 'cmd.fun = shell' possa consentire il funzionamento delle cose. Se lo fa, mi sto ancora chiedendo cosa sia cambiato. Ti riporto. –

+0

Penso che abbiamo risolto questo problema nella versione di sviluppo usando 'shell' come valore predefinito in Windows: https://github.com/yihui/animation/blob/master/R/im.convert.R#L78 Vorresti mente testando la versione di sviluppo su Github? Grazie! –

risposta

5

Ho riscontrato un problema simile con la funzione {rgl} movie3d(). In questo caso è possibile passare in modo esplicito una stringa convertito da eseguire, e quindi puo 'dire' R dove trovare il giusto 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)

Si può fare lo stesso con il { animazione} pacchetto utilizzando ani.options() per specificare la posizione esatta su convert.exe necessaria. Vedere la voce di aiuto per im.convert() nel pacchetto {animation}.

+0

NOTA: versione ImageMagick-7.0.3-4.x86_64.rpm (e possibilmente alcune versioni precedenti) non installano convert.exe per impostazione predefinita; assicurati di controllare la casella di opzione durante l'installazione. –

1

Non so quante persone lo sanno.

C'è già un programma chiamato convert in nuove versioni di Windows che fa qualcosa con filesystem. Dopo aver installato Imagemagick ho rinominato la conversione IM e l'ho usato per effettuare chiamate di sistema. Non ho ancora usato il pacchetto di animazione, quindi non posso parlare al modo migliore per risolvere questo particolare problema.

+0

Ti riferisci a 'convert.exe' che cambia FAT in NTFS o viceversa? Esiste un comando "convert" diverso che fa parte di ImageMagick (vedi ad esempio 'bash man convert') –

+0

Esatto. Ho avuto problemi con quel file system convert che era il default quando stavo cercando di usare la conversione IM. Un altro suggerimento invece di rinominare la conversione IM sarebbe quello di fornire il percorso completo del file. Dato che questo è nel pacchetto di animazione non mi è familiare se è così che viene utilizzato e il pacchetto potrebbe utilizzare il file system convertito accidentalmente. – cylondude

Problemi correlati