d3.jsのSVGダウンロード


	/**
	 * d3.jsで描画したチャートをSVG形式でダウンロードします。
	 * 
	 * @note
	 * ダウンロードにFileSaver.js(saveAs関数)を利用しています。
	 * 
	 * @param wrap_slt SVGタグのラッパーのセレクタ
	 * @param filename ダウンロードファイル名
	 */
	function downloadSVG(wrap_slt,filename) {
		
		if(filename == null){
			filename = "chart.svg";
		}
	
		var html = d3.select(wrap_slt).select("svg")
			.attr("version", 1.1)
			.attr("xmlns", "http://www.w3.org/2000/svg")
			.node().parentNode.innerHTML;
	
		var blob = new Blob([html], {type: "image/svg+xml"});
	
		// FileSaver.jsでダウンロードする。
		saveAs(
				blob,
				filename
			);
		
	}
	

シンプル版


	/**
	 * d3.jsで描画したチャートをSVG形式でダウンロードします。
	 * 
	 * @note
	 * ダウンロードにFileSaver.js(saveAs関数)を利用しています。
	 * htmlファイル中にsvgタグが一件だけの場合にのみ対応しています。
	 * 
	 * @param filename ダウンロードファイル名
	 */
	function downloadSVG_simple(filename) {
		
		if(filename == null){
			filename = "chart.svg";
		}
	
		var html = d3.select("svg")
			.attr("version", 1.1)
			.attr("xmlns", "http://www.w3.org/2000/svg")
			.node().parentNode.innerHTML;
	
		var blob = new Blob([html], {type: "image/svg+xml"});
	
		// FileSaver.jsでダウンロードする。
		saveAs(
				blob,
				filename
			);
		
	}