2016-05-24 2 views
0

Я работаю с rApache для отображения инкапсулированных графиков, которые были созданы в R. Прямо сейчас есть только одна проблема, с которой мне приходится сталкиваться. Если в документе есть только R-код вложенности, HTML-файл get отображается как некое единственное png-изображение, которое я думаю.Использование графиков в rApache

Однако, я хочу, чтобы в качестве документа он получил renderd. содержит графические объекты. Поэтому, когда я добавляю HTML-контент до или в тегах <% ... %>, я получаю сломанный знак изображения как результат.

Как это сделать, чтобы я мог использовать команду plot в HTML-документе?

<h1> Plot Content </h1> // adding this causes a broken image 

<% 
setContentType("image/png") 
t <- tempfile() 
png(t,type="cairo") 

rndDistribution <- rnorm(100) 

plot(rndDistribution) 

dev.off() 
sendBin(readBin(t,'raw',n=file.info(t)$size)) 
unlink(t) 
%> 

Мой apache.conf:

<Directory /var/www/> 
    Options Indexes FollowSymLinks 
    AllowOverride All 
    Require all granted 
</Directory> 


<Directory /var/www/html/R> 
    SetHandler r-script 
    RHandler brew::brew 
</Directory> 

ответ

0

После прочтения немного о создании файла в R, я пришел к следующему решению как очень простой обходной путь:

// 1. creating the image of the plotted diagramm: 
<% 
setwd("/var/www/html/images/R") 
getwd() 
png(filename="plot.png") 

rndDistribution <- rnorm(100) 

plot(rndDistribution) 

dev.off() 
%> 

// 2. display graphic: 
<h1> Plot Content </h1> 
<img src="/images/R/plot.png"> 

Я думаю, первый пример кода, который я пробовал, был сделан для R-Handler для документов, а не для параметра r-script в определенном каталоге.

Смежные вопросы