Как сохранить изображение графика R в базу данных?

Я хотел бы сохранить изображение графика непосредственно в базу данных.

Лучший способ сделать это в R:

  1. Запишите изображение графика (png) в файловую систему.
  2. Прочитайте файл, который был написан
  3. Отправить файл в базу данных через запрос (RODBC)

В идеале я хотел бы объединить шаги 1 и 2 выше, просто написав изображение png в двоичное соединение. Поддерживает ли это R?


person Bob Albright    schedule 12.01.2010    source источник


Ответы (3)


Нет, графические устройства основаны на файлах, поэтому ваши шаги 1-3 верны. Вам нужен четвертый, чтобы отключить временный файл, но это все.

person Dirk Eddelbuettel    schedule 12.01.2010
comment
Спасибо за ответ, Дирк. Жаль, что все это основано на файлах. - person Bob Albright; 12.01.2010
comment
Действительно -- на r-devel озвучивались просьбы о расширении интерфейса 'connection', но, увы, пока безрезультатно. Поскольку мы не можем ожидать, что R Core закодирует это, уточнение интерфейса будет первым шагом. У вас есть источник, так что если зуд действительно нужно почесать... ;-) - person Dirk Eddelbuettel; 12.01.2010

Если вы используете решетку или ggplot, вы можете сохранить объект графика (а не само изображение) в базу данных (хотя я не знаю, соответствует ли это вашим требованиям). Преимущество такого подхода в том, что вы можете легко воссоздать/изменить изображение.

person Shane    schedule 12.01.2010

Вместо записи в обычный файл вы могли бы записать его в FIFO, который, в свою очередь, сохранил бы его в БД? Будут ли графические устройства записывать в FIFO, если он создан извне?

person Ken Williams    schedule 12.01.2010