我正在嘗試使用Google圖表在電子郵件中嵌入圖表圖像。所以每個用戶將有一個獨特的圖形。Google Charts as Image
我們可以使用API並嵌入一個唯一的URL來呈現圖表並將圖像傳遞給電子郵件客戶端。
我正在嘗試使用Google圖表在電子郵件中嵌入圖表圖像。所以每個用戶將有一個獨特的圖形。Google Charts as Image
我們可以使用API並嵌入一個唯一的URL來呈現圖表並將圖像傳遞給電子郵件客戶端。
可以使用Google Chart Wizard生成將呈現圖表圖像的url。但是,最近(4月我相信)這項服務因爲已被棄用。它仍然可以正常工作,但對於長期解決方案,您可能需要提出另一種方法。
編輯
另一種方法是生成圖像和發送電子郵件之前將其保存到您的服務器。您可以通過讓服務器上的頁面專用於通過解析給定的slug來生成圖表,以及何時加載圖表來發送包含圖像數據的POST請求。您可以通過使用一個隱藏的畫布上訪問數據URI(HTML5是必需的)和canvg JavaScript的插件:
chart_area = document.getElementById("chart_div").getElementsByTagName('iframe')[0].contentDocument.getElementById("chartArea");
svg = chart_area.innerHTML;
canvas = document.getElementById("hidden_canvas");
canvas.setAttribute('width', chart_area.offsetWidth);
canvas.setAttribute('height', chart_area.offsetHeight);
canvg(canvas, svg);
image_data_uri = canvas.toDataURL("image/png");
任何其他選擇? –
你可以使用chart.getImageURI()
圖表的PNG版本類似以下內容:
需要被圖表繪製完成後,所以在ready
事件中!
var my_div = document.getElementById('my_div');
var my_chart = new google.visualization.ChartType(chart_div);
google.visualization.events.addListener(my_chart, 'ready', function() {
my_div.innerHTML = '<img src="' + chart.getImageURI() + '">';
});
my_chart.draw(data);
有點遲到了,但我們剛剛建立https://ChartURL.com這個確切的需要,因爲儘管這個問題是近35歲,最好的解決辦法在那裏,直到ChartURL是棄用谷歌圖片圖表API :)
希望這可以幫助別人!
谷歌圖表的圖表功能作品,請參閱http://datamakessense.com/kpi-emails-with-google-charts-url-parameters – AdrianBR