Javascript 如何在饼图中添加和操作值?

Javascript 如何在饼图中添加和操作值?,javascript,jquery,Javascript,Jquery,我正在使用为我的web应用程序生成饼图。现在,我想操纵图表上显示的值。目前,出现的值超过4位小数。例如,10.35234234。我只想10.3523出现 以下是我当前的代码: function drawPie(id,from,to,C,formula){ var subArray = getSubArray(C.table,from,to); if(Object.keys(subArray).length){ var partials = createPartia

我正在使用为我的web应用程序生成饼图。现在,我想操纵图表上显示的值。目前,出现的值超过4位小数。例如,10.35234234。我只想10.3523出现

以下是我当前的代码:

function drawPie(id,from,to,C,formula){
    var subArray = getSubArray(C.table,from,to);
    if(Object.keys(subArray).length){
        var partials = createPartials(subArray, C.attributes);
        //console.log("partials -> ",partials);

        formula = formula.slice(1,-1);
        //console.log("formula ->" , formula);
        formula = formula.split(",");
        //console.log("formula ->" , formula);
        var cloneFormula = formula.slice(); 

        for( var i in partials){
            if(i.substr(0,1) == "$"){
                for(var j = 0; j< formula.length; j++){
                    formula[j] = replaceFunction(i,formula[j],partials[i]);
                }

            }

        }

        //console.log("replaced formula ->" , formula);

        var data = [];

        var isEmpty = true;
        for(var j = 0; j< formula.length; j++){
            var label = cloneFormula[j].split(/(?=[-+*\/])/)[0].split(".")[1];
            var temp = {};
            try{
                temp.value = eval(formula[j]);
            }catch(err){
                temp.value = 0;
            }
            temp.label = partials[label + ".name"];
            temp.color = partials[label + ".color"];
            data.push(temp);
            if(temp.value != 0){
                isEmpty = false;
            }
        }

        if(isEmpty){
            return true;
        }

        //console.log("data ->" , data);

        var pie = new d3pie(id, {
            "size": {
                "canvasHeight": 400,
                "canvasWidth": 800, //see defect 1418
                "pieOuterRadius": "88%"
            },
            "data": {
                "content": data
            },
            "labels": {
                "outer": {
                    "pieDistance": 100
                },
                "inner": {
                    "format": "value"
                },
                "mainLabel": {
                    "font": "verdana"
                },
                "percentage": {
                    "color": "#e1e1e1",
                    "font": "verdana",
                    "decimalPlaces": 0
                },
                "value": {
                    "color": "#e1e1e1",
                    "font": "verdana"
                },
                "lines": {
                    "enabled": true,
                    "color": "#cccccc"
                },
                "truncation": {
                    "enabled": true
                }
            },
            "effects": {
                "pullOutSegmentOnClick": {
                    "effect": "linear",
                    "speed": 400,
                    "size": 8
                }
            }
        });
        return false;
    }

    return true;
}
函数drawPie(id,from,to,C,formula){
var subArray=getSubArray(C.表,从,到);
if(对象键(子数组).length){
var partials=createPartials(子数组,C.attributes);
//log(“partials->”,partials);
公式=公式切片(1,-1);
//console.log(“公式->”,公式);
公式=公式.拆分(“,”);
//console.log(“公式->”,公式);
var cloneFormula=formula.slice();
for(局部变量i){
如果(i.substr(0,1)=“$”){
对于(var j=0;j”,公式);
var数据=[];
var isEmpty=true;
对于(var j=0;j”,数据);
var pie=新的d3pie(id{
“尺寸”:{
“画布高度”:400,
“画布宽度”:800,//参见缺陷1418
“皮奥特拉迪乌斯”:“88%”
},
“数据”:{
“内容”:数据
},
“标签”:{
“外部”:{
“距离”:100
},
“内部”:{
“格式”:“值”
},
“主标签”:{
“字体”:“verdana”
},
“百分比”:{
“颜色”:“#e1e1”,
“字体”:“verdana”,
“小数位数”:0
},
“价值”:{
“颜色”:“#e1e1”,
“字体”:“verdana”
},
“行”:{
“启用”:正确,
“颜色”:“#中交”
},
“截断”:{
“已启用”:真
}
},
“影响”:{
“pullOutSegmentOnClick”:{
“效果”:“线性”,
“速度”:400,
“尺寸”:8
}
}
});
返回false;
}
返回true;
}

你能帮我修改饼图中出现的文本吗

使用以下方法去除数字,然后将其四舍五入

function strip(number) {
    return (parseFloat(number).toPrecision(4));
}
范例

var number=3.141592653589793238462643383279502884197169399375105820974944592307816406286208986280348253421170679
功能条(编号){
返回(parseFloat(number).toPrecision(6));
}

窗口警报(条带(编号))查找“labels.formatter”的用法我应该询问代码的哪一部分?抱歉,仍在学习javascript:|我已将其添加到上面的答案中,希望这对本例有所帮助。