我正试着用光线渲染包来拍摄一幅图像。我很高兴能够使用如下代码创建一个png文件:
library(ggplot2)
library(rayshader)
example_plot <-
ggplot(data.frame(x=c(1,2,3),y=c(4,5,6),z=c(5,4,3)),aes(x=x,y=y,color=z)) + geom_point()
plot_gg(example_plot, width = 2, height = 2, multicore = TRUE, scale = 125,
zoom = 0.5, phi = 60, theta=-10, windowsize = c(3200, 3200), offset_edges = TRUE)
Sys.sleep(2.0)
render_depth(focus = 0.5, focallength = 100, fstop = 8, clear = TRUE,filename="example.png")不幸的是,我不知道如何使输出图像具有更高的分辨率。我试着调整窗口的大小,在低的值下,这似乎产生了影响,但我碰到了某种天花板,输出图像的分辨率不会超过1372x893。怎样才能得到大约3200x3200分辨率的输出图像?
谢谢!

发布于 2019-11-14 02:04:17
目前,rayshader受到rgl不支持超过屏幕分辨率的设备大小的限制。我在我的1440 p监视器上测试了它,并让render_snapshot()创建了一个图像2564x1421 (大致相当于1440 p监视器的分辨率)。如果您的监视器支持更高的分辨率,则可以通过临时增加桌面分辨率来增加快照大小。否则,目前有一个限制(请参阅github问题):
https://github.com/tylermorganwall/rayshader/issues/28
但是,如果您有时间/耐心,并且不介意它产生的图像类型略有不同,render_highquality()使用一个完全不同的呈现引擎,并且可以设置为任意大小的输出。调用该函数时,只需将width和height参数设置为所需的大小即可。
https://stackoverflow.com/questions/58797147
复制相似问题