如何將html格式動態圖表網頁嵌入ppt中

看了之前推送的REmap相關內容,結果導出的圖表是html格式的動態圖,不知道如何將此種格式的圖表放在ppt中使用。

這確實很尷尬他呀,你不能直接拿着Rstudio跟客戶演示呀(而且還不保證每一臺PC上都安裝有R語言軟件),如果是ppt展示,突然退出來,然後用瀏覽器打開html文件也是夠突兀的。

當然這個情況在r語言中其實很普遍,很多依賴底層js語言編寫的二次開發包(比如R語言中的recharts、RERmap、Rchart、plotly等),可能都只提供html格式的導出效果(如果導出成靜態圖片的話,那麼基本就不用指望什麼動態效果了)。

ppt默認是不支持html文件的,但是依賴開發工具的外界差價和少量VBA代碼,解決這個問題並非什麼難事。

以下是解決思路(適合ppt2013及16版本,低版本大同小異)

一、首先保證你的ppt已經勾選並顯示開發工具選項(未勾選請在文件設置中打勾,本號歷史文章列表中有相關介紹)

二、在開發工具——其他控件列表中選擇Microsoft web brower。(如果提示控件無法插入請參照如下方案執行)

需修改兩處註冊表鍵值:

1、打開註冊表編輯器(在運行中輸入REGEDIT並執行)

2、定位到:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\{8856F961-340A-11D0-A96B-00C04FD705A2}將右側 Compatibility Flags值21修改爲0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ClickToRun\REGISTRY\MACHINE\Software\Microsoft\Office\16.0\Common\COM Compatibility\{8856F961-340A-11D0-A96B-00C04FD705A2}

將右側 Compatibility Flags值400修改爲0

注:PowerPoint 2013 更改了以下注冊表

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Office\15.0\Common\COM Compatibility\{8856F961-340A-11D0-A96B-00C04FD705A2},更改十六進制400爲0即可。

如果沒有這個位置,可以選擇HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\15.0\ClickToRun\REGISTRY\MACHINE\Software\Wow6432Node\Microsoft\Office\15.0\Common\COM Compatibility\<ClassID> </ClassID>,如上。

以上可解決正常插入Microsoft web brower控件的問題,點擊該控件之後,在頁面釋放並用鼠標拖動至與頁面統一大小。

(控件是無色的你可能看不見,但是如同形狀一樣,你可以選中並且自由調整大小)

三、在該頁面插入一個command命令控件(activeX控件),並在頁面釋放,調整大小。右鍵打開屬性列表,在caption欄修改控件名稱。

四、雙擊控件打開代碼頁面,在默認的兩行代碼中間插入如下代碼:

注:如果 加載html時 提示 安全警告: 爲幫助保護你的安全 你的web瀏覽器已經限制此文件顯示可能 訪問你的計算機,需要在

<!DOCTYPE html>的下一行添加:

<!-- saved from url=(0021)http://www.baidu.com/ -->

注:將echarts圖表的html代碼中加載 <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE*"/>代碼(*處至少爲9或以上),將HTML設置成IE的內核。

注:解決 echarts 的console 未定義問題,在<Head>中的註釋下面 ,加入如下程序:

window.console = window.console || (function(){  
    var c = {};   
    c.log = c.warn = c.debug = c.info = c.error = c.time = c.dir = c.profile = c.clear = c.exception = c.trace = c.assert = function(){};  
    return c;  
})();  

WebBrowser1.Navigate ("file:///D:/R/Rscript/ID_20161002180535_403937.html")

這裏需要你自定義只是括號內的html文件路徑,我的html是之前在演示REmap動態地圖的時候製作一個動態路徑圖。

這個路徑可以是本地html文件,也可以是其他有效的html網頁地址。

完成以上步驟之後,在幻燈片放映狀態,定位到有設置控件的那一頁,用鼠標點擊按鈕,就可以查看動態網頁效果。

五、最後一步,也是非常重要的一步,如果想要動態效果不丟失,再保存ppt文檔的時候一定不能使用默認保存選項,要另存爲.pptm格式的宏文件,這樣才能不丟失VBA代碼。

以上過程同樣適用將其他有效網頁地址,嵌入ppt中的,感興趣的小夥伴可以自行嘗試。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章