ggplot2 занимает слишком много времени для визуализации графика - PullRequest
2 голосов
/ 17 февраля 2020

Я делаю график в R, используя библиотеку ggplot2. Дело в том, что график, подобный тому, который создается с помощью приведенного ниже кода, занимает слишком много времени для рендеринга, я использую P C с 16 ГБ ОЗУ и octacore i7 с windows 10 (версия R = 3.6 .2, 64 бита), как вы можете видеть в тесте, показанном ниже, процесс рендеринга занимает около 45 секунд, я запустил тот же код на rstudio.cloud (бесплатная версия) и занял всего 1 секунду, также я попробовал другой P C (8 ГБ ОЗУ, i5, Windows 8.1, видеокарта такая же, как у меня), и это заняло 26 секунд.

Дело в удивительной медлительности процесса на достаточно высоком уровне -конец P C, фактически, он рендерится быстрее при медленном P C.

Есть ли способ решить эту проблему или, по крайней мере, узнать, почему это происходит?

Заранее спасибо!

library(ggplot2)
df <- data.frame(x=rnorm(30100, 6, 2), y=runif(30100, -3, 5))

df$color <- df$x*df$y

p1 <- ggplot(df, aes(x, y, color=color))+
  geom_point(shape=45, alpha=0.3)+
  theme_void()+
  theme(legend.position = "NA")+
  scale_colour_gradient2(mid="black",
                         low= "red", high  = "green")

benchplot(p1)
#>        step user.self sys.self elapsed
#> 1 construct      0.00     0.00    0.00
#> 2     build      0.28     0.02    0.29
#> 3    render      0.05     0.00    0.06
#> 4      draw      0.55    41.92   43.74
#> 5     TOTAL      0.88    41.94   44.09

Создано в 2020-02-17 пакетом Представить (v0.3.0)

...