2017-06-23 23 views
0

這裏我的問題很簡單,如何使用Node.js中的酒窩生成SVG

我需要在Node.js中使用酒窩生成SVG。

我安裝了這個節點模塊npm install dimple-js,但沒有適當的文件?

我已經試過這下面的代碼:

var jsdom = require("node-jsdom"); 
globals = {}; 
global.window = jsdom.jsdom().parentWindow; 
global.document = jsdom.jsdom('<!doctype html></html>'); 

var d3 = require('dimple-js/lib/d3.v3.4.8.js'); 
var dimple = require('dimple-js/dist/dimple.v2.1.6.js'); 

module.exports = function(router){ 

    router.get('/', function(req, res){ 
     var svg = dimple.newSvg('body', 800, 600); 
     var data = [ 
      { "Word":"Hello", "Awesomeness":2000 }, 
      { "Word":"World", "Awesomeness":3000 } 
     ]; 
     var myChart = new dimple.chart(svg, data); 
     myChart.addCategoryAxis("x", "Word"); 
     myChart.addMeasureAxis("y", "Awesomeness"); 
     myChart.addSeries(null, dimple.plot.bar); 
     myChart.draw(); 
     res.json({success: true, svg: svg}); 
    }); 
} 

但我得到以下錯誤enter image description here

所以是可以在服務器端使用酒窩產生SVG?

回答

0

dimple(或實際上,d3)找不到DOM。使用此圖案,如在this底部:

var svg = d3.select(global.document.body) 
    .append("svg") 
     .attr("width", 800) 
     .attr("height", 600);