如何将googleVis结果嵌入网页中


任何一个爱美的人,都难掩对googleVis的热爱。googleVis的图形几个关键词就是“优雅,活泼,灵性”。优雅指的是特别美观,看起来特别舒服;活泼指的是图形可以动起来;灵性指的是你可以与图形交流,你可以把你的想法告诉她,她来展示你想要的。

下载googleVis包,加载,看帮助,复制黏贴,真正的眼前一亮,你还等什么呢?

如何把这么优雅活泼灵性的图形放在网上与别人分享呢?这是本文的目的所在。我们以帮助文档中的一个案例作为说明:


library(googleVis) #如果你还没安装,请install.packages...
M <- gvisMotionChart(Fruits, "Fruit", "Year")
plot(M)

当你运行以上程序后,你的默认浏览器会自动打开,并显示一个网页,其中就有水果动态图。如下:

这里有一个小插曲,可能你也会遇到。M 中存放的就是网页源码,如果你把源码复制黏贴入txt,另存为.html。双击.html文件,网页打开了,但图形显示不出来。如下:

我特别纳闷,为什么源码一模一样,我复制黏贴再显示就出不来了呢?突然一条信息出现了,大概的意思就是,你何不用用遨游浏览器呢?遨游在我看来,应是个骨灰级软件了。我这么说不知道是不是得罪了遨游爱好者(我们宿舍就有一个)。但是我下载了,并且用遨游打开了这个本地网页。如下:

当时我就有种挫败的感觉,可是我想通了,有时候软件过于先进,比如现在的google浏览器,它就会阻碍那些本地具有交互功能的网页,它以为你可能在干一些黑客类似的事情,有可能伤害计算机,所以它就对你的要求“置之不理”,其实,我是挺黑,但我不是黑客,所以google,你误解我了。遨游这个傻家伙(是不是有点得了好处还卖乖了),不辨是非,你给他什么,它就干什么。

如何把这个图形添加到你自己的网页文档中呢?我开始是把M显示出来,然后,复制,直接加到Markdown里,显然,这么做没有结果,因为M里包括了<html>、<body>和<head>这种标签,与你自己定义的样式会产生冲突。

从网上查询得到了答案:


cat(M$html$chart, file= "temp.html")

把temp.html里的代码全部复制到你的文档里就行了,也就是,你只提取关于图形的那段源代码。

经github处理后,就这样的了,帅气吧,点一点按钮你就知道了。


对于表格怎么办呢?大同小异:


Table <- gvisTable(Exports, options=list(width=400, height=270))
cat(Table$html$chart, file="table.html")

只需把table.html里的内容复制到你要的文档中就OK了,以下是结果:


上篇: git多账户切换 下篇: 正交变换与数据保密(听吴尚武老师报告的感想)