Javascript 如何在饼图中添加和操作值?
我正在使用为我的web应用程序生成饼图。现在,我想操纵图表上显示的值。目前,出现的值超过4位小数。例如,10.35234234。我只想10.3523出现 以下是我当前的代码: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
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:|我已将其添加到上面的答案中,希望这对本例有所帮助。