V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
turing
V2EX  ›  Node.js

Charts 支持主流客户端图表方案的邮件图表嵌入服务

  •  
  •   turing · 2014-03-12 18:54:48 +08:00 · 3903 次点击
    这是一个创建于 3670 天前的主题,其中的信息可能已经有所发展或是发生改变。
    很多时候,在邮件里嵌入图表都是一件很繁琐的事情,尤其当这些数据还是由服务动态生成的。如果你要找一个可以让你的程序发出的邮件既美观又能胜任动态数据图表嵌入这个需求的库或者服务,以往通常有这几种方法:

    1. 在服务器端绘制图表。
    2. 在服务器端截取客户端图表。
    3. 人工在客户端将图表转换成base64编码图片,再由服务端存取。

    Charts 采用了第二种方法,通过 Theme 的支持,Charts 可以判断不同 Url 以匹配不同的 node_modules 中的解决方案目录。然后根据 width,height 与提供的数据,绘制出正确而美观的图片。以嵌入在邮件当中。

    简单来说,就是这样在邮件里嵌入:

    <img src="http://yourserver/sparkline/300x100/1,4,4,7,5,9,10,100,20,12">

    上述链接将会返回一张 inline 的 sparkline 图表,类似这样:


    当然,使用这种解决方案,你还可以自己制作想要的图表解决方案,然后将它们 publish 到 npm,再置于 Charts 的依赖模块目录下,重启服务即可。

    这是一张采用 Chartjs 方案制作的嵌入图表:


    使用 npm 安装:
    $ [sudo] npm install charts -g

    欢迎 Star && fork:
    https://github.com/turingou/charts
    4 条回复    1970-01-01 08:00:00 +08:00
    zhangxiao
        1
    zhangxiao  
       2014-03-12 22:16:09 +08:00
    Mcatt
        2
    Mcatt  
       2014-03-13 11:34:33 +08:00
    楼主高质高产!
    mtmzorro
        3
    mtmzorro  
       2014-03-13 11:56:39 +08:00
    STAR 帮顶! ~
    qiuai
        4
    qiuai  
       2014-03-13 19:15:48 +08:00
    漂亮.支持一个~
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2733 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 12:47 · PVG 20:47 · LAX 05:47 · JFK 08:47
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.