Увеличить разрешение изображения R rayhader - PullRequest
1 голос
/ 11 ноября 2019

Я пытаюсь сделать изображение, используя пакет rayhader. Я был счастлив, что смог создать 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?

Спасибо!

enter image description here

1 Ответ

1 голос
/ 14 ноября 2019

В настоящее время rayhader ограничен отсутствием поддержки rgl для устройств с размерами, превышающими разрешение экрана. Я протестировал его на своем мониторе 1440p и смог получить render_snapshot() для создания изображения 2564x1421 (примерно разрешение монитора 1440p). Если ваш монитор поддерживает более высокие разрешения, вы можете увеличить размер снимка, временно увеличив разрешение рабочего стола. В противном случае, в настоящее время это ограничение (см. Эту проблему в github):

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

Однако, если у вас есть время / терпение и вы не возражаете против немного другого типа изображения, которое он производит, render_highquality() использует совершенно другой механизм рендеринга и может быть настроен на вывод любого размера. Просто установите аргументы width и height на нужный размер при вызове этой функции.

...