用javascript在线和终端绘制SVG

时间:2013-11-15 20:45:30

标签: javascript svg

我需要在线显示一些数据,但我也希望将好的图表作为高分辨率文件进行打印。到目前为止,我正在将这些图生成为png,但现在我正在考虑将其更改为Javascript。这主要是因为我希望我的情节是动态的。

对我来说WWW部分看起来相对容易;我会从使用AJAX的服务器获取数据并在网页上绘图 - 我认为SVG将非常适合我的需求。但是如何从终端运行脚本并以文件名作为参数来获取myplot.svg(当然不再是动态的)文件,看起来像网页上的情节?

理想情况下,我希望有一个绘图子程序,以避免重复代码,并保持两个版本看起来相同。

所以我的问题是我应该使用哪个框架进行SVG生成以使终端变体变得容易?

1 个答案:

答案 0 :(得分:0)

您可以使用ImageMagick将SVG转换为png:

ImageMagick convert svg to png

当您使用Node.jsjsdom

时,您可以从虚拟DOM中提取生成的SVG(使用与您的网页相同的代码,可能在环境方面略有不同)

正如评论中所提到的,我可以推荐D3.js - Data Driven Documents以便轻松生成SVG。

Node.js和jsdom的替代方案可能是Phantom.js

你的任务并不容易,但值得付出努力。祝你好运!