Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R库rgl虽然已安装,但找不到image magick_R_Windows_Imagemagick - Fatal编程技术网

R库rgl虽然已安装,但找不到image magick

R库rgl虽然已安装,但找不到image magick,r,windows,imagemagick,R,Windows,Imagemagick,R库rgl无法找到image magick,尽管它是在cmd shell中安装和执行的 所以这不起作用: require(rgl) open3d() rgl.bringtotop() plot3d(foo$x,foo$y,foo$thing,col =heat.colors(256)[1+round(foo$z*255)],xlab = '',ylab='',zlab='',radius=3,size=3,box=T,axes=F) play3d(spin3d(axis = c(1, 1, 1)

R库rgl无法找到image magick,尽管它是在cmd shell中安装和执行的

所以这不起作用:

require(rgl)
open3d()
rgl.bringtotop()
plot3d(foo$x,foo$y,foo$thing,col =heat.colors(256)[1+round(foo$z*255)],xlab = '',ylab='',zlab='',radius=3,size=3,box=T,axes=F)
play3d(spin3d(axis = c(1, 1, 1), rpm = 10), duration = 2)
movie3d(spin3d(axis = c(1, 1, 1), rpm = 10), duration = 1)
当它呕吐时:

riting 'movie200.png'Writing 'movie003.png'
Error in movie3d(spin3d(axis = c(1, 1, 1), rpm = 10), duration = 20) : 
  'ImageMagick' not found
In addition: Warning message:
running command 'C:\Windows\system32\cmd.exe /c convert --version' had status 4 
这里真正的问题是convert是一个windows命令。在Windows上,我相信Imagemagick使用magick执行命令

所以我认为rgl需要使用windows命令

有什么想法吗

解决问题

movie3d(spin3d(axis = c(1, 1, 1), rpm = 10), duration = 12,movie='un1qu3',dir = getwd())
system('magick -delay 10 un1qu3*.png out.gif')
file.remove(grep('un1qu\\d+\\.png',list.files(),value = T))

这是一个有点老的问题,但我刚刚遇到了同样的问题,似乎我解决了它

Rgl包是使用Imagemagick中的convert.exe文件构建的。问题是当前Windows可用的IM版本不包含此文件,而是使用magick.exe


对我来说,解决这个问题的方法其实很简单:在程序文件(或安装它的地方)中转到Imagemagick库,找到“magick.exe”文件,然后将其重命名为“convert.exe”。:)

可能是.Nope的副本,不起作用:convert.exe不在imagemagick的windows版本中。我想他们曾经(我认为)提供了
convert.exe
帮助程序,在imagemagick中执行特定操作,谢谢您的产品。您是否尝试过(按照
?movie3d
)直接指定convert命令?也许
movie3d(spin3d(axis=c(1,1,1),rpm=10),duration=1,convert=“/path/to/magick.exe”)
可以工作。在7 Imagemagick之前的版本中,它使用convert,现在使用magick。我没有尝试过,但认为convert仍然受到支持。我认为由于与windows convert命令冲突,部分更改已被更改。我在windows上的convert命令从来没有遇到过问题,但我总是让Imagemagick intsall将路径写入环境变量列表。@Bonzo:我也这么认为,但我只是安装了windows特定(非msys2)版本,唯一的
.exe
文件是
dcraw
ffmpeg
hp2xx
imdisplay
magick
。(我只是根据这次讨论编辑了我的答案。)