【问题标题】:Increase resolution of R rayshader image提高 R 光线着色器图像的分辨率
【发布时间】:2020-03-06 21:24:18
【问题描述】:

我正在尝试使用rayshader 包制作图像。我很高兴能够使用如下代码创建 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")

不幸的是,我不知道如何使输出图像具有更高的分辨率。我尝试调整窗口大小,在低值下似乎会有所不同,但我遇到了某种上限,输出图像的分辨率不会超过 1372 x 893。我该怎么做才能获得输出分辨率约为 3200 x 3200 的图像?

谢谢!

【问题讨论】:

    标签: r image render rayshader


    【解决方案1】:

    目前,rayshader 受限于 rgl 不支持大于屏幕分辨率的设备尺寸。我在我的 1440p 显示器上对其进行了测试,我能够得到 render_snapshot() 来创建 2564x1421 的图像(大约是 1440p 显示器的分辨率)。如果您的显示器支持更高的分辨率,您可以通过临时增加桌面分辨率来增加快照大小。否则,它目前是一个限制(请参阅此 github 问题):

    https://github.com/tylermorganwall/rayshader/issues/28

    但是,如果您有时间/耐心并且不介意它生成的图像类型略有不同,render_highquality() 使用完全不同的渲染引擎,并且可以设置为任何大小的输出。只需在调用该函数时将 widthheight 参数设置为所需的大小。

    【讨论】:

    • 谢谢!将我在 Windows 中的显示从 200% 缩放更改为 100% 缩放能够将输出分辨率提高到我需要的值。我尝试了 render_highquality() 但它似乎太慢了,不实用。
    猜你喜欢
    • 2020-06-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-18
    • 2014-11-20
    • 2013-01-06
    • 1970-01-01
    相关资源
    最近更新 更多