0

我有 JSON 数据

var scores = 
    "zerozero": {
        "srl": 36.465,
        "phr": 32.933,
        "seo": 25.988,
        "hd": 47.106,
        "root": 35.623
    };

我希望使用这个 JSON 数据来创建一个 Raphael Path

期望输出: graph.path("M18,222.25L55,223.3L92").attr({stroke:"RGB(217,31,53)", "stroke-width":2});

222.25 应该来自一些数学:

350-(zerozero.srl*3.5)

无论如何将这个数学放入路径中?

4

1 回答 1

0

绝对地。编写一个函数将 JSON 数据映射到路径,然后将其提供给新的 Raphael 路径对象。zerozero您需要修复的对象中有一些奇怪的语法。

var graph = Raphael(0, 0, 500, 500);

var zerozero = {
        "srl": 36.465,
        "phr": 32.933,
        "seo": 25.988,
        "hd": 47.106,
        "root": 35.623
    };

var order = ["root", "srl", "phr", "seo", "hd"];

var path = "M" + order.map(function(d) { return 350-(zerozero[d]*3.5); }).join("L");

graph.path("M18,222.25L55,223.3L92").attr({stroke:"RGB(217,31,53)", "stroke-width":2});

http://jsfiddle.net/HMJkT/

于 2013-06-17T14:49:38.740 回答