R库rgl虽然已安装,但找不到image magick
R库rgl无法找到image magick,尽管它是在cmd shell中安装和执行的 所以这不起作用: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)
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
。(我只是根据这次讨论编辑了我的答案。)