Как превратить ссылку на изображение в фоновое изображение с помощью ggplot2 без загрузки изображения - PullRequest
0 голосов
/ 24 марта 2020

Это продолжение этого вопроса

Я пытаюсь создать , которое будет загружать изображение, используя только ссылку, и затем отобразите это изображение в качестве фона, используя с наложенным на него графиком. Как я могу заставить ggplot2 отображать изображение, используя только ссылку, или получить блестящую загрузку изображения локально, чтобы я мог отобразить его без загрузки на компьютер пользователя?

форматирование ссылки: https://i.scdn.co/image/ab67616d0000b273922a12ba0b5a66f034dc9959

код для примеров:

ggplot(data=album_df, aes(x=rev(factor(track_names, track_names)), y=-1 * track_length)) +
  ggtitle("Songs vs length")+
    annotation_custom(rasterGrob(album_cover, 
                               width = unit(1,"npc"), 
                               height = unit(1,"npc")), 
                               -Inf, Inf, -Inf, Inf)+
  geom_bar(stat="identity", position = "identity", color = 'NA', alpha = 0.9, width = 1, fill = 'white') +
    scale_y_continuous(expand = c(0, 0), limits = c(-1 * max_track, 0)) +
    scale_x_discrete(expand = c(0, 0)) +
  theme(axis.title.x=element_blank(), 
        axis.title.y=element_blank(),
        axis.text.x=element_blank(),
        axis.ticks.x=element_blank()
        ) + 
   coord_flip() 

В настоящее время я просто использую тестовое изображение в annotation_custom, которое я скачал, чтобы убедиться, что график функционирует, но в идеале например, что-то более переменное, что не мешало бы файлам пользователя.

Кроме того, я не совсем уверен, как происходит загрузка с помощью shinyapp, поэтому, если возможно, я бы предпочел избегать этого в целом , в пользу простого доступа к ссылке и ее отображения. Однако, если это невозможно, я хотел бы знать, как загрузить что-то в виде глянцевых файлов, где это будет храниться (на сервере блестящих данных, на моем компьютере, на компьютере пользователя и т. Д. c.).

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

...