我正在尝试在图表的数据集字段中传递动态创建的值(新数据)。
var data = {
labels: bottomlabel,
datasets: newdata};
我如何获取数据正在使用for循环:
for(i = 0; i < actual_JSON.length-1; i++){
dslabel = actual_JSON[i].Client;
dsdata = actual_JSON[i].Customer +"," +actual_JSON[i].Internal;
gcolor = dsbgcolor[i];
borcolor = dsborcolo[i];
if(i == actual_JSON.length-2)
{
prefinalds += "{label: "+dslabel+",data: ["+dsdata+"],backgroundColor: "+dsbgcolor[i]+",borderColor: "+dsborcolo[i]+",fill: "+fill+",lineTension: "+lt+",radius: "+rad+"}";
}
else
{
prefinalds += "{label: "+dslabel+",data: ["+dsdata+"],backgroundColor: "+dsbgcolor[i]+",borderColor: "+dsborcolo[i]+",fill: "+fill+",lineTension: "+lt+",radius: "+rad+"},";
}
}
然后创建“数据”:
newdata= "["+prefinalds+"]";
现在,当我在“数据集:newdata”中传递数据时。我得到一个空白图表。请提出建议。
P.S。我尝试了JSON.parse(),但是没有用。
答案 0 :(得分:0)
您尝试过这个吗?
var prefinallds = [];
for(i = 0; i < actual_JSON.length-1; i++){
var data = {};
dslabel = actual_JSON[i].Client;
dsdata = actual_JSON[i].Customer +"," +actual_JSON[i].Internal;
gcolor = dsbgcolor[i];
borcolor = dsborcolo[i];
if(i == actual_JSON.length-2)
{
data.label = dslabel;
data.data = dsdata;
data.backgroundColor = dsbgcolor[i];
data.borderColor = dsborcolo*emphasized text*[i];
data.radius = rad;
}
else
{
data.label = dslabel;
data.data = dsdata;
data.backgroundColor = dsbgcolor[i];
data.borderColor = dsborcolo*emphasized text*[i];
data.radius = rad;
}
prefinallds.push(data);
}
// convert to json
JSON.parse(prefinallds);
您尝试将字符串转换为JSON
格式,不建议这样做。我强烈鼓励开发人员使用实际的对象来解析其数据。