将gvis对象(存储为HTML的图像)嵌入到mailR-R中的内联中

时间:2015-05-14 05:59:15

标签: r email smtp sendmail sendmailr

我正在使用googleVis图表,并希望将gvis对象(存储为HTML的图像)嵌入使用mailR包内联。

我有以下代码从我的服务器发送邮件 -

library(mailR)
send.mail(from = "admin_xxx@apsmail.xx.xxx.xx",
          to = c("first.second@jba.com"),
          subject = paste("Batch Job Stats on",now),
          body = paste("Dear Sir/Madam,<br><br>

                       Please find below the image",".<br><br>",
                       "<img src=\"D:/xx/Batch_Processing/Batch_Processing_Run/Rplot1.png\">",".<br><br>"
          ),
          html = TRUE,inline = TRUE,         
          smtp = list(host.name = "xxxx01.xxx.xxx.xx"),
          authenticate = FALSE,
          send = TRUE)

上面的代码完全正常 - 我正在嵌入一个图像(存在于我服务器的D盘中)

现在我使用googleVis创建图表并将其存储在html文件中。 (出现在我服务器的D盘中)

Gauge <-  gvisGauge(CityPopularity,
options=list(min=0, max=800, greenFrom=500,
greenTo=800, yellowFrom=300, yellowTo=500,
redFrom=0, redTo=300, width=400, height=300))
plot(Gauge)

print(Gauge, tag="chart", file="test1.html")

所以现在我的问题是我无法嵌入我的.html文件(使用上面的代码创建 - test1.html)来发送邮件中嵌入了googleVis图表图片的电子邮件描述体。(我无法保存gvis对象-Chart as .p​​ng)。我见过解决方案 - 在SO中与此类似,但它并没有帮助我。

1 个答案:

答案 0 :(得分:-1)

关于你打开&#34; tmp.html&#34;的可能性。作为记录(即位置说文件://*/tmp.html),可能会发生安全警告。你需要的是通过http://获取HTML。

因此,如果您可以更改任何可以访问标记的网站页面(例如博客),您可以通过基本复制并粘贴tmp.html的内容来使用它,类似于:

ECMAScript 5 specification, section 8.6.2

这里是着名的&#34; iris&#34;案件形式:

http://takahashik.blogspot.com/2011/01/googlevis-example.html for-information iris_10.html

另外,如果您有Web服务器,可以通过在服务器上传输tmp.html来利用它。